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

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

Как редактировать внешние печатные формы в 1С

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

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

Редактирование внешней печатной формы выполняется в конфигураторе 1С: пользователь открывает файл обработки, правит макет табличного документа и при необходимости программный код формирования печати. Для простых правок (текст, шапка, подписи) достаточно базовых навыков работы с макетами; для изменения логики заполнения потребуется понимание встроенного языка 1С.

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

Как устроена внешняя печатная форма и где она хранится

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

Подключённые формы хранятся в справочнике «Дополнительные отчеты и обработки» (раздел «Администрирование» — «Печатные формы, отчеты и обработки»). Сам файл обработки сохраняется в базе данных, поэтому после подключения исходный файл на диске можно не хранить — но для редактирования удобнее держать рабочую копию.

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

Что понадобится для редактирования

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

Дополнительно потребуется тестовая база или копия рабочей базы. Прямая проверка изменённой формы на рабочих данных допустима только для косметических правок макета; любые изменения кода сначала проверяют на копии. Убедитесь, что у вас есть права на добавление обработок в справочник «Дополнительные отчеты и обработки» — обычно это роль администратора или настройщика печатных форм.

Как открыть внешнюю печатную форму в конфигураторе

Запустите конфигуратор и откройте файл через меню «Файл» — «Открыть», указав сохранённый .epf. Откроется окно структуры обработки: в нём видны макеты, формы и модуль объекта. Если конфигурация открыта в конфигураторе одновременно, обработка появится отдельным окном — это нормально, правки файла не затрагивают конфигурацию.

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

Порядок действий
  1. 1
    Сохраните обработку из справочника «Дополнительные отчеты и обработки» в файл на диск
  2. 2
    Сделайте резервную копию исходного файла
  3. 3
    Откройте файл в конфигураторе через «Файл» — «Открыть»
  4. 4
    Внесите правки в макет или модуль объекта
  5. 5
    Сохраните файл и проверьте его на тестовой базе
  6. 6
    Переподключите обновлённый файл в рабочей базе

Редактирование макета печатной формы

Макет — это табличный документ, разбитый на именованные области (шапка, строка таблицы, подвал). Чтобы открыть макет, разверните ветку «Макеты» в структуре обработки и дважды щёлкните по нужному элементу. Ячейки с параметрами выглядят как [НаименованиеОрганизации] — при формировании печати они заменяются реальными данными.

Изменение текстов, шапки и подписей

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

Добавление и удаление параметров

Если нужно вывести новое поле (например, ИНН покупателя в отдельной строке), впишите в ячейку параметр в квадратных скобках, задайте его имя в свойствах ячейки (тип заполнения — «Параметр»), а затем в модуле объекта найдите место заполнения параметров области и добавьте строку вида Область.Параметры.ИННПокупателя = ДанныеДокумента.ИНН;. Без заполнения в коде параметр выведется пустым.

Типичные ошибки
01
Параметр добавлен в макет, но не заполняется в коде — на печати выводится пустая строка или текст параметра
02
Удалена именованная область макета, которая вызывается в модуле — при печати возникает ошибка «область не найдена»
03
Изменена ширина колонок без проверки альбомной ориентации — таблица обрезается при выводе на принтер
04
Правки внесены в файл, но в базе не обновили подключённую обработку — пользователи видят старую форму

Редактирование программного кода формы

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

Типовые задачи в коде: изменить состав выборки (добавить поле в запрос), поменять порядок вывода строк, переопределить формат даты или суммы прописью. Работайте аккуратно: не удаляйте существующие строки заполнения параметров, пока не убедитесь, что соответствующие параметры убраны из макета. Используйте синтакс-проверку модуля (кнопка с галочкой на панели инструментов) перед сохранением.

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

Подключение изменённой формы и проверка результата

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

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

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

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

Заполнение параметров
Норма

Все поля содержат данные документа, нет пустых квадратных скобок

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

На печати виден текст вида [ИмяПараметра] или пустые строки

Многострочный документ
Норма

Табличная часть переносится на вторую страницу с повтором шапки

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

Строки обрезаются или подвал накладывается на таблицу

Регистрация в справочнике
Норма

Форма доступна в меню «Печать» нужного документа

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

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

Альтернативы и ограничения подхода

Не всегда нужно редактировать файл обработки. Если требуется простая правка типовой формы, а конфигурация находится на полной поддержке, иногда проще скопировать типовой макет во внешнюю обработку с нуля через механизм БСП. Для управляемых форм старых конфигураций (например, «1С:Бухгалтерия 8» ред. 3.0) многие правки решаются именно внешними формами — это штатный путь.

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

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

Правка существующей внешней формы

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

Создание новой формы на основе типовой

Подходит при сильном расхождении с типовым бланком. Требует больше времени и знания механизма печати БСП.

Изменение макета внутри конфигурации

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

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

Часто задаваемые вопросы

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

Нет, файл .epf открывается только в конфигураторе 1С. В режиме «Предприятие» доступна лишь замена файла в справочнике. Если конфигуратора нет, правки может внести специалист с установленной платформой той же версии.

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

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

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

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

Нарушит ли подключение внешней печатной формы обновление конфигурации?

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

Как добавить в форму логотип компании?

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

Можно ли одной обработкой печатать формы для нескольких видов документов?

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

Итог

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

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