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

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

Как в 1С изменить печатную форму счета на оплату

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

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

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

Ниже разобраны все три способа с конкретными шагами, условиями выбора и проверкой результата. Инструкции ориентированы на конфигурации на управляемых формах (БП 3.0, УТ 11, КА 2, ERP 2), где механизм дополнительных печатных форм встроен в подсистему БСП.

Какие способы изменения печатной формы существуют

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

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

Внешняя печатная форма (epf)

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

Расширение конфигурации

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

Правка макета в конфигураторе

Полный доступ к макету и коду печати. Минус: конфигурация снимается с полной поддержки, обновления усложняются.

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

Способ 1: подключение внешней печатной формы

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

Порядок действий
  1. 1
    Откройте Администрирование → Печатные формы, отчеты и обработки
  2. 2
    Включите флажок «Дополнительные отчеты и обработки»
  3. 3
    Перейдите по ссылке «Дополнительные отчеты и обработки» и нажмите «Добавить из файла»
  4. 4
    Выберите файл внешней печатной формы (.epf) и подтвердите загрузку
  5. 5
    В карточке обработки проверьте размещение: в списке должны быть документы «Счет на оплату покупателю» (и/или «Заказ клиента», если печать идет оттуда)
  6. 6
    Запишите, откройте счет и нажмите кнопку «Печать» — новая форма появится в списке

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

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

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

Макет счета — это табличный документ с именованными областями и параметрами. Чтобы его изменить, откройте файл .epf в конфигураторе: Файл → Открыть. В дереве обработки найдите макет (обычно называется «Макет» или «СчетЗаказ») и откройте его двойным щелчком.

Макет состоит из областей: шапка, строка товара, подвал и т.д. Ячейки с параметрами выглядят как [НаименованиеПолучателя] — в квадратных скобках. Чтобы изменить статичный текст, просто отредактируйте текст ячейки. Чтобы изменить выводимые данные, нужно править и макет, и код процедуры печати в модуле объекта обработки.

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

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

Способ 2: изменение через расширение конфигурации

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

Порядок работы: в конфигураторе откройте Конфигурация → Расширения конфигурации, создайте новое расширение. Затем добавьте в него обработчик команды печати или заимствуйте нужный модуль менеджера документа (например, модуль менеджера «СчетНаОплатуПокупателю») и переопределите процедуру печати с помощью аннотации &Вместо или &После. Макет можно скопировать из конфигурации в расширение и править уже там.

Этот способ требует понимания встроенного языка 1С и структуры БСП. Если вы не разработчик, безопаснее поручить эту задачу специалисту: ошибка в расширении может нарушить печать всех счетов, а не только измененной формы.

Способ 3: правка макета в конфигураторе напрямую

Прямое изменение типового макета — самый простой технически, но самый рискованный с точки зрения сопровождения вариант. Макет счета обычно находится в дереве конфигурации: Документы → СчетНаОплатуПокупателю → Макеты, либо в общих макетах (в УТ 11 и КА макеты печатных форм часто лежат в Общие → Макеты).

Чтобы получить возможность редактирования, включите возможность изменения: Конфигурация → Поддержка → Настройка поддержки → «Включить возможность изменения». После этого макет открывается на редактирование, и вы можете менять ячейки, картинки и параметры.

После правки макета обновите конфигурацию базы данных (F7) и проверьте печать на тестовом документе. Помните: если в ячейке макета был параметр, а вы заменили его статичным текстом, данные из документа в этом месте выводиться перестанут.

Как проверить результат после изменений

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

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

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

Форма появилась в списке печати документа
Норма

Новый пункт виден в меню «Печать» счета

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

Пункт отсутствует — проверьте назначение обработки и права

Данные подставляются из документа
Норма

Реквизиты, суммы и товары соответствуют документу

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

Пустые поля или данные другого документа — ошибка в параметрах макета

Многострочная часть
Норма

Все строки товаров выведены, итоги сходятся

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

Строки обрезаны или итог не совпадает — проблема с областью строки

Предпросмотр и печать на бумаге
Норма

Все поля в пределах страницы, логотип не искажен

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

Текст уходит за поля, картинка растянута — правьте размеры ячеек

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

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

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

Если счет формируется не из документа «Счет на оплату», а из «Заказа клиента» или «Реализации товаров и услуг» (так бывает в УТ и КА), изменять нужно печатную форму именно того документа, из которого пользователи нажимают «Печать». Назначение внешней обработки в этом случае указывается на соответствующий вид документа.

Маршрут решения

Как выбрать действие

Нужно добавить логотип, текст или переставить блоки, программиста нетИспользуйте внешнюю печатную форму и правьте только макет
Нужно изменить логику выборки данных или расчеты в формеСоздавайте расширение конфигурации или привлекайте разработчика
База тестовая или обновления не планируютсяДопустима прямая правка макета в конфигураторе с обязательной копией
Конфигурация на полной поддержке и обновляется регулярноТолько внешняя форма или расширение — прямая правка запрещена
Итог

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

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

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

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

Частично. Если у вас уже есть готовая внешняя печатная форма, ее подключение делается полностью в пользовательском режиме через Администрирование → Дополнительные отчеты и обработки. Но создание или редактирование самого файла .epf возможно только в конфигураторе.

Почему после подключения внешней формы она не появилась в меню «Печать»?

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

Что будет с измененной формой при обновлении конфигурации?

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

Как добавить логотип компании в счет?

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

Можно ли сделать разные формы счета для разных организаций в одной базе?

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

Безопасно ли скачивать готовые внешние печатные формы из интернета?

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