Правила разбора, заданные в конфигурационном файле /linuxcash/cash/conf/bcode.ini, применяются в случае, если не были применены правила разбора из конфигурационного файла /linuxcash/cash/conf/ncash.ini.d/input.ini.

При указании правил разбора штрих-кода в конфигурационном файле /linuxcash/cash/conf/ncash.ini.d/input.ini, в /linuxcash/cash/conf/bcode.ini и в файлах директории /linuxcash/cash/conf/bcode.ini.d/ считывание файла происходит в следующем порядке:

  1. /linuxcash/cash/conf/ncash.ini.d/input.ini.
  2. /linuxcash/cash/conf/bcode.ini.
  3. /linuxcash/cash/conf/bcode.ini.d/.

Правила разбора штрих-кода фиксируются в конфигурационном файле /linuxcash/cash/conf/bcode.ini и применяются в заданном порядке. Также осуществляется считывание конфигурации bcodeparser из директории /linuxcash/cash/conf/bcode.ini.d/ (считывание файлов происходит в алфавитном порядке). Итоговая конфигурация выводится в основной лог программы /linuxcash/logs/current/terminal.log.

Формат записи файла bcode: Mask=Rule, где:

  • Mask – маска сканируемого штрих-кода, по которой осуществляется поиск на соответствие вводимого штрих-кода правилу интерпретации,
  • Rule – правило интерпретации штрих-кода, соответствующего маске.  

Маска штрих-кода

Macка штрих-кода – строковое выражение, состоящее из следующих символов:  

  • ? – любой символ, занимающий данное знакоместо,
  • * – любая последовательность символов,
  • С – любая константа.

При совпадении сканируемого штрих-кода (или ручного ввода) с маской считается, что к введенному штрих-коду необходимо применить правило его интерпретации, описываемое в правой части выражения.

Правила интерпретации штрих-кода

Начиная с версии 4.6.162-3 для кода маркировки табачной продукции (M), штрих-кода акцизной марки алкогольной продукции (E), кода маркировки обувных товаров (m) и кода маркировки лекарственных препаратов (L) правило интерпретации задавать не требуется.

Правило интерпретации представляет собой строку, содержащую маски назначения. Маска назначения – последовательность одинаковых символов, определяющих значение соответствующих знакомест. Возможны следующие значения маски назначения:

СимволЗначениеПримечания
Bштрих-код товара
Zштрих-код товара без лидирующих нулей
Yштрих-код товара без завершающих нулей
Qколичество (вес)
Pцена
iиндекс цены для товара
dномер отдела для товара
Xсимвол игнорирования
Cномер карты
сномер купона
.десятичная точка – разделитель целой и дробной части для веса и ценыУказывается только в правиле интерпретации, описанном в правой части выражения
Uпароль консультанта
Sзадание шифрованных купонов
sсрок годности товара в формате ддММ, ддММГГ, ддММГГчч, ддММГГччммИспользуется для контроля срока годности товара
O

номер уникального (онлайн) купона


eдополнительная опция товараИспользуется при предоставлении скидки по штрих-коду
:правило применения интерпретированных штрих-кодовВ процессе разбора считывается как отдельный символ, поэтому указывается в маске штрих-кода и в правиле интерпретации, описанном в правой части выражения
Kданные комплектного товараИспользуется для комплектных товаров
Если количество товара в штрих-коде равно нулю, то на экран будет выведено сообщение с предложением ввести количество, иначе товар не будет добавлен в чек.
Пример
Правило интерпретации штрих-кода в bcode.ini:
28???????????=BBBBBBBQQ.QQQX
*=BBBBBBBBBBBBBBBBBB
 
Разбор штрих-кода:
1. При вводе вручную или при помощи сканера штрих-кода 2812345005769 строка будет интерпретирована следующим образом:  
Реальный штрих-код = 2812345, 
Вес (кол-во) товара = 0.576 кг.  
В чек будет добавлен товар со штрих-кодом 2812345 и количеством 0.576 кг.  
 
2. При вводе штрих-кода 4602685501894 товар пройдет через маску * и будет добавлен в чек с этим штрих-кодом.

Правила интерпретации для шифрованных купонов (S) и уникальных купонов (O) могут быть заданы двумя способами:

  • фиксированное количество символов, соответствующее маске.

    Пример правила интерпретации шифрованных купонов
    ?????=SSSSS
  • произвольное количество символов, соответствующее маске.

    Пример правила интерпретации шифрованных купонов
    ?????=S*

Правило применения интерпретированных штрих-кодов (:) используется при одновременном вводе разных типов данных. Данные будут последовательно считываться и применяться до первой ошибки.

Пример применения правила интерпретации для добавления купона и карты пользователя в чек

QR-код содержит номер уникального (онлайн) купона и номер карты. При считывании QR-кода сначала будет осуществлена проверка купона, затем - карты. Если при добавлении купона возникла ошибка, то добавление карты в чек осуществляться не будет.

При корректных данных купон и карта будут добавлены в чек.

Реализовано только в контексте открытого документа.

Правило интерпретации
Правило интерпретации штрих-кода в bcode.ini:
???????????????????=OOOOOOOOOOOO:CCCCCC
 
Разбор штрих-кода:
При вводе штрих-кода 111222333444:123456 строка будет интерпретирована следующим образом:  
Номер уникального (онлайн) купона = 111222333444, 
Номер карты = 123456.  
В чек будут добавлены купон с номером 111222333444 и карта с номером 123456.
В кассовом ПО Artix реализована возможность использования правил интерпретации штрих-кодов при считывании карты через ридер и при добавлении купона по кнопке. Подробнее об этом можно прочитать в статье "Использование правил интерпретации штрих-кодов".
  • No labels