Quad.Wiki

Модификации товаров

 

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

 

Конфигурация программы

Атрибуты задаются при помощи дополнительных полей, т.е. вам нужно добавить пользовательские поля Цвет, Вес, Объем, Размер и другие, в зависимости от которых у вас будут модификации товаров.

Рекомендуем создавать числовые поля с типом Строка, а не число.

Обратите внимание, что так создавать нужно не все характеристики товаров, а только те, которые являются “модификаторами” в карточке товара

Подробнее о создании пользовательских полей: Добавление пользовательского поля

 

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

 

Так же вам нужно добавить пользовательское поле “ID родителя” в которое будет записываться QID родительского товара для модификации. Запомните код этого поля.

 

Отсортируйте поля по Названию и убедитесь, что у вас еще нет таких полей, как ID родителя или других, чтобы не добавлять дубли полей.

Тип поля ID родителя должен быть Строка.

Создайте сразу и индекс на этом поле.

Это поле в программе можно заполнять или вручную, при создании зависимых товаров, или автоматически с помощью запроса:

update product set f_4330u48hb = (select pc.main_id from product_child pc where pc.child_id = product.id limit 1)

где f_4330u48hb - код поля ИД родителя. Запрос должен выполняться перед действиями выгрузки на сайт.

Загрузка модификаций с сайта

Если у вас на сайте уже есть товары с модификациями, то при выгрузке у товара должно быть 2 поля, ID site и Parent ID site, т.е. ИД товара на сайте и ИД родительского товара на сайте. Для загрузки родительского ИД нужно создать отдельное поле с типом строка. Назвать его, например, “Parent ID сайт”. Поле создается аналогично полю “ИД родителя”.

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

 

Запрос:

update product set is_main = 1, child_price_func = 2, child_price_discont_func = 1 where exists(select 1 from product p2 where p2.f_3q0728833 = product.f_3o7h64mit); insert into product_child(main_id, child_id, unit_count) select p2.id, p.id, 1 from product p, product p2 where p.f_3q0728833 <> '' and p.f_3o7h64mit <> '' and p.f_3q0728833 = p2.f_3o7h64mit on conflict do nothing;

В этом запросе нужно заменить названия полей на ваши:

f_3o7h64mit- код поля, в которое вы записали ИД товара с сайта (если вы записали его не в пользовательское поле, а в Код, то вместо f_3o7h64mit нужно использовать code). Встречается в тексте запроса 3 раза.

f_3q0728833 - код поля, в которое вы записали ИД родителя товара сайта.

Для пользовательских полей код поля можно посмотреть здесь:

Выполните это действие, если поменяли коды полей без ошибок, то должен быть статус ОК.

 

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

 

Импорт модификаций из файла Excel/CSV

Загрузка из файла Excel/CSV возможна когда в файле есть отдельными строками и товары и модификации, и в каждой модификации указан код или ИД товара родителя.

В других случаях, например, когда модификации перечислены в какой-то ячейке в строке с товаром родителем, или какие-то другие варианты, загрузка модификаций так же возможна, но нужно с помощью макроса сделать, чтобы они стали отдельными строками

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

В настройках прайса указать эти поля

После загрузки выполнить запрос, который указан в разделе “Конфигурация”.

 

Импорт модификаций из файла YML

ИД родителя в товарах-модификациях в формате YML указывается при помощи ключа group_id в теге offer.

В настройках нужно указать его загрузку в поле ID родителя.

Если ИД родителя в вашем файле указывается в каком-то другом теге или в параметрах - настраивается загрузка этого поля так же, как и любого другого. Инструкция по YML.

 

Есть родитель, нужно добавить модификации

1. Перед тем как создавать модификации товаров, во вкладке Продукция нужно добавить товар-родитель, если его еще нет. Добавить товар можно или вручную или добавив его из прайса: Ручное добавление товара из прайса поставщика

2. Для добавления модификаций откройте карточку товара (двойным кликом либо в контекстном меню) и перейдите во вкладку Зависимости.

Нажмите кнопку Добавить модификации

 

3. В этом окне введите список модификаций товаров, нужные вам комбинации

Комбинации вводятся в формате:

назв. поля=значение;назв. поля=значение;...

где назв. поля - название пользовательского поля, характеристики модификации

значение - значение характеристики

Каждая модификация вводится с новой строки, характеристики одной модификации вводятся одной строкой, разделенной точкой с запятой.

 

4. Ниже поля ввода модификаций, где задаются шаблоны для полей товаров-модификаций. Шаблоны нужно задать для Код, Модели и Названия товара.

Код - шаблон кода для создаваемого товара. По умолчанию шаблон [родитель] - [номер модиф.] , что значит у нового товара будет код родителя и через тире номер модификации (берется по количеству существующих у товара модификаций). Например, если у товара родителя код id123001, то у модификаций будет создаваться код id123001 - 1, id123001 - 2 и т.д.

Возможные варианты подстановки перечислены здесь, откуда их можно скопировать:

 

[родитель] - соответствующее поле из товара-родителя (код, модель или название). Т.е. если ввести этот тег в поле Модель, то подставится Модель из товара родителя, если в Название - название родителя, в Код - код родителя.

[номер модиф.] - номер по порядку, в зависимости от количества уже существующих у товара-родителя модификаций

[поле:значение] - подставляется название поля-атрибута и его значение после двоеточия. Если у добавляемой модификации несколько атрибутов, то они добавляются через пробел. Например для такой модификации Цвет=белый;Размер=S товара Кофта Y4847 по шаблону для названия товара [родитель] [поле:значение] будет создано следующее название:

Кофта Y4847 Цвет: белый Размер: S

если несколько атрибутов нужно разделить не пробелом, а запятой, то в шаблон нужно дописать тег [,] , пример: [родитель] [поле:значение][,] - получим результат Кофта Y4847 Цвет: белый, Размер: S (запятая после белый)

[значение] - добавляется только значение атрибута, без указания его названия, пример

Кофта Y4847 белый, S

[ид родителя] - QID товара родителя, можно использовать, например, для формирования кода товара, вместо тега [родитель], чтобы подставлялся QID, а не код родителя.

 

5. Указать код поля ID родителя, который создали раньше.

 

6. Нажать кнопку “Добавить” или “Добавить и закрыть” - в результате создадутся товары-модификации

Товары модификации не связаны с товаром поставщиков, их цена = 0, а наличие = Нет в наличии. Дальше вам нужно связать эти товары с товарами поставщиков и, при необходимости, заполнить контент - это можно сделать через контекстное меню в этом же окне.

Для товара родителя цена будет формироваться как минимальная цена из всех модификаций, которые в наличии. Заполняется так же специальное поле Метка в виде Поле: Значение.

 

Товар-родитель помечается во вкладке Продукция специальным значком.

Если у товара-родителя были связи с поставщиками, их нужно удалить, так как по поставщикам теперь будут расцениваться товары-модификации, а не родитель.

 

Пример как заполняются поля по введенным шаблонам:

 

Есть модификации, нужно добавить родителя

В случае, если у вас в Продукции есть товары, которые вы бы хотели объединить в 1 товар с модификациями, нужно:

1. Выделить товары, которые будут входить в модификацию (либо 1 из них, а остальные добавить позже)

 

2. Нажать Операции с товаром / Добавить / Зависимый от выбранных

 

3. В открывшейся карточке нового товара Название, Модель и Код будут скопированы из выделенного товара-модификации, вам нужно изменить эти поля, чтобы они не совпадали с модификацией.

Например, из названия убрать размеры, в поле Код дописать какой-нибудь префикс.

 

4. Во вкладке Зависимости установить, как будет формироваться цена для товара-родителя.

 

5. Заполнить атрибуты у товаров-модификаций, а так же ИД родителя (скопировать его из вкладки Информация)

Редактировать товары можно из вкладки Зависимости (2-ой клик по товару или в контекстном меню).

Сохраните все.