При разработке и доработке конфигураций на платформе 1С:Предприятие 8.3 (включая «Зарплата и Управление Персоналом 3.1») разработчики часто сталкиваются с ситуацией, когда на форме документа в режиме «1С:Предприятие» отображается выпадающее подменю «Печать», однако при открытии той же самой формы в конфигураторе этой кнопки нет в составе элементов командной панели. В этой статье мы разберем устройство подсистемы печати, выясним, где формируются команды, и научимся управлять выводимым заголовком для внешних печатных форм (ВПФ).
В современных типовых решениях 1С используется подсистема «Печать» из состава Библиотеки стандартных подсистем (БСП). Одно из главных правил этой подсистемы — универсальность и динамическое формирование командного интерфейса.
Кнопки печати не размещаются на форме вручную на этапе разработки в конфигураторе. Вместо этого в командную панель формы помещается пустая группа команд (например, с именем ГруппаПечать или ПодменюПечать). При открытии формы в режиме пользовательского сеанса БСП автоматически запрашивает список доступных печатных форм для данного документа и динамически конструирует кнопки вызова.
Рассмотрим по шагам путь, который проходит платформа 1С при формировании кнопок печати:
ПриСозданииНаСервере. В этом обработчике вызывается специализированный метод БСП:
УправлениеПечатью.ПриСозданииНаСервере(ЭтаФорма, Элементы.ГруппаПечать);
Документы.Увольнение.МодульМенеджера) и вызывает экспортную процедуру ДобавитьКомандыПечати(КомандыПечати). В этой процедуре разработчик описывает встроенные макеты.ДополнительныеОтчетыИОбработки. Если к документу привязаны активные внешние печатные формы, они автоматически добавляются в общий список команд.Если вам требуется докопаться до кода, который отвечает за формирование конкретной печатной формы или вызов табличного документа, простая поисковая фраза по конфигурации может не дать результата из-за универсальных механизмов БСП. В такой ситуации рекомендуется использовать инструмент отладки — Замер производительности.
Разберем алгоритм отладки по шагам:
УправлениеПечатью, модуля менеджера документа или модуля объекта внешней печатной формы.Частая проблема при создании внешних печатных форм (ВПФ) заключается в том, что в окне просмотра печатного документа выводится стандартный заголовок «Печать документа», тогда как для встроенных форм отображается представление объекта (например, «Увольнение № 0000-000001 от 15.08.2026»).
Проанализируем способы решения этой задачи внутри модуля объекта внешней обработки.
Самый простой и эффективный способ — явное заполнение свойства Заголовок у формируемого табличного документа. Именно это значение подсистема печати БСП использует для наименования вкладки или окна просмотра.
// В модуле объекта внешней печатной формы
Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт
// Получаем макет и формируем табличный документ
ТабличныйДокумент = СформироватьПечатнуюФорму(МассивОбъектов[0]);
// Задаем заголовок окна печати
ТабличныйДокумент.Заголовок = Строка(МассивОбъектов[0]);
// Выводим результат в коллекцию
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
КоллекцияПечатныхФорм,
"МояВнешняяПечатнаяФорма",
"Мое представление макета",
ТабличныйДокумент
);
КонецПроцедуры
При вызове функции УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию() третий параметр отвечает за представление макета. Если передать туда динамически сформированное представление документа, оно будет использовано механизмом БСП:
УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(
КоллекцияПечатныхФорм,
ИдентификаторКоманды,
Строка(СсылкаНаДокумент), // Заголовок печатной формы
ТабличныйДокумент
);
В экспортную процедуру Печать передается служебная структура ПараметрыВывода. Вы можете явно переопределить заголовок формы просмотра через эту структуру:
ПараметрыВывода.СистемныеПоля.Вставить("ЗаголовокФормы", Строка(СсылкаНаДокумент));
Таким образом, понимание работы подсистемы УправлениеПечатью из БСП позволяет быстро находить алгоритмы формирования макетов в типовых конфигурациях 1С (ЗУП, ERP, КА, БП) и гибко настраивать поведение внешних печатных форм.