wiki:mk_docs

Version 11 (modified by sokol, 6 років ago) (diff)

--

Маркетингові акції

Загальні правила

Фільтри

Кожен фільтр являє собою операцію, що завершується значенням ТАК, якщо умови фільтра задовільні, інакше НІ. Умови кожного фільтра описуються тегах filter:

<filter type="тип_фільтра">
умови
</filter>

Фільтри групуються в пакети фільтрів, за допомогою тега filters:

<filters>
<filter type="тип_1">
умови_1
</filter>
<filter type="тип_2">
умови_2
</filter>
...
<filter type="тип_N">
умови_N
</filter>
</filters>

Пакет набуває значення ТАК, якщо хоч один з фільтрів набув значення ТАК, тобто діє за принципом АБО. За цим принципом зручно створювати, наприклад, умови типу: Акція діє з 10:00 до 12:00 та з 18:00 до 20:00. Без пакетів довелось би створювати дві різні акції.

Пакети фільтрів поєднуються за принципом І (тобто ТАК буде лише тоді, коли усі пакети мають значення ТАК), якщо вони знаходяться в різних записах таблиці.

Далі перелічені основні типи акцій з прикладами їх формування

time

діапазон годин з .. по .."

<filter type="time">
<begin>11:00</begin>
<end>13:00</end>
</filter>

weekdays

перелік днів тижня через кому:

<filter type="weekdays">
<days>1,5</days>
</filter>

months

перелік місяців через кому:

<filter type="months">
<months>1,2,3,4,5</months>
</filter>

birth

к-ть днів до та після дня народження. Для спрацювання потрібно скористатись карткою:

<filter type="birth">
<days_before>6</days_before>
<days_after>2</days_after>
</filter>

kard_types

список типів карток через кому. Якщо список порожній, то акція заборонена для дисконтників:

<filter type="kard_types">
<types>1,2</types>
</filter>

pack_eq_gt

пакет (під назвою тег <tag>) з умовою: к-ть >= поля val з t_mka_pack_records:

<filter type="pack_eq_gt">
<tag>list</tag>
</filter>