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

· 9 мин

Содержание

Бухгалтер распечатал договор на 12 листов, а у директора на столе они перемешались с чужими бумагами — и никто не понял, где чья страница. Колонтитулы снимают эту проблему за минуту: внизу каждого листа появляется «Стр. 3 из 12», название документа и дата печати.

Колонтитулы в 1С настраивают не в самой печатной форме, а в табличном документе, в который она выводится. Откройте готовую печать и перейдите в Файл → Параметры страницы, вкладка Колонтитулы. Там три поля — слева, по центру и справа — и кнопки для вставки номера страницы, даты и времени. Ниже разберём, как сделать верхний и нижний колонтитул, добавить нумерацию и логотип и как задать всё это кодом для типовых и собственных печатных форм.

Что такое колонтитул и где он живёт в 1С

Колонтитул — это повторяющаяся полоса в самом верху (верхний) или внизу (нижний) каждого печатного листа. В неё выносят то, что должно быть на всех страницах: номер листа, дату, название документа, реквизиты.

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

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

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

Важная деталь: в обычном режиме на экране колонтитула не видно. Он появляется только при печати и в предварительном просмотре. Если кажется, что настройка «не сработала», сначала откройте предпросмотр.

Между верхним и нижним колонтитулом разница только в положении — настраиваются они одинаково. По сложившейся практике их распределяют так:

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

Жёсткого правила нет, но такое разделение привычно глазу и совпадает с оформлением большинства деловых документов.

Настройка колонтитулов через «Параметры страницы»

Это основной способ для разовой печати, когда лезть в код не нужно. Порядок действий:

  1. Сформируйте печатную форму — нажмите Печать в документе или Сформировать в отчёте.
  2. В открывшемся окне табличного документа выберите Файл → Параметры страницы. Если пункта Файл на виду нет, диалог вызывается из меню Ещё в командной панели окна.
  3. Перейдите на вкладку Колонтитулы.
  4. Выберите, что настраиваете — Верхний колонтитул или Нижний колонтитул, и включите флажок Выводить.
  5. Заполните три поля: Слева, По центру, Справа. В любое можно вписать произвольный текст.
  6. Задайте шрифт и размер (обычно 8–9 пунктов, чтобы колонтитул не спорил с основным текстом), а при необходимости — расстояние от края листа.
  7. Нажмите ОК и проверьте результат через Файл → Предварительный просмотр.

Колонтитул печатается в области полей страницы. Если поля заданы слишком маленькими, колонтитул либо обрежется, либо наедет на основной текст. Запас 1–1,5 см снизу и сверху решает проблему.

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

Нумерация страниц и другие динамические поля

Самое частое, ради чего колонтитулы и заводят, — автоматическая нумерация. Руками номер листа не напишешь: страниц может оказаться и 3, и 30.

На вкладке Колонтитулы над полями есть кнопки для вставки служебных полей:

  • 🔢 Номер страницы — текущий лист;
  • 📄 Число страниц — сколько листов всего;
  • 📅 Дата — дата печати;
  • ⏰ Время — время печати.

При нажатии в поле вставляется специальный маркер — короткий токен в квадратных скобках. При печати 1С сама подставит вместо него нужное значение. Например, если в поле По центру вставить кнопками «Номер страницы» и «Число страниц» и дописать слова, получится строка вида Стр. <номер> из <всего>, которая на бумаге превратится в «Стр. 1 из 7», «Стр. 2 из 7» и так далее.

Вставляйте эти поля только кнопками, а не вписывайте маркер руками. Одна опечатка в токене — и вместо номера страницы на листе напечатается сам текст в скобках. Если нужен тот же маркер в коде, проще настроить поле в диалоге и скопировать готовый токен оттуда.

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

ПолеЧто разместить
СлеваДата и время печати
По центруНумерация «Стр. X из Y»
СправаИмя исполнителя или примечание

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

А вот имени пользователя или названия организации среди кнопок нет — такие данные в колонтитул можно подставить только кодом. Как это сделать, разберём ниже.

Колонтитулы в отчётах на системе компоновки данных

Отчёты на СКД формируют результат тоже в табличный документ, но своей настройки колонтитулов в конструкторе компоновки нет. Поэтому варианта два.

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

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

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

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

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

Логотип и изображения: почему их нет в колонтитуле

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

Чтобы логотип появлялся на каждом листе, картинку размещают не в колонтитуле, а в самом макете:

  1. Откройте макет печатной формы в конфигураторе (или во внешней печатной форме).
  2. Добавьте в верхнюю область объект Рисунок и загрузите в него файл логотипа.
  3. Пометьте строки с логотипом как повторяющиеся при печати — через меню Таблица в пункте, отвечающем за повторение областей при печати (Повторять при печати строки), либо через соответствующее свойство табличного документа.

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

Тот же приём решает задачу «шапка таблицы на каждой странице»: помечаете строку с названиями колонок как повторяющуюся — и на листе 2, 3, 4 читатель видит, что это за столбцы, без возврата к первой странице.

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

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

Программная настройка колонтитулов в коде

Когда колонтитул должен появляться автоматически при каждой печати, его прописывают в коде формирования табличного документа. У объекта ТабличныйДокумент для этого есть свойства ВерхнийКолонтитул и НижнийКолонтитул.

Базовый пример — нумерация внизу по центру и дата справа:

ТабДок = Новый ТабличныйДокумент;
// ... вывод областей макета ...

ТабДок.НижнийКолонтитул.Выводить = Истина;
ТабДок.НижнийКолонтитул.ТекстПоЦентру = "Стр. [маркер номера] из [маркер числа страниц]";
ТабДок.НижнийКолонтитул.ТекстСправа  = ТекстоваяСтрокаДаты;
ТабДок.НижнийКолонтитул.РазмерШрифта = 8;

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

Через свойства ТекстСлева, ТекстПоЦентру, ТекстСправа в колонтитул можно подставить любые вычисленные значения — то, чего нет среди кнопок диалога:

  • 👤 имя текущего пользователя;
  • 🏢 название и ИНН организации из реквизитов документа;
  • 📎 номер и дату самого печатаемого документа.

Верхний колонтитул настраивается симметрично через ТабДок.ВерхнийКолонтитул. Флажок Выводить обязателен — без него текст колонтитула заполнен, но на печать не попадёт.

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

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

Этот подход единственный, если колонтитул нужен «навсегда» для типовой печатной формы: встроенный в код, он переживёт повторные формирования и не требует ручной настройки от пользователя.

Частые ошибки при настройке колонтитулов

Разберём ситуации, на которых чаще всего спотыкаются, — симптом и что проверить.

Диагностика: выберите симптом

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

Чем верхний колонтитул отличается от шапки таблицы в макете?
Колонтитул добавляет средство печати, и он повторяется на каждом листе автоматически. Шапка — это строки самого макета; чтобы она повторялась на всех страницах, её нужно отдельно пометить как повторяющуюся при печати.
Можно ли задать разный колонтитул для чётных и нечётных страниц?
Штатными средствами табличного документа — нет. Колонтитул один на весь документ. Разное содержимое на разных листах делается только нестандартно, через код и ручное разбиение.
Сохранятся ли колонтитулы при выгрузке в Excel или PDF?
В PDF колонтитул попадает как есть — он часть печатного представления. При сохранении в формат Excel 1С переносит колонтитулы в колонтитулы листа Excel, так что нумерация и подписи остаются.
Почему колонтитул не виден прямо в окне табличного документа?
Это нормально. Колонтитул существует только для печати. Чтобы его увидеть, откройте Файл → Предварительный просмотр или отправьте документ на печать.
Как вывести в колонтитул название организации или имя пользователя?
Кнопок для этого в диалоге нет — такие данные подставляются только кодом через свойства ТекстСлева/ТекстПоЦентру/ТекстСправа нужного колонтитула.