В процессе работы с алкогольной продукцией в системе ЕГАИС участники рынка часто сталкиваются с физическим повреждением марок. Если со старым форматом PDF417 многие механизмы были отработаны до автоматизма, то восстановление современных марок формата DataMatrix вызывает вопросы. Основная сложность заключается в том, что новые марки содержат криптографическую защиту, которую невозможно просто «перерисовать» или сгенерировать заново без исходных данных из системы. Рассмотрим подробно, как найти потерянный код в базе 1С и что можно сделать для его восстановления.
Прежде чем мы перейдем к техническим решениям, проанализируем ситуацию с точки зрения законодательства и технологии. Новая федеральная специальная марка (ФСМ) формата DataMatrix состоит из 150 символов. В этот объем зашифрован код типа марки, серия, номер и, самое главное, «криптохвост» — электронная подпись Гознака.
Важно понимать: самостоятельная печать дубликата марки на обычном принтере не делает его акцизной маркой. Согласно ФЗ-171, продукция с нечитаемой маркой считается немаркированной. Однако методология ЕГАИС допускает использование штрихового кода, числящегося на остатках организации, если считывание оригинала затруднено. Разберем, как законно и технически верно извлечь этот код из вашей информационной базы 1С.
Если на бутылке физически различимы цифры (серия и номер марки), нам не обязательно считывать весь 2D-код сканером. В новых марках номер зашит начиная с 4-й позиции. Это позволяет нам выполнить поиск по справочнику штрихкодов в вашей конфигурации 1С:Розница, 1С:УТ или 1С:ERP.
Проанализируем техническую реализацию этого поиска. Нам потребуется обратиться к справочнику Справочник.ШтрихкодыУпаковокТоваров. Рассмотрим пример запроса, который поможет вытащить полную строку из 150 символов, зная только видимую часть марки (11 знаков — КодАП + Номер):
ВЫБРАТЬ
Штрихкоды.Ссылка КАК Штрихкод,
Штрихкоды.ЗначениеШтрихкода КАК ПолныйКод
ИЗ
Справочник.ШтрихкодыУпаковокТоваров КАК Штрихкоды
ГДЕ
Штрихкоды.ЗначениеШтрихкода ПОДОБНО "%ВашКодАПНомерМарки%"
В данном запросе параметр %ВашКодАПНомерМарки% должен содержать те самые символы, которые вы видите на этикетке. Система найдет полное значение штрихкода, включая криптографическую часть, которую можно будет использовать для реализации через кассу или для списания.
Если марка повреждена настолько, что даже цифры не читаются, мы применим метод поштучной ревизии. Этот способ особенно актуален для продукции, принятой после перехода на поштучный учет (версия формата 3.0).
Разберем алгоритм действий по шагам:
Этот метод является наиболее надежным и легальным, так как вы оперируете данными, официально предоставленными системой ЕГАИС для вашей организации.
Выясним причину, по которой обычный сканер не может считать код. DataMatrix обладает встроенной системой коррекции ошибок Рида-Соломона, что позволяет распознавать его даже при повреждении до 30% площади. Если складской сканер «пасует», попробуем следующие приемы:
Использование смартфона: Камеры современных смартфонов и специализированные мобильные приложения для ЕГАИС часто имеют гораздо более продвинутые алгоритмы обработки изображений, чем бюджетные 2D-сканеры. Попробуйте сфотографировать марку и считать её программно.
Повышение контрастности: Если марка затерта, можно сфотографировать её и в любом фоторедакторе выкрутить контрастность на максимум. Часто это помогает «проявить» структуру DataMatrix, которую затем можно считать прямо с экрана монитора.
В актуальных версиях программ 1С (начиная с 3.0.x в Рознице и аналогичных в УТ) реализована обработка «Проверка и подбор алкогольной продукции». Проанализируем, как она помогает в нашей ситуации.
В процессе инвентаризации вы можете пометить конкретную позицию как «Повреждена». В этом случае система позволяет вручную сопоставить обнаруженные излишки марок в базе с физическими бутылками. Это исключает необходимость написания сложных SQL-запросов вручную, предоставляя пользователю удобный интерфейс для поиска «того самого» потерянного кода среди остатков на Регистре №3.
Если марка уничтожена полностью и поиск в базе не дал результатов (например, продукция очень старая или была принята пересортицей), единственным легальным путем остается списание. Рассмотрим порядок действий:
Помните, что хранение на полке магазина бутылки с распечатанным на обычном принтере кодом вместо оригинальной марки — это риск. Проверяющие органы могут расценить это как оборот алкоголя без марок установленного образца. Поэтому старайтесь использовать восстановленные коды только для проведения операций в системе (списание, возврат поставщику), а не для выставления товара на витрину.
Рассмотрим, почему старая обработка для PDF417 не подходит. Старый формат марки был менее защищенным, и 1С могла восстановить его структуру на основе открытых реквизитов. В DataMatrix криптографическая подпись (экземплярная защита) уникальна для каждой единицы товара. Без наличия исходной 150-символьной строки в вашей базе данных (записанной при приемке) или в системе ЕГАИС, «нарисовать» рабочую марку невозможно.
Таким образом, наша главная задача — не «создать» марку, а «найти» её в цифровых архивах вашей системы или запросить актуальный список идентификаторов у регулятора.