Документы и Печать · 12 мин
Печатная форма 1С: как изменить макет и настроить вывод документов
Как изменить печатную форму в 1С: редактирование макета в конфигураторе, внешние печатные формы, настройка без программирования. Пошаговые инструкции и типичные ошибки.
Изменить печатную форму в 1С можно тремя основными способами: через встроенный редактор макета в конфигураторе, через механизм внешних печатных форм или через пользовательские настройки вывода в режиме «Предприятие». Выбор способа зависит от того, какая у вас конфигурация (типовая или самописная), есть ли доступ к конфигуратору и насколько глубокие правки нужны — поменять логотип и реквизиты или перестроить структуру документа.
Самая частая задача — добавить в счёт, акт или накладную дополнительные данные: подпись, печать, комментарий, штрихкод или изменить формулировки. В типовых конфигурациях (1С:Бухгалтерия, 1С:Управление торговлей, 1С:ERP) часть таких изменений делается без программирования, через настройки. Если требуется перестроить таблицу, добавить вычисляемые поля или изменить порядок колонок, потребуется редактирование макета и, возможно, программного кода формирования.
Важно понимать разницу между макетом и кодом формирования. Макет — это шаблон, который определяет внешний вид документа: ячейки, шрифты, рамки, области. Код формирования — процедура на встроенном языке 1С, которая заполняет макет данными из документа. Иногда достаточно поправить только макет, иногда приходится менять и код.
Как устроена печатная форма в 1С
Печатная форма в 1С состоит из двух частей: макета (объект «Макет» типа «Табличный документ») и процедуры, которая его заполняет. Макет хранится в конфигурации — у документа, в общих макетах или в менеджере печати объекта. Когда пользователь нажимает кнопку «Печать», система вызывает процедуру формирования, та последовательно выводит области макета и подставляет в параметры значения из базы данных.
Макет делится на именованные области: шапка, строка таблицы, подвал и так далее. Ячейки макета бывают трёх типов: фиксированный текст (выводится как есть), параметр (подставляется значение из кода, например <НомерДокумента>) и шаблон (текст со встроенными параметрами в квадратных скобках). Понимание этой структуры помогает быстро найти, где именно править нужный фрагмент.
В управляемых формах типовых конфигураций печать обычно организована через подсистему «Управление печатью» (БСП — библиотека стандартных подсистем). Тогда макеты лежат в общих макетах или в макетах менеджера печати, а сами команды печати регистрируются в модуле менеджера объекта. Это важно знать, чтобы искать нужный макет не по всей конфигурации, а в конкретном месте.
Как найти нужный макет в конфигураторе
Откройте конфигуратор и найдите документ, печатную форму которого нужно изменить. Раскройте ветку документа — макеты находятся в папке «Макеты». В типовых конфигурациях макет может лежать также в ветке «Общие → Общие макеты» (например, макеты с именами вида «ПФ_MXL_СчетЗаказ») или в макетах справочников, если форма относится к элементу справочника.
Быстрый способ найти макет — поиск по имени команды печати. Откройте модуль менеджера документа, найдите процедуру «ДобавитьКомандыПечати» или «Печать», посмотрите, какой макет используется при формировании (метод ПолучитьМакет("ИмяМакета")). Это точнее, чем перебирать макеты визуально.
Ещё один практический приём: сформируйте печатную форму в режиме «Предприятие», найдите в ней уникальную фразу (например, заголовок «Внимание! Оплата данного счета означает согласие...») и выполните глобальный поиск этой строки по конфигурации (Ctrl+Shift+F). Поиск приведёт прямо к ячейке макета или к строке кода.
- 1Сформируйте печатную форму в режиме «Предприятие» и скопируйте уникальную фразу из неё
- 2Откройте конфигуратор и нажмите Ctrl+Shift+F (глобальный поиск)
- 3Вставьте фразу, включите поиск по всей конфигурации
- 4Перейдите по найденной строке — это ячейка макета или код формирования
- 5Сохраните имя макета и объекта, чтобы вернуться к нему при правках
Изменение макета: пошаговые действия
Откройте найденный макет двойным щелчком. Перед правками сделайте резервную копию: сохраните макет в файл MXL через меню «Файл → Сохранить копию» или скопируйте исходную область в отдельный макет-заготовку. Это позволит быстро откатить изменения, если форма «поедет».
Чтобы изменить текст ячейки, выделите её и отредактируйте свойство «Текст» в палитре свойств. Чтобы добавить новое поле с данными, впишите в ячейку шаблон с параметром в квадратных скобках, например: Телефон: [ТелефонКонтрагента]. Затем убедитесь, что в коде формирования этот параметр заполняется — иначе на печати поле окажется пустым.
Для добавления строки или колонки используйте стандартные операции табличного документа: вставка строк/столбцов через контекстное меню. Следите за высотой строк и объединением ячеек — большинство проблем с «разъехавшейся» формой возникает из-за нарушенных объединений и фиксированных размеров. Шрифты, рамки и выравнивание настраиваются в палитре свойств выделенных ячеек.
Если нужно добавить область (например, блок «Гарантийные условия» между таблицей и подвалом), выделите нужные строки, задайте имя области через «Таблица → Имена → Назначить имя», а затем добавьте вывод этой области в коде формирования методом ТабличныйДокумент.Вывести(Макет.ПолучитьОбласть("ИмяОбласти")).
Внешние печатные формы: безопасная альтернатива
Внешняя печатная форма — это файл с расширением .epf, который подключается к типовой конфигурации без изменения её структуры. Это рекомендуемый способ, когда конфигурация типовая и регулярно обновляется: при обновлении ваши доработки не затрутся, а поддержка не слетит.
Подключение выполняется в режиме «Предприятие»: раздел «Администрирование → Печатные формы, отчеты и обработки → Дополнительные отчеты и обработки». Загрузите файл .epf, укажите, к каким документам он привязан, и назначьте команду печати. После этого в меню «Печать» документа появится новый пункт рядом с типовыми.
Создать внешнюю печатную форму можно на основе типовой: скопируйте макет и код формирования из конфигурации во внешнюю обработку, адаптируйте процедуру под интерфейс подсистемы печати (экспортная процедура Печать с параметрами или сведения о внешней обработке для старых механизмов). Для типовых конфигураций на БСП требуется строго определённая структура модуля — сверьтесь с существующей внешней формой-образцом.
Способы изменения печатной формы
Подходит для самописных и снятых с поддержки конфигураций. Быстро, но усложняет обновление типовых решений.
Оптимально для типовых конфигураций на поддержке. Требует знания интерфейса подсистемы печати, но не затрагивает конфигурацию.
Логотип, подписи, дополнительные колонки — в ряде типовых конфигураций меняются без программирования. Возможности ограничены тем, что предусмотрел разработчик.
Изменения без конфигуратора: что доступно пользователю
В типовых конфигурациях часть настроек печати вынесена в интерфейс. В 1С:Бухгалтерии, например, логотип и подписи в счетах настраиваются в карточке организации (раздел «Главное → Реквизиты организации»), а дополнительные условия к счёту можно указать в настройках печати документа. В 1С:Управление торговлей есть механизм дополнительных колонок печатных форм и выбор вариантов отображения цен и скидок.
Также в большинстве конфигураций сформированный табличный документ можно отредактировать вручную перед печатью: включите режим редактирования (кнопка «Изменить» или снятие флажка «Только просмотр») и поправьте текст прямо в форме. Учтите: такая правка разовая — при следующем формировании документа изменения не сохранятся. Это приемлемо для единичных случаев, но не для постоянной работы.
Ещё один пользовательский инструмент — вывод в Word или Excel, если конфигурация поддерживает офисные форматы. Печатную форму можно сохранить в файл, отредактировать в привычном редакторе и распечатать. Это удобно для разовых нестандартных документов, но не подходит для потоковой печати.
Проверка результата и типичные ошибки
После правок сформируйте печатную форму на нескольких реальных документах: с короткими и длинными наименованиями, с одной строкой и с многостраничной таблицей, с пустыми необязательными реквизитами. Проверьте разрывы страниц, переносы текста и итоговые суммы — именно они страдают чаще всего.
Обратите внимание на поведение пустых параметров: если контрагент без телефона, а вы добавили строку «Телефон: [Телефон]», на печати останется пустое место или незаполненный шаблон. Для таких случаев либо заполняйте параметр пустой строкой в коде, либо выводите область условно.
Как проверить результат
Текст переносится или умещается, колонки не смещаются
Строки наползают друг на друга, таблица выходит за поля страницы
Шапка и подвал выводятся корректно, итоги на последней странице
Итоги «оторваны» от таблицы, разрывы режут строки пополам
Пустые поля не содержат остатков шаблона вида [Параметр]
На печати видны квадратные скобки или слова из макета
Внешняя форма работает, изменения на месте
Правки макета затёрты обновлением, форма вернулась к типовой
Когда лучше привлечь специалиста
Самостоятельно безопасно править текст, оформление, добавлять фиксированные надписи и менять шрифты — эти операции не затрагивают логику и легко откатываются. С осторожностью стоит подходить к добавлению новых параметров: нужно понимать, откуда в коде берутся данные, и уметь проверить результат на тестовой копии базы.
К программисту 1С стоит обратиться, если нужно: добавить вычисляемые поля (например, сумму прописью в нестандартном формате), изменить группировку строк таблицы, вывести данные из связанных документов или регистров, построить штрихкод или QR-код, а также создать внешнюю печатную форму с нуля под БСП. Ошибка в коде формирования может привести к неверным суммам в документах, что критично для учёта.
Перед любыми правками в рабочей базе сделайте копию (выгрузку .dt или резервную копию средствами СУБД). Все эксперименты проводите на копии, а в рабочую базу переносите только проверенный результат.
Что важно запомнить
Печатная форма 1С состоит из макета и кода заполнения. Простые правки делаются в конфигураторе через редактирование макета, для типовых конфигураций безопаснее внешние печатные формы. Всегда работайте на копии базы и проверяйте результат на разных документах, включая многостраничные и с пустыми реквизитами.
Частые вопросы
Как добавить логотип в печатную форму счёта?
В типовых конфигурациях логотип обычно загружается в карточке организации и выводится автоматически, если макет это поддерживает. Если поддержки нет, добавьте в макет область рисунка: в конфигураторе через «Таблица → Рисунки → Вставить рисунок» и привяжите его к ячейке. Для динамической подстановки разных логотипов потребуется доработка кода формирования.
Почему после изменения макета на печати ничего не поменялось?
Чаще всего правится не тот макет: печать может идти через общий макет, макет менеджера печати или подключённую внешнюю форму. Проверьте код формирования и список дополнительных печатных форм в настройках. Также убедитесь, что конфигурация базы данных обновлена после сохранения изменений (F7 в конфигураторе).
Можно ли изменить печатную форму без конфигуратора?
Частично. В режиме «Предприятие» доступны настройки, предусмотренные конфигурацией: логотип, подписи, дополнительные колонки, варианты печати. Также можно отредактировать уже сформированный документ вручную, но это разовая правка. Структурные изменения макета без конфигуратора или внешней обработки невозможны.
Что произойдёт с моими правками при обновлении конфигурации?
Если вы правили типовой макет напрямую, при обновлении система предложит заменить его на новый типовой — ваши изменения будут потеряны, если не выбрать режим объединения вручную. Внешние печатные формы обновление не затрагивает, поэтому для типовых конфигураций это предпочтительный способ.
Как добавить в накладную новую колонку, например «Артикул»?
Сначала проверьте, нет ли готового варианта: многие типовые формы уже содержат артикул, и его можно включить настройками. Если колонки нет, добавьте столбец в области шапки и строки таблицы макета, задайте параметр в ячейке строки и дополните код формирования заполнением этого параметра из табличной части документа. Проверьте, чтобы ширина колонок не разрушила вёрстку страницы.
Где хранятся подключённые внешние печатные формы и как их отключить?
Внешние формы хранятся в справочнике дополнительных отчетов и обработок («Администрирование → Печатные формы, отчеты и обработки»). Чтобы отключить форму, откройте её карточку и снимите публикацию или удалите привязку к документу. Сам файл при этом можно оставить в справочнике на случай повторного использования.