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


http://inetshop.in.ua/index.php?p=showtopic&toid=441&pp=15&page=1&area=1
27.09.2017 15:20

xlvetal


Посетитель

Количество сообщений   124
Зарегистрирован:   14-11-2015, 14:23:25
Перенос бренда из Наименование в столбец Бренд
Доброе время суток. Можете помочь с Пользовательским запросом?
Суть проблемы такова: надо что бы из наименования брался бренд и копировался в строку бренда(если она пуста), все бренды есть в справочнике брендов/производителей.
То есть алгоритм примерно такой:
1) берется по очереди бренд из справочника
2) ищет совпадения бренда в наименовании
3) если есть точное совпадение делает копию в строку бренд / если нету точного совпадения идет возврат на 1 пункт и берет следующий бренд

И все это на выделенные строки, что бы работало

28.09.2017 22:12

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Вы не указали для какого справочника товаров требуется определить бренд по наименованию товара.

29.09.2017 08:10

xlvetal


Посетитель

Тема начата

Количество сообщений   124
Зарегистрирован:   14-11-2015, 14:23:25
Вот что я имею ввиду
1)(справочник брендов/производителей) берется по очереди бренд из справочника
2)(справочник товаров) ищет совпадения бренда в наименовании
3)(справочник товаров) если есть совпадение делает копию в строку бренд
на картинке, по пунктам

И тоже самое надо что бы при импорте поставщиков делало
Прикрепленные файлы
пример.JPG   ( 6 Просмотров | 291.5 KB )

29.09.2017 19:15

support


Support


Количество сообщений   1199
Зарегистрирован:   11-04-2008, 19:11:57
Поиск бренда по названию товара
Для поиска бренда и его установки (записи) в таблице товаров справочника товаров вы можете воспользоваться следующим пользовательским SQL-запросом:
Код

DECLARE @G_NAME varchar(1000), @G_ID int, @B_ID int, @B_NAME varchar(400);
SET @G_ID = :ID
SET @G_NAME = (SELECT G_NAME FROM TBL_GOODS WHERE G_ID = @G_ID);

DECLARE cBrands CURSOR LOCAL FOR
SELECT B_ID, B_NAME
FROM TBL_BRANDS
WHERE LEN(B_NAME) > 1
ORDER BY LEN(B_NAME) DESC;
OPEN cBrands;
FETCH NEXT FROM cBrands INTO @B_ID, @B_NAME;
WHILE (@@FETCH_STATUS <> -1)
BEGIN
IF CHARINDEX(@B_NAME + ' ', @G_NAME) > 0
BEGIN
UPDATE TBL_GOODS
SET G_B_ID = @B_ID
WHERE G_ID = @G_ID;

BREAK;
END;
FETCH NEXT FROM cBrands INTO @B_ID, @B_NAME;
END;
CLOSE cBrands;
DEALLOCATE cBrands;

03.10.2017 15:14

xlvetal


Посетитель

Тема начата

Количество сообщений   124
Зарегистрирован:   14-11-2015, 14:23:25
А тоже самое только для справочника товаров поставщиков, можете сделать?