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

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

Как добавить печать в 1С 8.3 на документы

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

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

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

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

Какие существуют способы добавить печатную форму

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

Сравнение вариантов

Внешняя печатная форма (.epf)

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

Расширение конфигурации

Подходит, когда нужно изменить встроенную форму или добавить команду печати прямо в модуль. Конфигурация остаётся на поддержке, но требуется работа в конфигураторе.

Доработка конфигурации в конфигураторе

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

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

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

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

Порядок действий
  1. 1
    Откройте раздел «Администрирование» (в Бухгалтерии — «Администрирование → Печатные формы, отчеты и обработки», в УТ/ERP — «НСИ и администрирование → Печатные формы, отчеты и обработки»).
  2. 2
    Установите флажок «Дополнительные отчеты и обработки».
  3. 3
    Перейдите по появившейся ссылке «Дополнительные отчеты и обработки» — откроется список подключенных обработок.
  4. 4
    Если ссылки нет даже после установки флажка — проверьте права пользователя: нужно право «Добавление дополнительных отчетов и обработок» или полные права.

Если программа работает в клиент-серверном варианте и при открытии обработок появляется сообщение о запрете, уточните у администратора, не включён ли режим защиты от опасных действий. В этом режиме загрузка внешних файлов блокируется на уровне кластера серверов.

Способ 1: подключение внешней печатной формы

Это основной сценарий для типовых конфигураций. Понадобится файл внешней печатной формы с расширением .epf, созданный по правилам БСП (с функцией СведенияОВнешнейОбработке в модуле объекта).

Загрузка файла в программу

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

Настройка принадлежности и размещения

После загрузки откройте карточку обработки. Ключевой пункт — таблица «Принадлежность»: в ней перечислены виды документов, к которым привязана форма. Если разработчик задал их в файле, они появятся автоматически; если нет — добавьте нужные документы вручную, например «Счет на оплату покупателю» или «Реализация (акты, накладные, УПД)».

В разделе «Быстрый доступ» укажите пользователей или группы, которым форма будет доступна. В разделе «Разделы» — в каких разделах интерфейса появится команда. Сохраните карточку.

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

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

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

В выпадающем списке появилась новая команда с названием вашей формы

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

Команды нет — проверьте таблицу «Принадлежность» и права пользователя

Формирование формы
Норма

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

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

Ошибка выполнения или пустая форма — проблема в коде обработки, нужен разработчик

Предпросмотр перед печатью
Норма

Данные соответствуют открытому документу

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

Подставляются данные другого документа — ошибка в макете или параметрах обработки

Способ 2: добавление печати через расширение конфигурации

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

Откройте конфигуратор, перейдите в «Конфигурация → Расширения конфигурации» и создайте новое расширение с назначением «Дополнение». Затем добавьте в расширение нужные объекты: новый макет табличного документа, общий модуль с процедурой формирования печатной формы, а при необходимости — заимствуйте типовую команду печати документа и дополните её обработчик.

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

Способ 3: доработка конфигурации в конфигураторе

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

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

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

Как создать файл внешней печатной формы самостоятельно

Если готового .epf нет, его можно создать в конфигураторе. Проще всего взять за основу шаблон из состава БСП или любую работающую внешнюю печатную форму и заменить макет и код заполнения.

Обязательный минимум внешней печатной формы для БСП:

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

Пример фрагмента регистрации обработки:

bsl
Функция СведенияОВнешнейОбработке() Экспорт
	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке();
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиПечатнаяФорма();
	ПараметрыРегистрации.Назначение.Добавить("Документ.СчетНаОплатуПокупателю");
	Команда = ПараметрыРегистрации.Команды.Добавить();
	Команда.Представление = НСтр("ru = 'Счет на оплату (с печатью)'");
	Команда.Идентификатор = "СчетСПечатью";
	Команда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
	Возврат ПараметрыРегистрации;
КонецФункции

После написания кода проверьте синтаксис (Ctrl+F7 в модуле) и протестируйте обработку на копии базы до загрузки в рабочую.

Типичные ошибки и их устранение

Типичные ошибки
01
Форма загружена, но не видна в документе: не заполнена таблица «Принадлежность» в карточке обработки или у пользователя нет доступа в разделе «Быстрый доступ».
02
Загрузка файла запрещена: включён режим защиты от опасных действий в параметрах кластера или у пользователя нет права на добавление обработок.
03
Ошибка «Метод объекта не обнаружен» при печати: файл .epf не соответствует API БСП — устаревшая структура сведений о внешней обработке. Нужно актуализировать код под текущую версию конфигурации.
04
Печатная форма пропала после обновления: обычно это расширение, переставшее работать после изменения типовых объектов. Проверьте список расширений и журнал ошибок.
05
Форма печатается, но с данными другого документа: в макете неверно связаны параметры или в процедуре печати не очищается табличный документ между документами пакета.

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

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

Ограничения и границы самостоятельной работы

Загрузка готовой внешней печатной формы и настройка её размещения — задача, с которой справляется пользователь без навыков программирования. Создание нового .epf с нуля, работа с расширениями и доработка конфигурации требуют знания встроенного языка 1С и понимания структуры конфигурации.

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

Итог

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

Для типовой конфигурации используйте внешние печатные формы через «Дополнительные отчеты и обработки» — это безопасно и не мешает обновлениям. Расширение и конфигуратор — только при реальной необходимости и обязательно после резервной копии. Любой файл .epf сначала проверяйте на копии базы.

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

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

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

Почему новая форма не появилась в кнопке «Печать»?

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

Слетит ли внешняя печатная форма при обновлении конфигурации?

Нет, внешние обработки хранятся отдельно от конфигурации и при типовом обновлении сохраняются. Но если обновление изменило API БСП, старая обработка может перестать работать — тогда её код нужно актуализировать.

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

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

Как добавить одну форму сразу к нескольким видам документов?

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

Чем расширение лучше прямой доработки конфигурации?

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