Описание

Марка не состоит из 4-х секций, как изначально указано в регулярных выражениях. При её обработки кассой, вырезается часть служебных символов, при получении марки со сканера. Фактически производится работа с остатком данных после её сканирования. Иногда служебные символы не соответствуют тем, что вырезает кассовая программа, и тогда в кассу передается марка с лишними символами, которые становятся пробелами или другим фиксированным значением в каждой марке. Есть случаи, когда производитель не корректно скопирует марку и в конце неё появляется конкретный символ, например ;.

В основном, такие проблемы можно решить только, перемаркировав товар. Также на этапе внедрения маркировки табака и обуви, регулярные выражение приходилось неоднократно редактировать.

На данный момент для проверки марки в ОФД и SetMark используются 2 секции:

Эти 2 секции остаются обязательными.

Подрезка криптохвоста марок

Описание

В большинстве случаев нужно обеспечивать хранение и выгрузку информации о марках в усеченном виде, чтобы соблюдать требования законодательства. Согласно требованиям к системам работающих с маркированными товарами, запрещается хранение марок в полном виде. 

До версии 10.2.91.0, кассовая программа сохраняла марки в полном виде при считывании и выгружала их в полном объеме.

Начиная с версии 10.2.91.0 реализована подрезка марок по длине, чтобы не могло появиться претензий к кассовой программе.

Условия работы

Настройка

Для подрезки в регулярное выражение добавляется группа gtinPrefix.

Пример регулярного выражения:

^(?=.{0,150}$)^(?<gtinPrefix>01|02)(?<gtin>\d{14})21(?<serial>.{7})(?:8005(?<mrp>\d{6}))?((?:93(?<verificationCode>\S{4}))|((?:9099(?<checkCode>\S{8})))).*$

Таким образом, если требуется сделать обновление настроек, выполните скрипт:

UPDATE sales_management_properties
	SET property_value='^(?=.{0,150}$)^(?<gtinPrefix>01|02)(?<gtin>\d{14})21(?<serial>.{7})(?:8005(?<mrp>\d{6}))?((?:93(?<verificationCode>\S{4}))|((?:9099(?<checkCode>\S{8})))).*$'
WHERE 
	module_name='MARK_PARSERS' 
AND
	plugin_name='TOBACCO_BLOCK';

Включение валидации кода учета для ювелирных изделий

Для ювелирных изделий регулярное выражение формата кода маркировки по умолчанию не установлено. При настройках по умолчанию любой код учёта будет распознаваться как некорректный.

Чтобы установить формат кода учёта 16 цифр, выполните скрипт по базе данных set на сервере:

INSERT INTO public.sales_management_properties
            (module_name,
             plugin_name,
             property_key,
             property_value,
             description,
             transport_level,
             priority,
             send_status)

VALUES      ('MARK_PARSERS',
             'JEWELRY',
             'parser.regex',
             '^\d{16}$',
'Регулярное выражение для ювелирных изделий',
10, 2, 0); 

Игнорирование AI='3103' в КМ молочной продукции

Начиная с версии 10.3.11.0 на кассе сначала происходит игнорирование AI=3103 в марке молока, если он есть. Добавляется условие с регулярным выражением на не обязательное наличие. Касса игнорирует значение веса в КМ. Одинаково ведет себя с его наличием и отсутствием.

Пример регулярного выражения

^01(?<gtin>\d{14})21(?<serial>\S{6})93(?<verificationKey>\S{4})(3103(?<weight>\d{6}))?$

Пример сценария

  1. Дано:

    1. Есть КМ молока с секцией веса.

    2. Есть КМ молока без секции с весом.

  2. Кассир сканирует ШК молочного товара. Касса требует считать КМ.

  3. Кассир считывает КМ с весом.

  4. Проверяем, касса приняла КМ с весом

  5. Кассир сканирует ШК молочного товара. Касса требует считать КМ.

  6. Кассир считывает КМ без веса.

  7. Проверяем, касса приняла КМ без веса.

Запрет продажи обуви с упрощенной маркировкой (остатки)

В связи с Постановлением Правительства с 01.04.2023 запрещена продажа обуви, маркированной по упрощенной схеме ("остатки"). Начиная с версии 10.3.24.0 изменены регулярные выражения для обуви, промаркированной как “остатки”, такие товары не будут добавлены в чек.

Новые регулярные выражения для обуви

Российская Федерация:

^01(?<gtin>[^2}\d{12})21(?<serial>\S{13})(?:240(?<tradeCode>\d{4}))?(?:91(?<verificationKey>\S{4}))(?:92(?<verificationCode>\S{88}))$

Республика Беларусь:

^01(?<gtin>\d{14})21(?<serial>\S{13})(?:91(?<verificationKey>\S{5}))(?:92(?<verificationCode>\S{88}))$

Республика Казахстан:

^01(?<gtin>\d{14})21(?<serial>\S{13})(?:91(?<verificationKey>\S{4}))(?:92(?<verificationCode>\S{88}))$

Для включения возможности продажи обуви по упрощенной схеме выполните скрипт по базе данных set.

Поддержка новых форматов КМ для БАДов и антисептиков

В версии SetRetail 10.4.0.0 добавлена поддержка новых форматов кодов маркировки:

БАДы

В соответствии с Постановлением Правительства РФ №886 от 30.05.2023 г. поддерживаются следующие форматы:

Антисептики

В соответствии с Постановлением Правительства РФ №870 от 30.05.2023 г. поддерживаются следующие форматы: