К статье
Практический материал

Разработка и Конфигурация · 9 мин

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

Где искать печатные формы в конфигураторе 1С 8.3: макеты объектов, общие макеты, внешние печатные формы и команды печати. Пошаговые инструкции и ответы на вопросы.

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

Конфигуратор показывает структуру метаданных в виде дерева, и печатные формы там представлены двумя сущностями: макетом (шаблон документа для вывода на печать) и программным кодом, который заполняет этот макет данными. Найти только макет недостаточно — чтобы внести изменения, нужно понимать, какая процедура его формирует.

Ниже разобраны все типовые места хранения печатных форм, способы быстрого поиска нужного макета и безопасный порядок его изменения.

Макеты внутри объектов метаданных

Самое частое расположение печатной формы — внутри самого объекта. Откройте конфигуратор, разверните ветку «Документы» (или «Справочники»), найдите нужный объект и раскройте его. Внутри будет подветка «Макеты» — именно там хранятся табличные документы, которые служат шаблонами печати: счета, накладные, акты.

Двойной щелчок по макету открывает его в редакторе табличного документа. Здесь видны области, параметры в фигурных скобках вида {НомерДокумента} и статический текст. Менять текст можно прямо в ячейках, но параметры трогать стоит только понимая, откуда они заполняются в коде.

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

Общие макеты и макеты в общих модулях

Вторая типичная локация — ветка «Общие → Общие макеты» в корне дерева конфигурации. Туда разработчики выносят формы, которые используются несколькими объектами сразу: универсальные передаточные документы, доверенности, типовые бланки. В типовых конфигурациях здесь может быть несколько десятков макетов, поэтому удобнее искать по имени.

Имена макетов обычно говорящие: «МакетСчетФактура», «МакетТОРГ12» и подобные. Если имя неочевидное, помогает полнотекстовый поиск: меню «Правка → Глобальный поиск» с включённым поиском по макетам позволяет найти фрагмент текста из печатной формы, например «Грузополучатель».

Как найти макет через код формирования печати

Надёжный способ найти нужную форму — идти от кнопки печати. В режиме предприятия посмотрите, как называется команда в меню «Печать» документа. Затем в конфигураторе выполните глобальный поиск по этому названию — так вы найдёте процедуру, которая формирует печатную форму.

В типовых конфигурациях код печати чаще всего находится в модуле менеджера объекта: правый клик по документу → «Открыть модуль менеджера». Ищите процедуры с именами вида Печать, СформироватьПечатнуюФорму, ДобавитьКомандуПечати. Внутри процедуры будет строка получения макета, например ПолучитьМакет("МакетНакладная") — это и есть точное имя искомого макета.

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

Как найти печатную форму от кнопки до макета
  1. 1
    В режиме предприятия откройте документ и запомните точное название пункта в меню «Печать».
  2. 2
    В конфигураторе выполните глобальный поиск (Ctrl+Shift+F) по этому названию по всей конфигурации.
  3. 3
    Перейдите к найденной процедуре печати и найдите в ней вызов ПолучитьМакет или ПолучитьОбщийМакет.
  4. 4
    Откройте указанный макет: в объекте (ветка Макеты) или в Общих макетах.
  5. 5
    Проверьте, что область макета, которую вы собираетесь править, реально выводится в коде процедуры.

Внешние и дополнительные печатные формы

Не все печатные формы живут в конфигураторе. Многие организации подключают внешние печатные формы — файлы с расширением .epf, которые хранятся в базе данных, а не в метаданных. Их вы не найдёте в дереве конфигурации, как бы долго ни искали.

В типовых конфигурациях список таких форм открывается в режиме предприятия: «Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки». Там видно, к каким документам привязана каждая форма, и можно открыть сам файл обработки. Чтобы посмотреть её макет, файл сохраняют на диск и открывают через «Файл → Открыть» в конфигураторе.

Признак того, что форма внешняя: в меню «Печать» документа она появляется в блоке «Дополнительные печатные формы», а глобальный поиск по её названию в конфигураторе не даёт результатов.

Где искать форму: сравнение вариантов

Макет объекта

Подходит для печатных форм, уникальных для одного документа. Ищите в ветке объекта → Макеты.

Общий макет

Форма используется несколькими объектами или является типовым бланком. Ищите в Общие → Общие макеты.

Внешняя обработка (.epf)

Форма подключена без изменения конфигурации. Ищите в справочнике дополнительных отчетов и обработок в режиме предприятия.

Безопасное изменение печатной формы

Перед любой правкой сделайте копию: выгрузите конфигурацию в файл или хотя бы сохраните исходный макет через «Файл → Сохранить копию». Это позволит вернуться к рабочему варианту, если изменение сломает печать.

Правьте только статический текст и оформление, пока не разобрались с параметрами. Удаление или переименование параметра {...} без правки кода приведёт к тому, что данные просто перестанут выводиться. Добавление нового параметра потребует изменения процедуры формирования — там должна появиться строка заполнения этого параметра.

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

Проверка результата и типичные ошибки

После изменения обновите конфигурацию базы данных (F7), откройте тестовый документ и выведите печатную форму. Проверяйте не только внешний вид, но и заполнение всех параметров: пустое поле там, где раньше были данные, — признак того, что параметр переименован в макете, но не в коде.

Проверьте печать на документах с разными данными: длинными наименованиями, несколькими строками табличной части, пустыми реквизитами. Макет, выглядящий хорошо на одном примере, может «разъехаться» на другом из-за фиксированной высоты строк или узких колонок.

Типичные ошибки
01
Правка не того макета: у документа несколько похожих макетов, и изменения не видны, потому что выводится другой.
02
Переименование параметра только в макете: код продолжает заполнять старое имя, поле на печати пустое.
03
Поиск внешней формы в конфигураторе: дополнительные печатные формы хранятся в базе, а не в метаданных.
04
Забытое обновление конфигурации БД: макет изменён, но пользователи видят старую версию, пока не выполнено обновление (F7).
Итог

Что важно запомнить

Печатные формы ищите в трёх местах: макеты объекта, общие макеты и дополнительные обработки в режиме предприятия. Надёжнее всего идти от команды печати через глобальный поиск к процедуре и вызову ПолучитьМакет. Для типовых конфигураций предпочитайте внешние печатные формы прямой правке макетов.

Частые вопросы

Почему в конфигураторе не видно печатной формы, которая есть в меню «Печать»?

Скорее всего, это дополнительная (внешняя) печатная форма. Она хранится в базе данных как файл обработки и подключается через «Администрирование → Дополнительные отчеты и обработки» в режиме предприятия. В дереве метаданных конфигуратора её не существует.

Как открыть макет печатной формы на редактирование?

Найдите объект в дереве конфигурации, раскройте подветку «Макеты» и дважды щелкните по нужному макету — он откроется как табличный документ. Если объект на поддержке без возможности изменения, сначала настройте правила поддержки или используйте внешнюю форму.

Чем макет отличается от печатной формы?

Макет — это шаблон: статический текст, области и параметры. Печатная форма — результат: макет, заполненный данными конкретного документа программным кодом. Изменяя макет, вы меняете шаблон; сами данные подставляет процедура в модуле.

Изменил макет, но на печати ничего не поменялось. Что не так?

Проверьте три вещи: выполнено ли обновление конфигурации базы данных (F7), тот ли это макет, который реально вызывается в коде печати, и не выводится ли на самом деле внешняя печатная форма из дополнительных обработок.

Можно ли изменить печатную форму без снятия конфигурации с поддержки?

Да, через механизм внешних печатных форм: создаётся обработка .epf с макетом и экспортными процедурами по формату БСП, затем она регистрируется в списке дополнительных отчетов и обработок. Конфигурация при этом остаётся полностью на поддержке.

Как найти макет, если известен только текст с печатной формы?

Используйте глобальный поиск (Правка → Глобальный поиск) по уникальной фразе с бланка, включив поиск по всем файлам конфигурации и макетам. Поиск найдёт ячейку макета с этим текстом, и вы сразу увидите, какому объекту макет принадлежит.