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

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

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

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

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

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

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

Где хранится внешняя печатная форма и как её найти

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

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

Подготовка: резервная копия и тестовая база

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

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

Как открыть обработку и изменить макет

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

Макет состоит из именованных областей (шапка, строка табличной части, подвал) и ячеек трёх типов: статичный текст, параметр (подставляется из кода) и шаблон (текст с встроенными параметрами в квадратных скобках). Чтобы изменить надпись, достаточно отредактировать текст ячейки. Чтобы вывести новое поле, добавьте ячейку с типом «Параметр» и задайте имя — его потом нужно заполнить в коде.

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

Порядок редактирования макета
  1. 1
    Скопируйте исходный файл .epf в отдельную папку
  2. 2
    Откройте файл в конфигураторе через «Файл → Открыть»
  3. 3
    Найдите нужный макет в структуре обработки
  4. 4
    Измените текст, оформление или добавьте параметры в ячейки
  5. 5
    Сохраните обработку и проверьте печать на тестовом документе

Как изменить программный код формы

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

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

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

bsl
Процедура ДобавитьПоле(ТабДок, Макет, Выборка)
    Область = Макет.ПолучитьОбласть("Шапка");
    Область.Параметры.НашеНовоеПоле = Выборка.Комментарий;
    ТабДок.Вывести(Область);
КонецПроцедуры

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

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

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

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

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

Форма открывается из документа
Норма

Печатная форма формируется без ошибок

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

Сообщение об ошибке или пустое окно

Новые поля
Норма

Данные выводятся в нужных ячейках

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

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

Вёрстка
Норма

Текст не обрезается, страницы разрываются корректно

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

Налезание текста, «уехавшие» колонки

Регистрация обработки
Норма

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

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

Обработка пропала из списка после загрузки

Типичные ошибки и ограничения

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

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

Типичные ошибки
01
Правка рабочего файла без копии — при ошибке нельзя быстро откатиться
02
Изменение макета без обновления кода — новые параметры остаются пустыми
03
Забыли переподключить файл в справочнике — в базе работает старая версия
04
Изменение регламентированных полей счёта-фактуры или УПД — риск претензий при проверке
05
Проверка только на экране — на бумаге вёрстка может отличаться

Когда лучше обратиться к специалисту

Самостоятельно разумно править статичный текст, оформление, положение элементов и добавлять простые поля из документа. Если нужно менять структуру запроса, объединять данные из нескольких источников, реализовывать условное форматирование или сложную нумерацию страниц — безопаснее привлечь разработчика 1С.

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

Итог

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

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

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

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

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

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

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

Что делать, если форма после правок выдаёт ошибку?

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

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

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

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

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