Где найти макеты печатных форм в конфигураторе 1С, если их нет в дереве документа

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

При работе в режиме «1С:Предприятие» пользователи часто сталкиваются с ситуацией, когда при нажатии на кнопку Печать в форме документа выпадает список из множества вариантов. Однако, открыв этот же документ в конфигураторе, разработчик обнаруживает в ветке Макеты всего одну форму или вовсе пустой список. Это распространенная ситуация для современных конфигураций на базе Библиотеки стандартных подсистем (БСП). Давайте разберем по шагам, где именно «прячутся» остальные макеты и как их обнаружить для редактирования.

Анализируем модуль менеджера объекта

В современных конфигурациях 1С (УТ 11, БП 3.0, ERP, ЗУП 3) список печатных форм формируется динамически с помощью программного кода. Первым делом нам необходимо заглянуть в модуль менеджера документа. Для этого в дереве конфигурации кликните правой кнопкой мыши на документ и выберите пункт Открыть модуль менеджера.

Рассмотрим процедуру, которая отвечает за регистрацию команд печати. Обычно она называется ДобавитьКомандыПечати. Проанализируем её структуру:


Процедура ДобавитьКомандыПечати(КомандыПечати) Экспорт
	
	// Пример добавления команды печати
	КомандаПечати = КомандыПечати.Добавить();
	КомандаПечати.Идентификатор = "СчетНаОплату";
	КомандаПечати.Представление = НСтр("ru = 'Счет на оплату'");
	КомандаПечати.ПроверкаПроведенности = Ложь;
	
КонецПроцедуры

Если вы видите в этом коде идентификаторы, которые совпадают с названиями кнопок в пользовательском интерфейсе, значит, печатная форма регистрируется здесь. Далее следует найти процедуру Печать в этом же модуле. Именно в ней описывается, какой макет система должна вызвать. Часто там можно встретить обращение к другим объектам или общим модулям.

Проверяем использование общих макетов

Если макет используется в нескольких различных документах (например, это стандартная форма ТОРГ-12, УПД или Счет-фактура), разработчики 1С выносят его в общую ветку, чтобы не дублировать данные. Проанализируем ветку дерева конфигурации Общие -> Общие макеты.

Часто в коде формирования печатной формы можно встретить конструкцию типа:

УправлениеПечатью.МакетОбщий("ПФ_MXL_УниверсальныйПередаточныйДокумент")

В этом случае правки нужно вносить именно в общем макете, но будьте осторожны: изменения отразятся на всех документах, которые используют эту форму.

Поиск во внешних отчетах и обработках

Одна из наиболее вероятных причин появления «лишних» пунктов в меню печати — это использование механизма Дополнительных отчетов и обработок. В режиме «Предприятие» перейдем в раздел Администрирование -> Печатные формы, отчеты и обработки -> Дополнительные отчеты и обработки. Для быстрого извлечения файлов на диск можно использовать обработку для выгрузки дополнительных отчетов и обработок.

Если в открывшемся списке вы видите названия, совпадающие с вашими вариантами печати, значит, макет находится внутри внешней обработки. Чтобы его получить, выполните следующие действия:

  1. Выберите нужную обработку в списке.
  2. Нажмите кнопку Выгрузить в файл.
  3. Откройте полученный .epf файл в конфигураторе.
  4. Перейдите в ветку Макеты внутри этой обработки.

Изучение расширений конфигурации

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

Регистр сведений «Макеты печатных форм»

В БСП существует механизм, позволяющий пользователям редактировать макеты без участия программиста прямо в пользовательском интерфейсе. Выясним, не была ли создана «пользовательская версия» макета. Для этого в режиме «Предприятие» перейдите в Администрирование -> Печатные формы, отчеты и обработки -> Макеты печатных форм.

Если в списке напротив макета стоит значок «отредактированного» (обычно это синий карандаш), значит, система использует версию из информационной базы, а не из конфигуратора. Чтобы увидеть оригинал или внести изменения, которые подхватит конфигуратор, нужно понимать, что приоритет всегда у макета из этого списка. Для работы с этим механизмом пригодится инструкция по редактированию печатных форм в режиме пользователя.

Использование глобального поиска

Если вышеуказанные способы не помогли, воспользуемся проверенным методом — Глобальным поиском (Ctrl+Shift+F). Введите точное название кнопки печати, которую вы видите в интерфейсе, в кавычках. Например, "Заказ на сборку (внутренний)".

Разберем результаты поиска:

Таким образом, мы выяснили, что отсутствие макета в основной ветке документа — это не ошибка, а следствие гибкой архитектуры 1С. Проанализировав Модуль менеджера, Общие макеты и Внешние обработки, вы обязательно найдете искомый источник печатной формы.

← На главную