Проблема корректного выбытия маркированных товаров в устаревших конфигурациях на обычных формах, таких как Управление производственным предприятием (УПП) или Управление торговлей 10.3 (УТ 10.3), стоит очень остро. Многие технические специалисты сталкиваются с ситуацией, когда после сканирования кода маркировки в документе «Чек ККМ» или «Реализация товаров и услуг», фискальный регистратор печатает обычный чек без обязательного признака маркировки. Рассмотрим подробно, как должна быть организована эта цепочка и какие узкие места необходимо проверить.
Первое и самое важное, что мы должны проанализировать — это версия ФФД. Для торговли маркированными товарами, в частности шинами и автопокрышками, обязательным условием является использование формата ФФД 1.2. Если ваша касса настроена на работу по старому формату 1.05 или 1.1, то передача кода маркировки будет происходить некорректно, и заветная буква «М» в чеке не появится.
Выясним причину отсутствия признака маркировки. При работе по ФФД 1.2 кассовый аппарат не просто печатает символ, он взаимодействует с системой Честный ЗНАК в режиме реального времени. Если в чеке не отображаются символы [M+], [M] или [M-], значит, информация о коде товара (тег 1163) не была передана в драйвер ККТ в нужном формате. Разберем, как проверить готовность оборудования:
Часто проблема кроется в настройках самой программы. Разберем по шагам, что должно быть заполнено в УТ 10.3 или УПП, чтобы система «поняла», что товар подлежит маркировке. Перейдем в карточку номенклатуры и проверим следующие реквизиты:
Вид номенклатуры: Убедимся, что выбран вид номенклатуры, для которого установлен правильный тип. Для шин это должен быть тип Шины и автопокрышки. Это критически важно, так как именно от типа номенклатуры зависят алгоритмы обработки штрихкодов в коде программы.
Настройка учета маркировки: Проверим, включена ли опция ведения учета маркированных товаров в константах или настройках параметров учета. В последних релизах 1С добавила специальные разделы для интеграции с ИС МП (Честный ЗНАК).
Проанализируем ситуацию, описанную программистами: «штрихкод упаковки в чек вообще не передается». В старых конфигурациях логика печати чека сосредоточена в общих модулях, связанных с торговым оборудованием. Рассмотрим примерный алгоритм передачи данных в драйвер.
Когда мы пробиваем чек, программа формирует структуру данных. Для маркированного товара необходимо заполнить специфический атрибут. Если вы используете внешнюю обработку обслуживания, убедитесь, что она адаптирована под требования ФФД 1.2. В коде это выглядит примерно так (на примере взаимодействия с драйвером):
// Пример логики подготовки данных для ККТ
Если Номенклатура.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Шины Тогда
ДанныеЧека.КодТовара = ПолучитьКодМаркировкиДляККТ(СтрокаТабличнойЧасти.КодМаркировки);
// Важно, чтобы КодМаркировки передавался не как строка текста,
// а как объект, содержащий идентификатор применения (AI)
КонецЕсли;
Если типовой механизм не срабатывает, нам необходимо проверить общий модуль МенеджерОборудованияВызовСервера или аналогичный ему в вашей версии конфигурации. Ищем функции, отвечающие за формирование XML-пакета для кассы. В этом пакете должен присутствовать тег GoodCodeData.
Существует два основных сценария розничной продажи. Разберем каждый из них:
РеализацияТоваровУслуг через специальную форму (иконка с маркировкой). Если в реализации коды не зафиксированы, то при нажатии кнопки «Чек» они не попадут в ККТ.В современных реалиях ФФД 1.2 просто буквы «М» уже недостаточно. Касса выводит статус проверки кода:
[M+] — Означает, что проверка в системе Честный ЗНАК прошла успешно. Товар подлинный, его можно продавать.
[M] — Означает, что касса не смогла получить ответ от сервера ИС МП (например, из-за проблем с интернетом), но формат кода корректен. Продажа разрешена.
[M-] — Проверка не пройдена (код не найден в базе или имеет некорректный статус). Такую продажу лучше не проводить во избежание штрафов.
Если в вашем чеке нет ни одного из этих признаков, значит, программа передает данные как обычный товар. Выясним причину: либо в 1С не заполнен реквизит КодМаркировки, либо драйвер кассы не понимает переданную структуру данных.
Если вы используете сильно кастомизированную версию УПП или УТ 10.3, которую невозможно обновить до последнего релиза, рассмотрим вариант ручной интеграции функционала:
1. Обновление внешних обработок обслуживания. Часто 1С выпускает обновления обработок (файлы .epf) отдельно от конфигурации. Попробуйте загрузить последнюю версию обработки для вашего драйвера (АТОЛ или Штрих-М).
2. Использование компоненты интеграции. В конфигурации должны быть внедрены общие модули ИнтеграцияИСМП. Проанализируем, подключены ли они в процедуре формирования чека.
3. Настройка сканера штрихкодов. Убедитесь, что сканер передает префикс и суффикс корректно, и что в 1С настроено считывание именно DataMatrix. Для этого в настройках торгового оборудования для сканера должен быть выбран правильный тип штрихкода.
Рассмотрим ситуацию с зависанием системы Честный ЗНАК. Иногда проблемы с печатью чека связаны с недоступностью серверов ИС МП. В этом случае касса может долго «думать» перед печатью чека, пытаясь выполнить запрос. В 1С предусмотрены таймауты ожидания ответа, которые можно настроить в параметрах торгового оборудования.
В заключение отметим, что для стабильной работы в УПП и УТ 10.3 крайне важно следить за обновлениями подсистемы Библиотека подключаемого оборудования (БПО), которая встроена в эти конфигурации. Именно она отвечает за то, чтобы теги маркировки правильно долетали до фискального регистратора.