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