...
1. Создать поле с типом число, назвать его, например “Мин“Мин. РЦ”РЦ”, добавленное поле отобразить во вкладке Продукция и дать доступ к нему пользователям, как это сделать указано здесь:
Добавление пользовательского поля
Можно также создать поле с типом Строка и назвать его “Мин. РЦ пост.” - в это поле будет записываться название прайса, из которого берется РЦ (первый попавшийся, если одинаковое РЦ в нескольких прайсах).
...
2. Во вкладке Загрузка прайсов указать, для каких прайсов должно соблюдаться РЦ
...
Если поставщик в прайсе дает РЦ на все товары, но соблюдать нужно только на какие-то определенные бренды, нужно указать эти бренды в настройках прайса, подробнее здесь:
Убрать РРЦ из прайса по бренду или названию
Если есть какие-то более сложные условия для соблюдения или не соблюдения РЦ, то нужно очистить колонку РЦ в прайсе поставщика на этапе загрузки информации в программу, т.е. при помощи макросов в настройке прайса.
3. Добавить в QuadMagic группу действий для обработки РЦ, назвать ее, например, “Обработка РРЦ”
...
Подробнее о QuadMagic здесь: Quad.Magic
4. Добавить действие в QM с типом “Выполнить запрос БД”, назвать его, например, “скопировать РЦ”
В Настройка 1 добавленного действия ввести следующий запрос:
Code Block | ||
---|---|---|
| ||
update product set f_401gs0c28 = null;
update product set f_401gs0c28 =
(select min(round(price_to_base(pd.fixed_price, pd.fix_price_curr_id), 2))
from price_detail pd, price pr, price_detail_category pdc
where pd.product_id = product.id
and pd.price_id = pr.id
and pr.is_active = 1
and pr.use_rc = 1
and pd.category_id = pdc.id
and pdc.is_active = 1
and ((pd.is_active is null) or (pd.is_active = 0))
and pd.fixed_price > 0) |
в котором нужно в 2х местах вместо f_401gs0c28
подставить код вашего поля, который можно посмотреть здесь
...
Выполните действие и после этого обновите во вкладке Продукция информацию - в колонке Мин. РЦ появится РЦ из прайсов поставщиков.
...
РЦ будет округлено до 2х знаков после запятой. Если округлять не нужно, то поставьте здесь 10:
...
Результат:
...
5. Если нужно сохранять не только поставщика, но и прайс, добавить действие в QM с типом “Выполнить запрос БД”, назвать его, например, “скопировать поставщика с РЦ”
и в Настройка 1 ввести следующий запрос:
Code Block | ||
---|---|---|
| ||
update product set f_401gs0okc = null;
update product set f_401gs0okc =
(select pr.title
from price_detail pd, price pr, price_detail_category pdc
where pd.product_id = product.id
and pd.price_id = pr.id
and pr.is_active = 1
and pr.use_rc = 1
and pd.category_id = pdc.id
and pdc.is_active = 1
and ((pd.is_active is null) or (pd.is_active = 0))
and pd.fixed_price > 0 limit 1) |
в котором нужно в 2х местах вместо f_401gs0okc
подставить код вашего поля, который можно посмотреть здесь
...
В итоге получится 2 действия
...
6. Добавить выполнение созданной группы действий в группы полного обновления и обновления только цен и наличия. Действие добавить после обновления цен.
...