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

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

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

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

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

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

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

Определите, какой комментарий нужен и где он должен выводиться

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

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

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

Как выбрать способ

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

Добавьте комментарий через «Изменить макет» без конфигуратора

В конфигурациях на базе Библиотеки стандартных подсистем (БСП) пользователь с правами администратора может скорректировать макет прямо из режима «Предприятие». Откройте документ, нажмите кнопку печати нужной формы, затем в форме печати выберите «Ещё → Изменить макет» (в ряде версий — «Настройка макета» или переход через «Администрирование → Печатные формы, отчеты и обработки»).

Откроется табличный документ-макет. Найдите нужную область, вставьте новую строку и введите текст комментария. Если текст статический — просто напишите его в ячейке. Если нужен параметр, укажите в свойстве ячейки «Заполнение» значение «Параметр» и имя параметра, которое выводится программно (например, Комментарий), но учтите: параметр будет заполнен только если в модуле менеджера печати есть соответствующий код.

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

Порядок действий в режиме «Предприятие»
  1. 1
    Откройте документ и сформируйте нужную печатную форму
  2. 2
    Нажмите Ещё → Изменить макет (или откройте макет через Администрирование → Печатные формы)
  3. 3
    Вставьте строку в нужной области и введите текст или параметр комментария
  4. 4
    Сохраните макет и сформируйте печатную форму заново
  5. 5
    Проверьте вывод на документе с заполненным и пустым комментарием

Выведите комментарий через конфигуратор: макет и модуль печати

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

В ячейке, где должен выводиться текст, задайте в поле «Текст» шаблон вида Комментарий: [Комментарий], а в свойстве «Заполнение» выберите «Шаблон». Затем откройте модуль менеджера печати (процедура «Печать» или функция формирования табличного документа) и добавьте заполнение параметра:

ОбластьКомментарий = Макет.ПолучитьОбласть("Комментарий");

ОбластьКомментарий.Параметры.Комментарий = ДанныеДокумента.Комментарий;

ТабличныйДокумент.Вывести(ОбластьКомментарий);

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

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

Используйте расширение или внешнюю печатную форму, если типовую менять нельзя

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

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

Сравнение способов

Пользовательский макет (Изменить макет)

Быстро и без программирования, но подходит только для статического текста и простых параметров; риск устареть при обновлении

Изменение конфигурации

Полный контроль, но требует снятия с поддержки и аккуратного обновления

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

Сохраняет поддержку, переживает обновления; требует навыков разработки

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

Не трогает конфигурацию совсем, но форму нужно сопровождать отдельно

Выведите комментарий из дополнительного реквизита

Если типовое поле «Комментарий» занято под служебные пометки и не должно попадать на печать, создайте отдельный дополнительный реквизит: «Администрирование → Общие настройки → Дополнительные реквизиты». Выберите набор реквизитов нужного документа, добавьте реквизит с типом «Строка», например «Комментарий для печати».

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

Проверьте результат и учтите типичные ограничения

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

Также проверьте печать на принтере и сохранение в PDF — иногда макет выглядит корректно на экране, но область не помещается по ширине листа. Если комментарий выводится у группы пользователей, убедитесь, что у них есть права на чтение соответствующего реквизита, иначе параметр окажется пустым.

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

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

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

Текст выводится в нужной области полностью

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

Текст обрезан, отсутствует или выводится не та область

Комментарий пуст
Норма

Область не выводится, лишних подписей нет

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

На печати висит «Комментарий:» без текста

Длинный многострочный текст
Норма

Строки переносятся, подписи не съезжают

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

Текст налезает на подвал или обрывается

Печать у обычного пользователя
Норма

Комментарий виден

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

Пусто из-за нехватки прав на реквизит

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

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

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

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

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

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

Как вывести комментарий только у определённых документов?

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

Можно ли вводить текст комментария прямо при печати?

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

Комментарий выводится, но обрезается на печати. Что делать?

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

Чем расширение лучше изменения конфигурации?

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

Итог

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

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