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

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

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

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

Печатная форма в 1С:Управление торговлей — это макет, по которому документ (счёт, ТОРГ-12, УПД, акт) выводится на бумагу или в файл. Необходимость изменить форму возникает часто: нужно добавить логотип компании, вывести дополнительные реквизиты, поменять подписи или подстроить шаблон под требования конкретного контрагента.

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

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

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

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

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

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

Правка макета в режиме предприятия

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

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

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

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

Даёт полный контроль, но усложняет обновление конфигурации и требует аккуратного сопровождения.

Как отредактировать макет в пользовательском режиме

Часть печатных форм в УТ позволяет скорректировать макет без конфигуратора. Откройте документ, нажмите «Печать» и выберите нужную форму. В сформированном табличном документе иногда доступна кнопка «Изменить макет» или аналогичная команда (в зависимости от версии конфигурации и прав пользователя).

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

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

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

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

Порядок действий
  1. 1
    Откройте конфигуратор и создайте новую внешнюю обработку (Файл → Новый → Внешняя обработка).
  2. 2
    Добавьте в обработку макет табличного документа — скопируйте типовой макет нужной формы и внесите правки.
  3. 3
    В модуле объекта реализуйте экспортные функции СведенияОВнешнейОбработке() и Печать() по стандарту БСП.
  4. 4
    Сохраните обработку в файл .epf.
  5. 5
    В режиме предприятия откройте «НСИ и администрирование» → «Печатные формы, отчеты и обработки» → «Дополнительные отчеты и обработки».
  6. 6
    Добавьте файл, укажите размещение (вид документа) и запись в списке.
  7. 7
    Откройте документ, нажмите «Печать» и проверьте, что новая форма появилась в списке и выводится корректно.

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

В процедуре формирования печатной формы вы получаете массив объектов (ссылок на документы) и должны вернуть табличный документ. Данные для макета берите запросом или через реквизиты объекта — так же, как это делает типовой механизм.

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

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

Макет состоит из именованных областей: шапка, строка табличной части, подвал и т.д. Ячейки содержат либо статичный текст, либо параметры (заполняются программно), либо шаблоны (текст с вставками параметров в квадратных скобках). Изменение текста статичных ячеек безопасно; изменение имён параметров потребует правки модуля, который формирует форму.

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

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

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

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

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

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

Команда видна для нужного вида документов

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

Команды нет — проверьте назначение в СведенияОВнешнейОбработке и права пользователя

Заполнение данных
Норма

Все реквизиты (контрагент, суммы, номенклатура) выводятся корректно

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

Пустые ячейки или <Объект не найден> — ошибка в запросе или именах параметров

Разбиение на страницы
Норма

Табличная часть переносится, подвал печатается на последней странице

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

Подвал «оторван», строки обрезаны — проверьте области макета и параметры вывода

Печать нескольких документов
Норма

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

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

Данные документов смешиваются — табличный документ не очищается в цикле

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

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

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

Отдельное ограничение касается регламентированных форм: ТОРГ-12, счёт-фактура, УПД имеют утверждённую структуру. Добавлять дополнительные строки и реквизиты в них можно (это не делает форму недействительной), но удалять или менять местами обязательные показатели нельзя — документ могут не принять контрагенты или налоговая.

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

Когда стоит привлечь специалиста

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

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

Итог

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

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

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

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

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

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

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

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

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

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

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

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

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

Что делать, если после правки форма печатается с ошибкой?

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