В кассовом ПО Artix реализована возможность выполнения действия при переходе в подытог при срабатывании определенной акции или скидки. Для этого необходимо в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/discountactions.ini:

  1. Активировать плагин discountactions в секции [plugins].

    НаименованиеТип данныхВозможные значенияОписаниеПримечания
    discountactionsстроковый
    • on
    • off

    Активация плагина для работы со скидочными действиями

    По умолчанию on


    [plugins]
    discountactions = on


  2. Создать секцию [DiscountActions.N], где <N> является кодом акции или скидки.
    В параметре command необходимо указать команду, которая будет использоваться.

    Параметр byDiscountCode отвечает за то, будет использован код акции или скидки для скидочных действий:

    В качестве аргументов команды могут быть использованы параметры команды (см. пример ниже).

    НаименованиеТип данныхВозможные значенияОписаниеПримечания
    commandстроковый
    Команда
    repeatлогический
    • true
    • false
    Скидочное воздействие срабатывает при каждом переходе в подытог

    По умолчанию false


    byDiscountCodeлогический
    • true
    • false
    Применение действия на акцию или скидкуПо умолчанию false
    arg.<аргумент>строковый
    Аргументы команды


    ; Скидочные действия
    ; Возможность выполнения действия при переходе в подытог при срабатывании определенной
    ; акции или скидки. Для каждого действия создается секция как указано ниже.
    ; N необходимо заменить на код акции или скидки (byDiscountCode установить в true)
    ; В качестве команды указывается например COMMAND_CARD или другая. Аргументы команды
    ; задаются с префиксом arg.
    
    ;[DiscountActions.N]
    ;command = COMMAND_CARD
    ;repeat = false
    ;byDiscountCode = false
    ;arg.arg1 = param1
    ;arg.arg2 = param2


Скидочные действия при переходе в подытог

Пусть в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/discountactions.ini заданы следующие настройки:

[DiscountActions.2]
command = COMMAND_CARD
repeat = true
byDiscountCode = false
arg.dialogtitle = Участие в акции
arg.dialogmessage = Чек участвует в акции Кока-Кола! Введите номер телефона клиента
arg.dialogokbuttonmsgid = inputTextFormOkBtn
arg.dialogcancelbuttonmsgid = inputTextFormCancelBtn
arg.dialoginputpattern = +7(999)999-99-99
arg.forcedverifiedinput = true

Необходимо создать 2 группы карт:

  1. Группа карт с маской для номера телефона, способ ввода "Вручную".
  2. Группа карт с наименованием и маской "Отмена", способ ввода "Вручную".

Если в чеке есть скидочное действие, то при переходе в подытог на экран будет выведен диалог:

  • Для согласия на участие в акции введите номер телефона, нажмите клавишу "< -" (стрелка влево) и подтвердите действие клавишей "Ввод". В чек будет добавлена карта покупателя с введенным номером.
    При возврате в режим формирования и повторном переходе в подытог на экран вновь будет выведен диалог для ввода номера телефона. Для автоматического удаления ранее введенной карты необходимо использовать настройку deleteCardByBackFormingMode.
    После закрытия чека номер карты будет записан в БД Documents таблицу Carditem.

  • Для отказа от участия в акции нажмите клавишу "->" (стрелка вправо) и подтвердите действие клавишей "Ввод". В чек будет добавлена карта с наименованием "Отмена".
    После закрытия чека в БД Documents таблицу Carditem поле number будет сохранено значение "Отмена".
Для изменения текста кнопок "ОК" и "Отмена" необходимо в файле перевода *.msg изменить текст соответствующего сообщения (inputTextFormOkBtn и inputTextFormCancelBtn). Для измененного текста кнопки "Отмена" должна быть создана группа карт с соответствующей маской номеров карт.


Скидочные действия при выборе определенного вида оплаты

Начиная с версии 4.6.218 в кассовом ПО Artix реализована возможность выполнения действия при выборе определенного вида оплаты.


Для скидочных действий при выборе определенного вида оплаты настройка repeat не используется.


Пусть в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/discountactions.ini заданы следующие настройки:

[DiscountActions.22]
command = COMMAND_CARD
byDiscountCode = false
arg.dialogtitle = Участие в акции
arg.dialogmessage = Чек участвует в акции "Скидка при оплате через СБП". Введите номер телефона клиента
arg.dialogokbuttonmsgid = inputTextFormOkBtn
arg.dialogcancelbuttonmsgid = inputTextFormCancelBtn
arg.dialoginputpattern = +7(999)999-99-99
arg.forcedverifiedinput = true


Для акции должен быть указан спецификатор "При выборе вида оплаты". Для скидки должно быть добавлено условие "Код валюты".

Необходимо создать 2 группы карт:

  1. Группа карт с маской для номера телефона, способ ввода "Вручную".
  2. Группа карт с наименованием и маской "Отмена", способ ввода "Вручную".

После выбора вида оплаты, соответствующего условиям акции, на экран будет выведен диалог:

  • Для согласия на участие в акции введите номер телефона, нажмите клавишу "<-" (стрелка влево) и подтвердите действие клавишей "Ввод". В чек будет добавлена карта покупателя с введенным номером.

    При отмене оплаты карта автоматически удаляется из чека. 

    После закрытия чека введенный номер телефона будет записан в БД Documents таблицу Carditem.

  • Для отказа от участия в акции нажмите клавишу "->" (стрелка вправо) и подтвердите действие клавишей "Ввод". В чек будет добавлена карта с наименованием "Отмена".
    После закрытия чека в БД Documents таблицу Carditem поле number будет сохранено значение "Отмена".
Для изменения текста кнопок "ОК" и "Отмена" необходимо в файле перевода *.msg изменить текст соответствующего сообщения (inputTextFormOkBtn и inputTextFormCancelBtn). Для измененного текста кнопки "Отмена" должна быть создана группа карт с соответствующей маской номеров карт.