Документы и Печать · 10 мин
Как привязать внешнюю печатную форму к документу 1С
Пошаговая инструкция: как подключить и привязать внешнюю печатную форму к документу в 1С через механизм дополнительных отчетов и обработок.
Внешняя печатная форма — это файл с расширением .epf, который позволяет печатать документы 1С в нестандартном виде: с логотипом, измененной структурой, дополнительными полями или под требования конкретного контрагента. Привязка такой формы к конкретному виду документа избавляет пользователей от ручного выбора файла при каждой печати.
В типовых конфигурациях на базе Библиотеки стандартных подсистем (УТ 11, ERP, Бухгалтерия 3.0, КА 2) привязка выполняется через подсистему «Дополнительные отчеты и обработки» без изменения конфигурации и снятия её с поддержки. Это безопасный способ: типовой код не затрагивается, обновления проходят штатно.
Ниже разобран полный цикл: от проверки готовности файла обработки до назначения формы конкретному документу, проверки результата и устранения типовых проблем.
Проверьте, что обработка подходит для подключения
Прежде чем привязывать форму, убедитесь, что файл .epf написан именно как внешняя печатная форма для механизма дополнительных отчетов и обработок. В модуле обработки должна быть экспортная функция СведенияОВнешнейОбработке(), возвращающая структуру с видом «ПечатнаяФорма» и перечнем назначений (объектов, к которым форма может подключаться).
Если обработка написана под старый механизм «Внешние печатные формы» (для конфигураций на обычных формах, например УТ 10.3 или УПП 1.3), она подключается иначе — через справочник «Внешние обработки» с заполнением табличной части «Принадлежность». Такие файлы в управляемом приложении работать не будут.
Простая проверка: откройте файл через «Файл → Открыть» в режиме предприятия. Если появилось сообщение о том, что обработка предназначена для подключения через дополнительные отчеты и обработки, — всё в порядке. Если форма открылась как самостоятельная, но в ней нет логики печати из документа, привязка напрямую невозможна без доработки кода.
Включите механизм дополнительных отчетов и обработок
Во многих базах механизм уже включен, но при чистой установке конфигурации он может быть отключен. Перейдите в раздел «Администрирование → Печатные формы, отчеты и обработки» и установите флаг «Дополнительные отчеты и обработки». Без этого флага одноименный пункт меню и кнопка загрузки файла будут недоступны.
Для выполнения этой настройки нужны права администратора или роль «Добавление и изменение дополнительных отчетов и обработок». Если флаг не сохраняется или раздел не открывается, проверьте права своей учетной записи у администратора базы.
Дополнительно проверьте настройку безопасности: в параметрах механизма может быть включен запрет на открытие внешних файлов без предупреждения. Это нормальная защита — при загрузке система просто попросит подтвердить доверие к файлу.
Загрузите файл печатной формы в базу
Откройте «Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки» и нажмите «Создать» либо «Добавить из файла» (название кнопки зависит от версии библиотеки). Укажите файл .epf на диске. Система прочитает сведения из функции СведенияОВнешнейОбработке() и заполнит карточку: наименование, версию, безопасный режим, вид обработки.
Если при загрузке появляется ошибка «Невозможно подключить дополнительный отчет из файла», чаще всего причина в том, что файл не содержит нужной функции сведений или написан под другую версию библиотеки. Такая обработка требует доработки разработчиком — самостоятельно исправить это настройкой нельзя.
- 1Включите флаг «Дополнительные отчеты и обработки» в разделе «Администрирование».
- 2Откройте список дополнительных отчетов и обработок, нажмите «Создать» / «Добавить из файла».
- 3Выберите файл .epf и подтвердите загрузку.
- 4В карточке обработки проверьте таблицу «Назначение»: там должен быть нужный вид документа.
- 5Опубликуйте обработку командой «Опубликовать» и запишите карточку.
- 6Откройте документ и проверьте новую команду в меню «Печать».
Привяжите форму к конкретному виду документа
Именно на этом шаге выполняется собственно привязка. В карточке загруженной обработки найдите таблицу «Назначение» (или «Размещение»). В ней перечислены объекты конфигурации, для которых доступна команда печати. Если разработчик указал назначения в коде, список заполнится автоматически — тогда достаточно проверить, что нужный документ присутствует.
Если таблица пуста или нужного документа нет, добавьте строку вручную: нажмите «Добавить» и выберите из списка, например, «Документ РеализацияТоваровУслуг». Одна обработка может быть привязана сразу к нескольким видам документов — например, к реализации и к счету-фактуре.
Публикация и быстрый доступ
После заполнения назначений выполните команду «Опубликовать» (или установите соответствующий статус в карточке). Пока обработка находится в состоянии «Отключена» или «Не опубликована», команда печати пользователям не показывается. Затем запишите и закройте карточку.
Если документа нет в списке выбора
Это означает, что для данного вида документа в конфигурации не подключен программный интерфейс дополнительных печатных форм. В типовых конфигурациях он есть у большинства торговых и учетных документов, но может отсутствовать у редких или самописных объектов. В таком случае привязка возможна только доработкой конфигурации разработчиком.
Проверьте результат на реальном документе
Откройте любой проведенный документ того вида, к которому привязана форма. Нажмите кнопку «Печать» — в выпадающем списке рядом с типовыми формами должна появиться новая команда с названием из карточки обработки. Выберите её и убедитесь, что табличный документ формируется без ошибок и содержит корректные данные.
Проверяйте на документе с заполненными позициями, ценами и контрагентом: пустой или непроведенный документ может не показать ошибки в запросах обработки. Если форма строится с нулевыми суммами или пустыми строками, проблема в коде обработки, а не в привязке.
Как проверить результат
Новая команда видна и называется как в карточке обработки
Команды нет — обработка не опубликована или документ не в списке назначений
Табличный документ строится, данные соответствуют документу
Ошибка выполнения или пустая форма — проблема в коде .epf
Команда видна всем, кому назначены права
У части пользователей команда скрыта — не хватает ролей или настроек доступа
Где привязать форму в старых конфигурациях на обычных формах
В конфигурациях вроде УТ 10.3, УПП 1.3 или Бухгалтерии 2.0 используется справочник «Внешние обработки» (раздел «Сервис»). Создайте новый элемент, выберите вид «Печатная форма», загрузите файл и в табличной части «Принадлежность печатной формы» добавьте строку: документ, представление кнопки, признак замены типовой формы.
Флаг «Заменять печатную форму» определяет поведение: если он установлен, внешняя форма подменяет типовую при нажатии стандартной кнопки печати; если снят — появляется отдельная кнопка в меню. Это удобно, когда внешняя форма должна стать основной для всех пользователей.
Обновление и замена привязанной формы
Когда разработчик присылает новую версию .epf, не создавайте вторую обработку. Откройте существующую карточку в списке дополнительных отчетов и обработок и выполните команду загрузки из файла (обычно «Заменить на внешний файл» или аналогичную). Привязки и настройки сохранятся, а пользователи сразу получат обновленную форму.
Если новая версия изменила состав назначений в коде, проверьте таблицу «Назначение» после замены: иногда список перезаполняется, и ранее добавленные вручную документы нужно внести повторно.
Что важно запомнить
Привязка выполняется в карточке дополнительной обработки через таблицу «Назначение» и публикацию. Файл должен быть написан под механизм дополнительных отчетов и обработок вашей конфигурации. Результат всегда проверяйте печатью реального проведенного документа.
Частые вопросы
Почему команда печати не появляется в документе после загрузки файла?
Чаще всего обработка не опубликована, документ отсутствует в таблице «Назначение» или у пользователя нет прав на использование дополнительных обработок. Проверьте эти три пункта по порядку — в подавляющем большинстве случаев причина в одном из них.
Можно ли привязать одну форму сразу к нескольким документам?
Да. Добавьте в таблицу «Назначение» столько строк, сколько нужно, указав разные виды документов. Условие одно: код обработки должен корректно работать с данными каждого из этих документов, иначе при печати возникнут ошибки или пустые поля.
Как сделать внешнюю форму формой по умолчанию вместо типовой?
В конфигурациях на обычных формах для этого есть флаг «Заменять печатную форму». В управляемом приложении прямой замены нет: внешняя команда добавляется в меню «Печать» рядом с типовыми, и пользователь выбирает её вручную. Полная подмена типовой кнопки требует доработки конфигурации.
Пропадет ли привязка при обновлении конфигурации?
Нет. Дополнительные отчеты и обработки хранятся в данных базы, а не в конфигурации, поэтому штатное обновление их не затрагивает. Риск возникает только если после обновления изменились имена реквизитов документа, к которым обращается код формы, — тогда обработку нужно актуализировать.
Что делать, если при печати возникает ошибка «Метод объекта не обнаружен»?
Это признак несовместимости обработки с версией конфигурации: код обращается к процедуре или реквизиту, которых нет в вашей базе. Самостоятельно настройкой это не исправить — передайте текст ошибки разработчику формы для адаптации.
Можно ли ограничить доступ к внешней печатной форме для части пользователей?
Да, штатными средствами прав доступа: использование дополнительных обработок регулируется профилями групп доступа. Настройте профиль так, чтобы конкретная обработка была доступна только нужным сотрудникам, либо используйте механизм разграничения доступа к дополнительным отчетам и обработкам, если он включен в вашей конфигурации.