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

Документы и Печать · 10 мин

Как привязать внешнюю печатную форму к документу 1С

Пошаговая инструкция: как подключить и привязать внешнюю печатную форму к документу в 1С через механизм дополнительных отчетов и обработок.

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

В типовых конфигурациях на базе Библиотеки стандартных подсистем (УТ 11, ERP, Бухгалтерия 3.0, КА 2) привязка выполняется через подсистему «Дополнительные отчеты и обработки» без изменения конфигурации и снятия её с поддержки. Это безопасный способ: типовой код не затрагивается, обновления проходят штатно.

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

Проверьте, что обработка подходит для подключения

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

Если обработка написана под старый механизм «Внешние печатные формы» (для конфигураций на обычных формах, например УТ 10.3 или УПП 1.3), она подключается иначе — через справочник «Внешние обработки» с заполнением табличной части «Принадлежность». Такие файлы в управляемом приложении работать не будут.

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

Включите механизм дополнительных отчетов и обработок

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

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

Дополнительно проверьте настройку безопасности: в параметрах механизма может быть включен запрет на открытие внешних файлов без предупреждения. Это нормальная защита — при загрузке система просто попросит подтвердить доверие к файлу.

Загрузите файл печатной формы в базу

Откройте «Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки» и нажмите «Создать» либо «Добавить из файла» (название кнопки зависит от версии библиотеки). Укажите файл .epf на диске. Система прочитает сведения из функции СведенияОВнешнейОбработке() и заполнит карточку: наименование, версию, безопасный режим, вид обработки.

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

Порядок загрузки и привязки
  1. 1
    Включите флаг «Дополнительные отчеты и обработки» в разделе «Администрирование».
  2. 2
    Откройте список дополнительных отчетов и обработок, нажмите «Создать» / «Добавить из файла».
  3. 3
    Выберите файл .epf и подтвердите загрузку.
  4. 4
    В карточке обработки проверьте таблицу «Назначение»: там должен быть нужный вид документа.
  5. 5
    Опубликуйте обработку командой «Опубликовать» и запишите карточку.
  6. 6
    Откройте документ и проверьте новую команду в меню «Печать».

Привяжите форму к конкретному виду документа

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

Если таблица пуста или нужного документа нет, добавьте строку вручную: нажмите «Добавить» и выберите из списка, например, «Документ РеализацияТоваровУслуг». Одна обработка может быть привязана сразу к нескольким видам документов — например, к реализации и к счету-фактуре.

Публикация и быстрый доступ

После заполнения назначений выполните команду «Опубликовать» (или установите соответствующий статус в карточке). Пока обработка находится в состоянии «Отключена» или «Не опубликована», команда печати пользователям не показывается. Затем запишите и закройте карточку.

Если документа нет в списке выбора

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

Проверьте результат на реальном документе

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

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

Контрольные точки

Как проверить результат

Команда в меню «Печать» документа
Норма

Новая команда видна и называется как в карточке обработки

Тревожный признак

Команды нет — обработка не опубликована или документ не в списке назначений

Формирование печатной формы
Норма

Табличный документ строится, данные соответствуют документу

Тревожный признак

Ошибка выполнения или пустая форма — проблема в коде .epf

Доступ у других пользователей
Норма

Команда видна всем, кому назначены права

Тревожный признак

У части пользователей команда скрыта — не хватает ролей или настроек доступа

Где привязать форму в старых конфигурациях на обычных формах

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

Флаг «Заменять печатную форму» определяет поведение: если он установлен, внешняя форма подменяет типовую при нажатии стандартной кнопки печати; если снят — появляется отдельная кнопка в меню. Это удобно, когда внешняя форма должна стать основной для всех пользователей.

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

Обновление и замена привязанной формы

Когда разработчик присылает новую версию .epf, не создавайте вторую обработку. Откройте существующую карточку в списке дополнительных отчетов и обработок и выполните команду загрузки из файла (обычно «Заменить на внешний файл» или аналогичную). Привязки и настройки сохранятся, а пользователи сразу получат обновленную форму.

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

Итог

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

Привязка выполняется в карточке дополнительной обработки через таблицу «Назначение» и публикацию. Файл должен быть написан под механизм дополнительных отчетов и обработок вашей конфигурации. Результат всегда проверяйте печатью реального проведенного документа.

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

Почему команда печати не появляется в документе после загрузки файла?

Чаще всего обработка не опубликована, документ отсутствует в таблице «Назначение» или у пользователя нет прав на использование дополнительных обработок. Проверьте эти три пункта по порядку — в подавляющем большинстве случаев причина в одном из них.

Можно ли привязать одну форму сразу к нескольким документам?

Да. Добавьте в таблицу «Назначение» столько строк, сколько нужно, указав разные виды документов. Условие одно: код обработки должен корректно работать с данными каждого из этих документов, иначе при печати возникнут ошибки или пустые поля.

Как сделать внешнюю форму формой по умолчанию вместо типовой?

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

Пропадет ли привязка при обновлении конфигурации?

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

Что делать, если при печати возникает ошибка «Метод объекта не обнаружен»?

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

Можно ли ограничить доступ к внешней печатной форме для части пользователей?

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