При работе с маркируемыми товарами в устаревших, но активно поддерживаемых конфигурациях, таких как 1С:Управление торговлей 10.3, пользователи часто сталкиваются с техническими сложностями. Одной из наиболее острых проблем является ситуация, когда при пробитии чека данные о маркировке (GTIN, серийный номер, КИЗ) не уходят в систему «Честный знак», хотя само сканирование кода в программе проходит успешно. Рассмотрим подробнее, почему возникает эта ошибка и как ее устранить.
Проанализируем ситуацию: в процессе пробития чека программа может «спотыкаться» на проверке заполнения типа маркировки. В модуле МенеджерОборудованияВызовСервера часто встречается проверка ПустаяСтрока(ДанныеКодаТоварнойНоменклатуры.ТипМаркировки). Если это условие выполняется (строка пуста), алгоритм формирования данных для кассового аппарата (ККТ) прерывается, и необходимые теги не передаются в фискальный накопитель.
Выясним причину, по которой это происходит. В конфигурации УТ 10.3 за определение типа маркировки отвечает функция ТипМаркировкиККТПоВидуПродукции, расположенная в общем модуле ИнтеграцияИСКлиентСервер. В старых релизах (или при отсутствии актуальных обновлений БИС — Библиотеки интеграции с ИС) в этой функции может отсутствовать перечисление для категории «Товары легкой промышленности и одежда».
Пример проблемного участка кода может выглядеть следующим образом:
Функция ТипМаркировкиККТПоВидуПродукции(ВидПродукции) Экспорт
Если ВидПродукции = Перечисления.ВидыПродукцииИС.Табак Тогда
Возврат "00h";
ИначеЕсли ВидПродукции = Перечисления.ВидыПродукцииИС.Обувь Тогда
Возврат "05h";
// Если здесь отсутствует проверка для легкой промышленности,
// функция вернет пустое значение или вызовет исключение.
КонецЕсли;
КонецФункции
Как показывает практика и опыт участников форума, наиболее эффективным и быстрым способом решения проблемы является комплексное обновление драйверов ККТ. Это критически важно, так как взаимодействие между 1С и кассой происходит через промежуточное звено — внешнюю обработку обслуживания (файл формата .epf) и сам драйвер производителя (например, Штрих-М или АТОЛ).
Выполним следующие шаги для исправления ситуации:
.epf, который идет в комплекте с новым драйвером или входит в состав актуального релиза конфигурации.Рассмотрим ситуацию, когда драйверы обновлены, но ошибка сохраняется. Нам необходимо убедиться, что карточка товара заполнена корректно для системы маркировки. Проанализируем реквизит Вид продукции ИС. Для одежды и текстиля должно быть выбрано значение «Товары легкой промышленности и одежда».
Также стоит обратить внимание на формат фискальных данных (ФФД). При переходе на ФФД 1.2 требования к передаче кодов маркировки ужесточились. Теперь касса должна самостоятельно проверять код маркировки в системе «Честный знак» перед закрытием чека. Для этого 1С передает данные в тег 1163. Если в программе не настроена поддержка ФФД 1.2, данные могут уходить в старом формате, который не распознается современными прошивками ККТ.
Если обновление конфигурации до последнего релиза по каким-то причинам невозможно, проанализируем возможность ручной корректировки кода. Нам нужно заставить функцию ТипМаркировкиККТПоВидуПродукции возвращать правильный идентификатор для легкой промышленности. Для большинства современных кассовых аппаратов код типа маркировки для одежды совпадает с обувным и имеет значение "05h" (в шестнадцатеричной системе).
Посмотрим на пример того, как можно дополнить функцию в модуле ИнтеграцияИСКлиентСервер:
// Добавляем проверку для товаров легкой промышленности
ИначеЕсли ВидПродукции = Перечисления.ВидыПродукцииИС.ТоварыЛегкойПромышленности Тогда
Возврат "05h";
После внесения правок необходимо убедиться, что структура ДанныеКодаТоварнойНоменклатуры, которая передается в МенеджерОборудования, содержит заполненное поле ТипМаркировки. Именно это значение используется драйвером для формирования корректного запроса к ККТ.
Разберем специфику работы с популярными кассами «Штрих-М». Часто проблема «пустой строки» возникает из-за того, что в настройках самого драйвера (в утилите «Тест драйвера») не включены необходимые флаги для работы с маркировкой. Проверьте, что в таблицах настроек ККТ активирована поддержка тега 1162 (или 1163 для ФФД 1.2).
Важный момент: если вы используете старую версию обработки ShtrihMkkt.epf, она может просто не знать о существовании новых видов продукции. Обязательно проверьте версию API, которую использует обработка, и сопоставьте ее с версией установленного драйвера CBM.dll или ShtrihM_KKT_8.dll.
Посмотрим на перспективу: с 2024 года список товаров легкой промышленности, подлежащих маркировке, существенно расширился (свитеры, спортивные костюмы, шали и др.). Если ваша версия УТ 10.3 была выпущена до этих изменений, регулярные выражения для разбора кодов DataMatrix могут работать некорректно.
Проанализируем ситуацию: если код сканируется, но система выдает ошибку «Неверный формат», это означает, что шаблон разбора кода в модуле МаркировкаТоваровГиИСМ устарел. В этом случае потребуется либо обновление конфигурации, либо ручная правка регулярных выражений, чтобы программа могла корректно выделять GTIN и SerialNumber из считанной строки кода маркировки.
Подводя итог, можно сказать, что проблема с маркировкой в УТ 10.3 чаще всего носит интеграционный характер. Для успешной работы выполним следующие рекомендации:
Номенклатура, особенно поле Вид продукции ИС.Соблюдение этих шагов позволит избежать ошибок при обмене данными с системой «Честный знак» и обеспечит корректное выбытие товаров легкой промышленности из оборота при розничной продаже.