Программа iNETsHOP - обработка, сравнение, анализ прайс листов поставщиков, создание каталога товаров интернет магазина Форум - Программа iNETsHOP - Работа с программой - Импорт товаров в программу из Exel


http://inetshop.in.ua/index.php?p=showtopic&toid=418&area=1&print_post=2751
03.08.2017 12:43

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Определение модели товара
Схема импорта, на которую вы ссылаетесь, предназначена для совсем иной структуры прайс-листа (расположения колонок), из которого импортируются только две колонки "Название", "Цена", дополнительный скрипт обработки предназначен для определения категории товара. Она априори никак не может заполнить колонку модель.



Ваш прайс-лист имеет иную структуру и для его импорта требуются так же другие настройки парсинга колонок прайса.



Для этого нужно использовать такой скрипт:
Код

DECLARE
@ID int,
@SID varchar(100),
@NAME varchar(400),
@BRAND varchar(10),
@ARTIKUL varchar(100),
@DESCRIPTION varchar(8000),
@NOTES varchar(8000),
@PRICE varchar(100),
@WARRANTY varchar(100),
@PRESENT varchar(100),
@REST varchar(100),
@LAST_MODEL varchar(250)
;

SET @LAST_MODEL = '';

DECLARE cPrice CURSOR LOCAL FOR
Select
ID,
CAST(SID as varchar(100)),
CAST(NAME as varchar(400)),
CAST(BRAND as varchar(100)),
CAST(ARTIKUL as varchar(100)),
CAST(DESCRIPTION as varchar(8000)),
CAST(NOTES as varchar(8000)),
IsNull(LTRIM(RTRIM(CAST(PRICE as varchar(100)))), ''),
CAST(WARRANTY as varchar(100)),
CAST(PRESENT as varchar(10)),
CAST(REST as varchar(8000))
from #TMP_PRICE order by ID;

OPEN cPrice
FETCH NEXT FROM cPrice INTO @ID, @SID, @NAME, @BRAND, @ARTIKUL, @DESCRIPTION, @NOTES, @PRICE, @WARRANTY, @PRESENT, @REST;
WHILE (@@FETCH_STATUS <> -1)
BEGIN
if (IsNull(@PRICE, '') = '' and IsNull(@NAME, '') <> '')
begin
SET @LAST_MODEL = @NAME;
end
else
begin
update #TMP_PRICE set MODEL = @LAST_MODEL where ID = @ID;
end;

FETCH NEXT FROM cPrice INTO @ID, @SID, @NAME, @BRAND, @ARTIKUL, @DESCRIPTION, @NOTES, @PRICE, @WARRANTY, @PRESENT, @REST;
END
CLOSE cPrice;
DEALLOCATE cPrice;

delete from #TMP_PRICE where IsNumeric(CAST(PRICE as varchar(100))) = 0;


Настройки импорта для данной структуры прайс-листа можете скачать в разделе схем импорта