Quad.Wiki

Копировать товар из одного прайса в другой

Данный функционал можно использовать при необходимости копировать товары одного прайса или нескольких прайсов в другой прайс (или в несколько прайсов). Например, если нужно получить несколько прайсов конкурентов из одного прайса, или получить прайс с товаром, которого нет в наличии, но при этом нужно чтобы такой товар расценивался по старым ценам и был в наличии.

 

1. Создайте новый прайс, если такого еще нет в вашей базе, куда нужно будет копировать товары. Тип прайса выбирайте в зависимости от того, что вы собираетесь делать с товаром этого прайса. Если по нем нужна расценка, то тип прайса - Поставщик.

2. Если товары, которые вы собираетесь копировать в этот прайс, в статусе Нет в наличии, при этом они должны использоваться для расценки товара, то лучше создать для таких товаров какое-то специальный статус наличия, например “Временно отсутствует”, и при копировании товара заменять ему наличие на этот созданный тип.

Как создавать дополнительные типы наличие указано здесь: Настройка прайса: наличие товара

 

3. Создайте поле с типом Число, это поле будет использоваться для связки товара создаваемого прайса с товарами из других прайсов, которые скопированы в этот прайс. Назвать поле можно “ID товара”. Как создавать поля указано здесь: Добавление пользовательского поля

После добавления поля перезапустите программу.

 

4. Добавьте действие Quad.Magic “Копировать товары из одного прайса в другой”. Действие должно быть перед обновлением цен, если этот прайс нужно использовать при расценке товара.

В Настройка 1 действия нужно выбрать прайс или несколько прайсов ИЗ которых будут копироваться товары. Если ничего не указать, то будут скопированы товары из всех прайсов с типом “Поставщик”.

В Настройка 2 выбирается прайс, куда копируются товары.

 

В Настройка 3 выберите поле, которое добавили в п.3 данной инструкции

 

В Настройка 4 можно указать SQL-запрос, который отбирает товары для формируемого вами прайса

Например:

pd1.is_exists = 2 - только товары которых нет в наличии

pd1.product_id is not null - только связанные товары

 

можно так же заполнить какое-то поле во вкладке Продукция значением “1” (создать пользовательское поле), фильтр по этому полю будет выглядеть так:

p.f_xxxxxxx = 1, где f_xxxxxxx - код поля

 

фильтр, отбирающий товары, у которых есть цена и при этом их нет в наличии:

(pd1.is_exists = 2 and ((pd1.fixed_price > 0) or (pd1.price > 0)))

 

В Настройка 5 вводятся дополнительные настройки копирования в виде

валюта: USD курс на дату: да наличие: 11 только новые: да

каждое значение с новой строки.

 

Возможные настройки:

валюта - код валюты, в которую будет пересчитана цена товар, при копировании. Если нужно оставлять в той валюте, как есть, то эту настройку не нужно добавлять. В эту валюту переводится как цена товара, таки и рекомендованная цена товара. Код валюты можно посмотреть во вкладке Конфигурация:

 

курс на дату - значение да или нет, настройка используется в случае необходимости перевода цены товара в другую валюту. Если “да”, то при переводе будет использован курс, который был у валюты при последнем наличии товара в прайсе поставщика. Если “нет” или настройка отсутствует - курс берется на сегодняшнюю дату.

наличие - ИД типа наличия, в который будет переведен товар при копировании. Если настройка не указана, то наличие останется таким же, как в прайсе откуда копировалось. ИД типа наличия можно посмотреть во вкладке Конфигурация:

только новые - если данная настройка имеет значение “да”, то товар будет обновляться только если у товара, откуда копировалось, поменялась дата цены, т.е. он, например, опять стал в наличии или у него изменилась цена. Если значение “нет” или отсутствует - информация будет копироваться каждый раз, когда выполняется эта функция.