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 Next »

Выбор для сравнения другого поля

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

1. Добавляем поле с типом Число

Добавление пользовательского поля

Скопируйте куда-нибудь в блокнот код это поля.

2. Создаем группу действий в Quad.Magic, в которой будут задания, используемые при сравнении цен. Например, копирующие необходимую цену в созданное ранее поле.

3. Добавляем действие, копирующее нужную цену в поле для сравнения. Таких действий можно добавить любое количество, чтобы сохранить их и не менять каждый раз запрос.

Введите понятное название действия, тип действия нужно указать “Выполнить запрос к БД” и Сохранить.

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

Сравнение рекомендованной цены из одного или нескольких прайсов

Запрос:

update product set f_40gn6126l = null;
update product set f_40gn6126l = (select min(price_to_base(pd.fixed_price, pd.fix_price_curr_id))
from price_detail pd where 
pd.product_id = product.id
and pd.price_id in (128, 201)
and pd.is_exists <> 2)

В запросе вам нужно поменять:

f_40gn6126l - в двух местах, код созданного вами ранее поля

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

Если рекомендованная цена есть в нескольких указанных прайсах, то выбирается меньшая из них. Если нужно выбрать большую, то в тексте запроса нужно заменить min на max.

  • No labels