Применения формул для корректировки данных в базовом каталоге товаров
Примение формул позволяет Вам задавать логические условия для проверки данных хранящихся в полях базового каталога, полях из прайс-листов и других подсистем, с целью установки нужных Вам значений в зависимости от условий.
Например Вы можете заменить значение в поле "Цена" на основании поля "РРЦ", если оно заполнено для товара, тем самым выгружать на сайт значение из поля "Цена" с учётом контроля РРЦ. Так же возможно объединять различные значения из разных полей, копировать значения в другие поля, включая атрибуты товаров. Использование формул ограничивается только Вашей фантазией и позволяет реализовать любую Вашу задумку. Для открытия подсистемы "Формулы" выберите данный пункт меню в подсистеме "Товары базового каталога"
Порядок действий для составления формулы:
- Выбрать поле для которого составляется формула
- Выбрать макроподстановку названия поля из списка справа
- Указать логическую проверку значений (при необходимости)
- Настроить фильтр для применения формулы только для определённых товаров (при необходимости)
Для выбора поля, для которого требуется составить формулу нажмите кнопку "+". На экране появится список всех доступных полей базового каталога, включая атрибуты товаров. Вы можете создать новое поле или выбрать уже существующее. Каждое поле подсвечено определённым цветом.
В списке справа доступны функции для составления логических условий и корректировки данных
Получение значений от товаров из прайсов.
При использовании макроподстановок для получения данных от товаров из прайс-листов необходимо учитывать то, что значение будет взято от товара из прайса, от которого была взята цена для товара базового каталога, с учётом того, что в прасах есть несколько одинаковых товаров. Если есть только один товар, тогда связь устанавливается только с ним. То есть, если вы хотите от товара из прайса брать значение, тогда программа выберет только один товар.
Если товар из базового каталога не сопоставлен с товаром из прайса и при этом в формуле указана макроподстановка вида {Прайс: название_поля}, тогда значение для этой макроподстановки будет NULL, это следует учитывать при составлении логических условий, пример:
IF( {Прайс: Цена РРЦ}=0 OR {Прайс: Цена РРЦ} IS NULL, 0, 1)
в данном примере, если РРЦ из прайса равна нулю или нет связи с товаром из прайса (NULL), тогда на выходе будет значение 0, иначе будет 1.
Примеры формул.
Формула для получения значений товаров от указанного контрагента, где N это ID контрагента (указан в справочнике контрагентов)
[[ОтКонтрагента_N{Прайс: Цена}]]
Формулы для получения значений товаров от указанной группы контрагента, где N это ID группы контрагента (указан в справочнике групп контрагентов)
[[ОтГруппыКонтрагента_N{Прайс: Цена}]]
[[ОтГруппыКонтрагента_N MIN({Прайс: Цена})]]
[[ОтГруппыКонтрагента_N MIN(IF({Прайс: Цена}=0, NULL, {Прайс: Цена}))]]
Формула для получения значений товаров из прайс-листов из указанной строки, если есть несколько предложений товара базового каталога.
Где N это номер строки + название поля откуда требуется брать значение.
Для товаров из группы контрагентов "Поставщики"
[[ОтПоставщикаСтрока_N{Прайс: Цена}]]
Для товаров из группы контрагентов "Конкуренты"
[[ОтКонкурентаСтрока_N{Прайс: Цена}]]
Формула для указания курса валюты, где EUR код необходимой валюты
{CURRENCY_RATE_EUR}
Формула для получения значений от главного товара опции
[[ОтГлавногоТовара{Товар БК: Наименование}]]
Формула для округления РРЦ до кратности 10
FLOOR(({Товар БК: Цена РРЦ} + 10-0. 01) / 10) * 10
Пример цены: 30522. 45, после применения формулы цена будет 30530.
Функция CASE проверяет истинность набора условий и в зависимости от результата проверки может возвращать тот или иной результат.
CASE WHEN условие_1 THEN результат_1 WHEN условие_2 THEN результат_2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . WHEN условие_N THEN условие_N [ELSE альтернативный_результат] END
Пример.
CASE WHEN ProductCount = 1 THEN 'Товар заканчивается' WHEN ProductCount = 2 THEN 'Мало товара' WHEN ProductCount = 3 THEN 'Есть в наличии' ELSE 'Много товара' END
Функция IF в зависимости от результата условного выражения возвращает одно из двух значений.
IF(условие, значение_1, значение_2)
Пример.
IF(ProductCount > 3, 'Много товара', 'Мало товара')
Использование значений из справочника производителей, доступны макроподстановки
- m. name - название производителя
- m. url - ссылка на сайт производителя
- m. warranty - гарантия
- md. description_short - описание краткое
- md. description_full - описание полное
- md. address - адрес
- md. address_service - адрес сервис центра
Есть возможность использовать значения из справочника категорий, доступны макроподстановка
- c. delivery_cost - стоимость доставки
Генератор нового числа
[[НайтиМаксДобавить1{Товар БК: Артикул (внутренний)}]]
Мониторинг цен конкурентов в интернете