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