В 1С:Предприятие существует два основных способа формирования печатных форм: встроенные (внутренние) печатные формы и внешние печатные формы. Внешняя обработка позволяет использовать внешние приложения (обычно MS Word, Excel, PDF‑редакторы) для создания документов, что особенно удобно при работе с договорами, где требуется гибкая стилизация, подписи, печать в формате, совместимом с юридическими требованиями.
Что такое внешняя печатная форма?
Внешняя печатная форма – это отдельный файл (обычно .docx, .xlsx, .pdf) с макетом документа, в который 1С передаёт данные через специальные поля (шаблоны). В 1С это реализуется через подсистему «Дополнительные отчёты и обработки», где каждая внешняя форма регистрируется как обработка.
Преимущества внешних печатных форм
- Гибкая стилизация – можно использовать любые шаблоны Word/Excel.
- Поддержка подписи и печати в формате PDF.
- Отделение логики формирования от бизнес‑логики.
- Лёгкая интеграция с внешними сервисами (например, электронная подпись).
Как программно сформировать внешнюю печатную форму в 1С
Для печати договора из произвольной формы по кнопке обычно используют метод ПечатьПоВнешнемуИсточнику из общего модуля ДополнительныеОтчётыИОбработки. Ниже приведён пошаговый пример.
- Создайте шаблон Word (например, «Договор_трудовой.docx»). Вставьте в него шаблонные поля 1С:
{#ИмяПользователя#}, {#Дата#}, {#Сумма#} и т.д.
Эти поля будут заменены значениями из 1С при печати. - Зарегистрируйте шаблон как внешнюю обработку в подсистеме «Дополнительные отчёты и обработки».
В разделе «Обработки» создайте новую запись, укажите тип «Внешняя печатная форма», укажите путь к файлу шаблона и задайте команду печати (например, «Печать договора»). - Добавьте команду печати в нужный документ (например, в документ «Приём на работу»).
В справочнике «Команды печати» укажите имя команды, тип «Внешняя печатная форма», и выберите созданную обработку. - В коде документа вызовите печать:
// Внутри процедуры печати документа ДополнительныеОтчётыИОбработки.ПечатьПоВнешнемуИсточнику( "Печать договора", // имя команды печати "ПриёмНаРаботу", // имя документа "Документ" // тип объекта );
- Проверьте работу – нажмите кнопку печати в интерфейсе документа, убедитесь, что открывается Word с заполненным шаблоном и готов к печати/сохранению.
Пример: печать трудового договора в 1С:ЗиКГУ 3
В конфигурации 1С:ЗиКГУ 3 (и аналогичных) часто требуется печатать трудовые договоры для учителей и педагогов. Внешняя обработка позволяет:
- Автоматически подставлять ФИО, должность, дату начала работы.
- Вставлять табличный расчёт зарплаты.
- Добавлять подпись руководителя и печать.
Шаблон Word может включать блоки «Параметры договора» и «Таблица расчётов». После регистрации в «Дополнительные отчёты и обработки» команда печати «Печать договора» будет доступна в меню документа «Приём на работу».
Пример: печать договора купли‑продажи в 1С:ERP Управление предприятием 2
Для печати договора поставки со спецификацией из документа «Заказ клиента» в конфигурации ERP 2 можно использовать схему:
- Создать шаблон Word «Договор_поставки.docx» с полями: {#НомерЗаказа#}, {#Дата#}, {#СписокТоваров#}.
- В справочнике «Дополнительные отчёты и обработки» добавить обработку «Печать договора поставки».
- В справочнике «Команды печати» документа «Заказ клиента» добавить команду «Печать договора поставки».
- В коде документа вызвать:
ДополнительныеОтчётыИОбработки.ПечатьПоВнешнемуИсточнику( "Печать договора поставки", "ЗаказКлиента", "Документ" );
Как подключить внешнюю печатную форму к базе
После создания и регистрации обработки, она автоматически появляется в меню «Печать» всех документов, где добавлена команда. Пользователь может:
- Выбрать «Печать» → «Печать договора».
- Открыть Word, внести дополнительные правки (если нужно).
- Сохранить как PDF и отправить по электронной почте.
Трюки и советы
- Поля шаблона – используйте двойные фигурные скобки {#ПОЛЕ#} для простоты замены.
- Для табличных данных (спецификация товаров) используйте шаблонные таблицы в Word и передавайте массивы из 1С.
- Если требуется электронная подпись, можно добавить в шаблон поле «Подпись» и вызывать API 1С для подписи PDF.
- При работе с несколькими конфигурациями (ERP 2, УТ 11, Бухгалтерия ПР) убедитесь, что версии 1С совместимы с используемыми модулями.
- Для массовой печати (например, печать договоров для 100 сотрудников) можно написать отдельную обработку, которая перебирает записи и вызывает ПечатьПоВнешнемуИсточнику для каждой.
Внешняя обработка печати договоров в 1С предоставляет гибкость и удобство, позволяя использовать профессиональные шаблоны Word и интегрировать подписи, печати и другие требования. С помощью метода ПечатьПоВнешнемуИсточнику из модуля ДополнительныеОтчётыИОбработки можно быстро подключить любую внешнюю форму к любой точке бизнес‑процесса. Это решение экономит время, повышает качество документов и облегчает их дальнейшую обработку.