26.07.2013 09:03
Ринат
 
Добрый день, операторы при занесении в карточку товара не редко копируют наименование в СМ из других источников. В результате появились косяки - при получении данных запросом в sql и выводе его в Excel в наименовании появляются символы табуляции (к сожалению не смог не прикрепить к сообщению, ни загрузить в хранилище скриншот).
Подскажите как можно выбрать в базе эти карточки и заменить скриптом данные символы на пробелы.
26.07.2013 09:18
konst
 
Возможно вы немного заблуждаетесь - эти символы появляются если использовать шаблоны названий товаров...
и я думаю их лучше в самой БД не трогать...
а при выводе результата использовать:
вариант 1 - короткое наименование товара - как правило там ничего лишнего нет
вариант 2 - использовать
Код:
REPLACE (NAME, CHR (9), '')
26.07.2013 09:23
OlegON
 
в наименовании табуляция появляется при использовании шаблонов. удалять в базе ее не надо - шаблоны эти самые поедут.
для вывода без табуляции надо использовать что-то вроде
Код:
select replace(c.name, chr(9),' ') from supermag.smcard c;
P.S. долго же я добирался написать :)
26.07.2013 10:02
Ринат
 
Проблема в том что эти "косяки" появляются только в тех данных, которые копируют из других источников, такая проблема наблюдается при внесении названия карточки, а так же при занесении доп свойств в артикул. При выводе в эксель это выглядит как квадратик со знаком "?"
26.07.2013 10:03
OlegON
 
Неважно, откуда они их берут и как выглядят потом. Проверьте, есть ли шаблоны на карточках... Если есть, это и ответ.
26.07.2013 10:22
Ринат
 
ок, спасибо, работает
02.08.2013 12:26
cb
 
Лучше уж так.
update smcard t
set shortname=trim(replace(replace(t.shortname, Chr(10),''), Chr(13),''))
,name=trim(replace(replace(t.name, Chr(10),''), Chr(13),''))
where --article in ('7077061','002621','1010101003')
replace(replace(t.shortname, Chr(10),''), Chr(13),'')!=shortname
or replace(replace(t.name, Chr(10),''), Chr(13),'')!=name
02.08.2013 12:35
Troll
 
Цитата:
cb Лучше уж так.
Это перенос строки, если что, а не табуляция.
02.08.2013 12:45
cb
 
Это как образец. Если что подставить свое не сложно.
02.08.2013 12:51
Troll
 
А чем этот образец лучше того, что выше? Просто табуляцию удалять нельзя, надо на пробел менять. Ну trim да, может и понадобится...
Часовой пояс GMT +3, время: 11:13.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.