Почему в 1С:УНФ отсутствуют кнопки и шаблоны при печати этикеток для маркировки обуви?

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

В процессе работы с системой маркировки «Честный Знак» пользователи 1С:Управление нашей фирмой (УНФ) часто сталкиваются с проблемой: в документе Заказ на эмиссию кодов маркировки при выполнении виртуальной агрегации или попытке печати отсутствуют поля выбора шаблонов этикеток и кнопки управления печатью. Проанализируем причины этой ситуации и разберем по шагам, как восстановить работоспособность интерфейса и корректно настроить печать.

Причина 1: Особенности реализации подсистемы ИС МП в старых релизах

Разберем ситуацию, характерную для релизов 1.6.19–1.6.21. В этот период механизмы интеграции с ГИС МТ (Честный Знак) активно дорабатывались. Основная проблема заключается в том, что в данных версиях логика печати была частично «зашита» в код, а интерфейс формы ПечатьКодовМаркировки зависел от множества условий, которые не всегда выполнялись автоматически.

Выясним причину отсутствия полей через логику работы программы. Система скрывает настройки шаблонов, если:

  1. Статус документа не позволяет печать (коды еще не получены из СУЗ).
  2. В информационной базе отсутствуют шаблоны этикеток с конкретным типом назначения — Этикетка для маркировки.
  3. Программный код формы не находит данных в пуле кодов маркировки для выбранной номенклатуры.

Причина 2: Неверный тип шаблона этикетки

Рассмотрим подробнее настройку справочника Шаблоны этикеток и ценников. Одной из самых частых ошибок является создание обычного шаблона для номенклатуры. Для работы с маркировкой обуви необходимо соблюдать строгие правила. Проанализируем правильный алгоритм создания шаблона:

  1. Перейдем в раздел Компания — Все справочники — Шаблоны этикеток и ценников.
  2. При создании нового шаблона в поле Назначение обязательно выбираем Этикетка (обувь, одежда, табак...) или Штрихкоды упаковок.
  3. Если выбрать просто Номенклатура, форма печати в рабочем месте маркировки просто не «увидит» этот шаблон в выпадающем списке, и поле выбора останется пустым или скрытым.

Важный момент: В макете этикетки тип штрихкода должен быть установлен как GS1_DataMatrix (в некоторых релизах SG1_DataMatrix). Обычный DataMatrix не содержит необходимых идентификаторов применения и не будет считаться валидным для системы «Честный Знак».

Решение 1: Сброс настроек формы и проверка прав

Если в Конфигураторе форма выглядит корректно (все поля присутствуют), а в режиме «Предприятие» они исчезают, проверим пользовательские настройки. Выполним следующие действия:

  1. В открытой форме печати нажмем кнопку Еще — Изменить форму.
  2. В появившемся окне нажмем Еще — Установить стандартные настройки.
  3. Проверим, включена ли видимость групп ГруппаНастройкиШаблонов и ГруппаПараметрыПечати.

Также проанализируем ситуацию с правами доступа. Пользователь должен обладать ролью Администрирование системы маркировки или полными правами. В УНФ Базовой версии ограничения прав могут накладываться на уровне платформенных механизмов, если конфигурация была изменена некорректно.

Решение 2: Использование специализированного рабочего места

В современных версиях УНФ (начиная с 1.6.25 и выше, включая линейку 3.0) логика печати вынесена из документа Заказ на эмиссию. Рассмотрим правильный путь печати:

  1. Перейдем в раздел Закупки (или Продажи) — Сервис — Обмен с ИС МП.
  2. Откроем рабочее место Маркировка товаров.
  3. Создадим новый документ Маркировка товаров с операцией Производство или Импорт.
  4. На вкладке Товары воспользуемся кнопкой Подобрать и проверить маркированную продукцию.
  5. Именно из этого документа функция печати работает наиболее стабильно, так как она обращается к уже загруженным и сопоставленным кодам в регистре Пул кодов маркировки.

Решение 3: Доработка через расширение (для программистов)

Если обновление конфигурации невозможно, а штатные механизмы не отображают нужные поля, используем механизм расширений. Посмотрим на пример кода, который принудительно устанавливает видимость полей при создании формы на сервере. Это позволяет обойти жесткие проверки типового функционала.


&НаСервере
Процедура Расш_ПриСозданииНаСервереПосле(Отказ, СтандартнаяОбработка)
    // Принудительно включаем видимость элементов управления печатью
    Элементы.ГруппаШаблонЭтикетки.Видимость = Истина;
    Элементы.ШаблонПотребительскойЭтикетки.Видимость = Истина;
    Элементы.КоличествоЭтикетокУпаковки.Доступность = Истина;
    
    // Проверяем наличие данных в объекте
    Если Объект.Склад.Пустая() Тогда
        Сообщить("Внимание: Склад не заполнен, это может блокировать печать!");
    КонецЕсли;
КонецПроцедуры

Проанализируем этот код: мы обращаемся к именам элементов формы, которые видели в Конфигураторе, и программно меняем их свойство Видимость. Часто в УНФ 1.6.19 условие видимости завязано на переменную ПараметрыПечати.ДоступнаПечать, которая может ложно принимать значение Ложь из-за ошибок в кэше пула кодов.

Работа с пулом кодов маркировки

Выясним, почему система может выдавать сообщение «Нет данных для печати». В 1С:УНФ коды маркировки хранятся в специальном регистре сведений. Если вы получили коды через Заказ на эмиссию, но не нажали кнопку Подтвердить получение кодов (или она отработала с ошибкой), коды не попадут в пул.

Проверим наличие кодов:

  1. Перейдем в Функции для специалиста (ранее — Все функции).
  2. Найдем регистр сведений Пул кодов маркировки ИС МП.
  3. Убедимся, что для вашего документа Заказ на эмиссию записи существуют и их статус — Эмитирован.

Итоги и рекомендации

Мы рассмотрели основные причины «невидимости» настроек печати в 1С:УНФ. Подведем итог: наиболее эффективным способом решения проблемы является обновление программы до версии 3.0, где архитектура взаимодействия с Честным Знаком была полностью переписана на базе Библиотеки интеграции с ГИС МТ 2.0.

Если же вы вынуждены работать в старом релизе:

← На главную