Quad.Wiki

Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Current »

Если вам нужно заполнить какое-то поле в прайсе, это можно сделать при помощи запросов SQL.

Настройка

Запросы выполняются при помощи задания Quad.Magic “Выполнить запрос к БД” и вводятся в Настройка 1 задания.

Действие обычно добавляется после импорта обновленных прайсов. Если разных запросов у вас будет много, то лучше всего создать группу действий Quad.Magic “Запросы” и все запросы добавлять в нее, а в действие обновления добавить уже не сами запросы, а выполнение группы действий с запросами.

Шаблон запроса

update price_detail

set КодПоля = Значение

from price pr

where (pr.id = price_detail.price_id) and ( Условия )

КодПоля - здесь указывается код поля, которое нужно обновить, примеры кодов можно посмотреть здесь

Значение - указывается устанавливаемое значение. Если значение текстовое, то с двух сторон нужно добавить апострофы. Наример article = ‘Текст Артикула’

Условия - указываются условия выбора товара, для которого будет устанавливаться значение

Примеры условий

(is_exists <> 2) - только для товаров которые не в статусе Нет в наличии

(pr.price_type in (1, 3)) - только прайсы с типом поставщик или поставщик и конкурент

(pr.price_type in (2, 3)) - только прайсы с типом конкурент или поставщик и конкурент

(pr.is_active = 1) - только включенные прайсы

если нужно добавить несколько условий, то они добавляются с and между условиями, если должны соблюдаться все, или or , если должно соблюдаться одно из условий.

Например (pr.price_type in (1, 3)) and (pr.is_active = 1) and (is_exists <> 2)

Примеры запросов

Запрос для установки красного флага в зависимости от названия

update price_detail
set red_flag = 1 
from price pr
where (pr.id = price_detail.price_id) and (pr.price_type in (1, 3)) and (pr.is_active = 1)
and ( 
price_detail.title like '%мятая%'
or price_detail.title like '%порван%'
or price_detail.title like '%царапин%'
or price_detail.title like '%царапан%'
)

запрос обновляет все активные прайсы с типом поставщик или поставщик и конкурент

у которых в названии содержатся одно или несколько из перечисленных значений. Значения перечисляются так:

price_detail.title like '%мятая%'
or price_detail.title like '%порван%'
or price_detail.title like '%царапин%'

сюда через or можно добавить еще значений в виде or price_detail.title like '%порван%' перед закрывающей скобкой

title - это код поля названия товара

Запрос может выполняться продолжительное время, если условий много

  • No labels