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