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