Настройка функционала изменения цены товара производится на кассовом сервере по адресу: Магазин – Типы касс, где необходимо выбрать тип кассы и нажать кнопку Настройки:
1. В появившемся иерархическом древе необходимо в конфигурационном файле sale.conf (applications\sale\sale.conf) установить параметр usePriceCorrection = true:
В этом же файле sale.conf (applications\sale\sale.conf) нужно раскомментировать следующую строку:
,{ include file("conf/applications/sale/correct_prices.conf") }
Помимо этого, для корректного изменения цены путем считывания актуального ценника, в разделе bl файла sale.conf (applications\sale\sale.conf) следует указать:
корректный формат маски, в соответствии с которым зашифрована информация на QR-коде ценника (priceTagQRCodeMasks):
priceTagQRCodeMasks = [ {num = 1, mask = "^(.*)prc=([0-9]{13})P?([0-9]+)?D?([0-9]{6})?L?([0-9]+)?"} {num = 2, mask = "^()(99[0-9]{6})([0-9]{7})()()([0-9]{12})?([0-9]{9})?$"} ]
Внимание! Нельзя настраивать одинаковые или пересекающиеся маски. Ни в одном из конфигурационных файлов не должно быть повтора масок из другого конфигурационного файла. В противном случае, корректная работа кассы не гарантируется!
- значение срока действия ценника (в днях) в параметре expirationDays:
Если при попытке выполнить коррекцию цены считыванием QR-кода с ценника обнаружится, что разница между текущей датой с кассы и датой печати ценника превышает значение, установленное в параметре expirationDays, то операция не будет выполнена. При неуказанном значении expirationDays или указанном как 0 – срок действия ценника не анализируется системой.
2. Затем необходимо убедиться в наличии файла correct_prices.conf по адресу: applications\sale:
Если по указанному адресу файл отсутствует, то его необходимо там сохранить.
Присутствующий в файле параметр isManualCorrection разрешает (в значении true), либо запрещает (в значении false) изменение цены на кассе/киоске/КСО вручную:
3. При необходимости настроить клавишу вызова функции изменения цены на клавиатурной кассе, следует на кассовом сервере по адресу: Магазин – Кассы выбрать нужную кассу и нажать кнопку Оборудование:
В появившемся иерархическом древе в конфигурационном файле keyboard_layout (hardware\keyboard_layout\keyboardLayout.conf) нужно посмотреть, какой тип клавиатуры используется (он должен быть раскомментирован в общем списке):
Далее, в конфигурационный файл с раскладкой используемой клавиатуры по адресу: hardware\keyboard_layout\файл актуальной раскладки необходимо добавить следующий фрагмент, после чего нажать кнопку Сохранить:
{
code : <keyKode>,
type : "UIAction",
params : "PriceCorrection"
},
4. Операция смены цены защищена правами пользователя. Для того, чтобы дать доступ определенному кассиру к этому функционалу, необходимо в разделе кассового сервера Кассиры – Роли кассиров выбрать интересующего пользователя, открыть его профиль для редактирования и, отметив пункт Коррекция цены как разрешенный (средняя колонка), нажать кнопку Сохранить:
Особенности:
- операция изменения цены товара (как по актуальному QR-коду с ценника, так и вручную) регламентируется правами кассира/старшего кассира;
- смена цены (любым способом) для табачной продукции запрещена;
- операция изменения цены при пустом чеке невозможна;
- при ручном изменении цены, новая цена не может быть ниже минимальной, установленной на товар;
- при наличии у покупателя большого количества одинаковых товаров, для которых требуется смена цены, ручное изменение цены придётся выполнять для каждого такого товара в отдельности (в отличие от изменения цены путем считывания QR-кода с актуального ценника, которое распространится сразу на все идентичные товары в чеке).








