Почему 1С:Розница формирует нечитаемые штрихкоды акцизных марок ЕГАИС и как это исправить

Программист 1С v8.3 (Управляемые формы) 1С:Розница Торговля и дистрибуция
← На главную

В конфигурациях 1С (в частности, в 1С:Розница) предусмотрен встроенный механизм запроса акцизных марок из ЕГАИС. Данная функция необходима в ситуациях, когда физическая марка на алкогольной продукции повреждена или плохо читается. Однако пользователи часто сталкиваются с проблемой: ответ от ЕГАИС приходит корректный, но распечатанный из 1С штрихкод формата PDF417 2D-сканеры (например, Honeywell 1450g, Metrologic или Datalogic) отказываются считывать.

Рассмотрим подробнее, почему возникают сбои при генерации двумерных кодов средствами 1С и какими способами можно оперативно устранить эту неисправность.

Причины проблемы с нечитаемостью PDF417 из 1С

Проанализируем техническую сторону формирования штрихкодов в табличных документах 1С:

  1. Ошибки компоновки в компоненте печати: Внешняя компонента генерации штрихкодов при работе с символикой PDF417 может некорректно рассчитывать пропорции матрицы (соотношение строк и колонок) для определенных комбинаций символов в 68-значном коде марки. В результате генерируется код с искаженной геометрией модулей.
  2. Растровое сглаживание и масштабирование: Штрихкод выводится в печатную форму как растровое изображение. При выводе на печать с неподходящим масштабом происходит сглаживание черных и белых граней (появляются серые пиксели), из-за чего оптическая система сканера не может декодировать границы.
  3. Отсутствие «тихих зон» (Quiet Zones): Стандарт PDF417 требует наличия пустых полей по периметру кода. Если границы ячейки макета 1С поджаты вплотную к штрихкоду, сканер не фиксирует начало структуры.
  4. Сжатие при работе через RDP: При использовании удаленного рабочего стола виртуальные драйверы печати (например, TS EasyPrint) могут применять сжатие графики, полностью разрушая геометрию плотного 2D-кода.

Способ 1. Извлечение 68-значного кода из XML и использование сторонних генераторов

Разберем быстрое решение проблемы, когда требуется срочно пробить марку. Код акцизной марки ЕГАИС представляет собой символьную строку из 68 знаков. Необязательно печатать его именно в виде PDF417 через встроенный макет 1С.

  1. Перейдем в протокол обмена с ЕГАИС и откроем входящий XML-ответ.
  2. Найдем значение текстовой строки марки (содержит 68 символов). Пример строки марки: 57N000003QZSF1VEIPK0AKU71204001032189430A7F5FEC2248728C85F73C0A8590B
  3. Скопируем данную строку в любой сторонний сервисный генератор штрихкодов или векторную утилиту и сформируем код PDF417 или QR-код. Распечатанный таким образом код без труда считывается любым 2D-сканером.

Способ 2. Прямой программный ввод кода без печати

Выясним, как исключить этап печати штрихкода на бумагу. Поскольку марка представляется обычной текстовой строкой, ее можно передавать в документ продажи или чек КММ напрямую программным путем.

В коде обработки подбора алкогольной продукции можно перехватывать полученное значение из ЕГАИС и подставлять его непосредственно в структуру чека УТМ, минуя этап физического сканирования бумажного листа.

Способ 3. Обновление компоненты печати и платформы 1С

Если необходимо наладить стабильную печать непосредственно из интерфейса 1С, выполним следующие действия:

  1. Обновим технологическую платформу 1С:Предприятие и Библиотеку подключаемого оборудования (БПО) до актуальных версий. В свежих релизах компоненты печати штрихкодов переведены на нативные механизмы, где исправлены ошибки геометрии PDF417 и DataMatrix.
  2. В настройках макета печатной формы отключим авто-масштабирование (установим масштаб «100%» вместо «По ширине страницы»).
  3. Проверим наличие полей (тихих зон) вокруг рисунка штрихкода в макете 1С, увеличив размер ячейки.
  4. При работе в RDP установим локальные драйверы принтера и отключим использование EasyPrint в групповых политиках.

Способ 4. Донастройка 2D-сканера

Посмотрим на настройки считывающего оборудования. Многие сканеры (включая Honeywell 1450g) по умолчанию имеют строгие критерии валидации тихих зон и соотношения сторон PDF417.

Для решения проблемы считывания уплотненных или слегка искаженных кодов следует считаем управляющие штрихкоды из руководства пользователя сканера, которые активируют режим агрессивного декодирования (PDF417 Extended Decoding / Relaxed Quiet Zone).

← На главную