Если используется контроль веса и пакеты расположены не на контрольных весах, то необходимо настроить контроль веса пакетов.
Если пакеты находятся на контрольных весах, то по умолчанию общий вес не изменится и ошибки не возникнет.
Настройка отображения диалога выбора пакетов
На кассе самообслуживания пользователю может быть предложено добавить пакеты к покупке.
Если настройка suggestAddBag включена, то будет отображаться диалог с ценой пакета, в котором можно выбрать количество пакетов или отменить добавление.
При включении настройки suggestAddBagManualInput будет отображаться диалог ввода с цифровой клавиатурой. В диалоге кнопка "Без пакета" отключается, если введено количество.
При включении настройки suggestAddBag требуется указать для параметра bagBarcode первым значением штрих-код товара, который будет добавлен в чек в качестве пакета.
<штрих-код в bagBarcode>: Товар не найден"Диалог может отображаться:
- при переходе из формирования в оплату,
- при переходе из приветствия в формирование по кнопке "Начать" или сканированием позиции.
Если включен контроль веса, то ошибки контроля веса могут быть отложены до закрытия диалога добавления пакета после сканирования товара в приветствии при suggestAddBagAt = start.
Если в чеке уже есть пакеты, то в диалогах добавления пакетов будет отображаться общее количество добавленных пакетов.
| Наименование параметра | Возможные значения | Описание | Примечания |
|---|---|---|---|
Файл /opt/sst-sco/conf/bag.ini, секция [Check], настройки модуля чека, связанные с добавлением пакетов | |||
| suggestAddBag |
| Предлагать покупателю добавлять пакеты в чек:
| При включении ( |
| suggestAddBagAt |
| Отображать предложение пакетов:
| Работает только при включенном параметре suggestAddBag (true или always) |
| suggestAddBagManualInput |
| Предлагать покупателю ввести количество пакетов вручную. Заменяет диалог с кнопками выбора пакетов на диалог ввода с цифровой клавиатурой. | |
bagBarcode | штрих-код пакета по умолчанию не задан | Штрих-код товара, который будет добавляться в чек как пакет. Допускается указание списка штрих-кодов через запятую, для добавления разных пакетов из режима формирования. В диалоге пакетов, отображаемом при переходах, используется первый | |
| addBagItems | 0 или целое положительное число по умолчанию 0 | Минимальное количество товаров в чеке для предложения пакетов | Работает только для диалогов, вызванных по предложению |
| addBagCount | целое число от 1 до 9 по умолчанию 3 | Количество кнопок добавления пакетов в диалоге множественного выбора пакетов. Кнопки будут выведены в порядке возрастания (от 1 до значения, заданного в параметре) | При значении 1 будет использоваться простой диалог выбора (при условии соблюдения приоритета) |
Отображение картинки в диалоге
В диалог предложения пакетов можно добавить изображение. Для этого нужно подкинуть картинку с названием add_bag.png в /opt/sst-sco/themes/<используемая тема оформления>/icons.
Изменить размер изображения можно через параметр addBagIconHeight из группы параметров geometry (в theme.json).
[Theme] geometryAddBagIconHeight = "200px"
Настройка формы добавления пакетов
Включение секций заменяет диалог добавления пакетов, отображаемый при переходах и при нажатии кнопки, на окно выбора пакетов. Позволяет одновременно добавить несколько видов пакетов в чек.
Диалог выбора пакетов появляется при наличии хотя бы одного значения из штрих-кодов в параметре bagBarcode и отображает все пакеты, штрих-коды которых присутствуют в параметре bagBarcode.
Не влияет на отображение диалога добавления одного пакета.
- Диалог выбора пакетов.
При наличии секции[Check.addBag.<строка>.<столбец>]со значениями штрих-кодов из параметраbagBarcode, независимо от нижестоящих настроек. - Диалог ввода количества.
При наличии параметраsuggestAddBagManualInput=true. - Диалог простого выбора.
При наличии параметраaddBagCount=1. - Диалог множественного выбора.
При отсутствии вышеупомянутых настройках.
Наименование | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/bag.ini, секция [Check.addBag.<строка>.<столбец>], настройка формы добавления пакетов | ||
| code | штрих-код пакета из bagBarcode | Штрих-код пакета из настройки bagBarcode. Обязательно к заполнению |
| name | id текста i18n или текст | id текста i18n или текст, который отображается как название пакета |
| icon |
по умолчанию icon.bag | Иконка, название из темы оформления или путь до файла |
| iconHeight | целое положительное число по умолчанию 200 | Высота иконки |
| own |
| Параметр должен быть задан в дополнительной секции |
Файл /opt/sst-sco/conf/bag.ini, секция [Check.addBag], настройка формы добавления пакетов | ||
| vertical |
| Разместить пакеты вертикально. Если все пакеты размещены в одну строку, то есть в секции не указывается столбец, тогда этой настройкой можно отобразить все пакеты в виде одного столбца. |
| spacing | числовое значение по умолчанию -1 (не задано) | Расстояние между пакетами в пикселях |
Строка и столбец – это числовые значения, которые задают относительный порядок пакетов. Столбец опционален, и если столбец не указан, значит в строке один пакет.
[Check] suggestAddBag = true bagBarcode = 123, 321 [Check.addBag.1] code = 123 [Check.addBag.2] code = 321 [Check.addBag.3] own = true [Check.addBag] spacing = 50
Добавление пакетов по кнопке
Также диалог добавления пакета можно назначить на кнопку действия с командой CHECK_ADDBAG. С её помощью в режиме формирования чека пользователь может самостоятельно добавить пакеты в нужном количестве. Работа кнопок не зависит от параметров suggestAddBag и addBagItems. Параметр bagBarcode обязателен к корректному заполнению.
Действие CHECK_ADDBAG имеет следующие параметры:
| Наименование параметра | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/bag.ini, секция [Check.FormingForm.actions.<строка>.<столбец>], настройка кнопки действий в окне формирования чека | ||
| addOne |
| Добавление одного пакета без выбора количества |
| count | целое число от 1 до 9 по умолчанию не задано | Количество пакетов для выбора. Если не указано, используется значение из addBagCount. При включении addOne настройка игнорируется. |
| barcodeIndex | целое положительное число по умолчанию 0 | Индекс штрих-кода из настройки bagBarcode. При 0 будет использоваться в качестве пакета первое значение из bagBarcode, при 1 - второе и т. д. |
| confirm |
| Отображение диалога подтверждения добавления одного пакета. Используется с включенным addOne или с count = 1. При false пакет добавляется по нажатию кнопки без подтверждения. |
| message | текст или id сообщения по умолчанию addBagMsg | Отображаемый текст в диалогах выбора пакетов по кнопке. Для отображения цены в настраиваемом сообщении используется подстановка %1. |
По нажатию кнопки из примера ниже отобразится диалог выбора одного пакета ( со штрих-кодом "99") с сообщением "Добавить пакет к покупке?" и с новой строки "Цена: <цена за единицу>" .
[Check] bagBarcode = 99 [Check.FormingForm.actions.4] ; Кнопка добавления пакета command = CHECK_ADDBAG text = customAddBag count = 1 message = customAddBagMsg [I18n.ru] customAddBag = Добавить пакет customAddBagMsg = Добавить пакет к покупке?\nЦена: %1
Если видов пакетов для добавления несколько (например, средний и маленький), то можно для каждого настроить отдельную кнопку. Например:
[Check] bagBarcode = 99, 123 [Check.FormingForm.actions.4.1] ; Кнопка добавления пакета command = CHECK_ADDBAG text = customAddBagSmall addOne = true barcodeIndex = 0 [Check.FormingForm.actions.4.2] ; Кнопка добавления пакета command = CHECK_ADDBAG text = customAddBagMiddle addOne = true barcodeIndex = 1 [I18n.ru] customAddBagSmall = Маленький\nпакет customAddBagMiddle = Средний\nпакет
Добавление пакета покупателя
Покупателю может быть предоставлена возможность добавить свой пакет на контрольные весы.
При значении параметра ownBag=true во всех возможных диалогах добавления пакетов дополнительно появляется кнопка "Свой пакет". Также кнопка "Свой пакет" может быть доступна в форме выбора пакетов.
При нажатии на кнопку "Свой пакет" разрешается положить на весовую платформу пакет покупателя в рамках допустимого веса, заданного параметром ownBagMaxWeight. При превышении веса отобразится соответствующая ошибка. Если добавить допустимый вес, то можно будет продолжить покупки. Пакет покупателя не добавляется в чек.
Вес пакета учитывается при увеличении веса от 1 до ownBagMaxWeight включительно.
Кнопка "Свой пакет" скрывается со всех форм при превышении лимита добавлений пакета покупателя, заданного параметром ownBagLimit.
После выбора своего пакета касса будет ожидать его добавления на контрольные весы.
Если модуль контроля веса выключен, то кнопка "Свой пакет" в диалогах будет доступна постоянно.
В ошибке веса пакета покупателя можно изменить изображение. Для этого нужно подкинуть картинку с названием incorrect_weight_own_bag.png в /opt/sst-sco/themes/<используемая тема оформления>/hints.
| Наименование параметра | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/bag.ini, секция [Check], настройки модуля чека, связанные с добавлением пакета покупателя | ||
| ownBag |
| Возможность выбрать свой пакет в диалоге выбора количества пакетов |
| ownBagMaxWeight | целое положительное число по умолчанию 0 | Максимальный вес своего пакета в граммах Обязательно к заполнению |
| ownBagLimit | целое положительное число | Лимит использования функции "Свой пакет" в рамках одного чека. |
Контроль веса пакетов
Для пакетов, которые добавляются в чек и на контрольные весы, необходимо включить контроль веса пакетов.
Необходимо установить обязательный ручной эталон в диапазоне от 0 до веса пакета.
suggestAddBagAt = start. В этом случае при одновременном добавлении пакета и товара в чек будет ожидаться общий вес, равный эталонам данных позиций. У товара при этом должен быть установлен только один эталон.
| Наименование параметра | Возможные значения | Описание |
|---|---|---|
Файл /opt/sst-sco/conf/bag.ini, секция [Check], настройки модуля чека, связанные с добавлением пакетов | ||
| bagWeightControl |
| Контроль веса для пакетов При включении настройки для пакетов начинает работать контроль веса |
Если значение параметра bagWeightControl=false, то можно избежать ошибок веса при добавлении пакетов, увеличив общую погрешность весов до веса пакета параметром scaleError.