Как настроить колонтитулы в печатных формах 1С
Содержание
Бухгалтер распечатал договор на 12 листов, а у директора на столе они перемешались с чужими бумагами — и никто не понял, где чья страница. Колонтитулы снимают эту проблему за минуту: внизу каждого листа появляется «Стр. 3 из 12», название документа и дата печати.
Колонтитулы в 1С настраивают не в самой печатной форме, а в табличном документе, в который она выводится. Откройте готовую печать и перейдите в Файл → Параметры страницы, вкладка Колонтитулы. Там три поля — слева, по центру и справа — и кнопки для вставки номера страницы, даты и времени. Ниже разберём, как сделать верхний и нижний колонтитул, добавить нумерацию и логотип и как задать всё это кодом для типовых и собственных печатных форм.
Что такое колонтитул и где он живёт в 1С
Колонтитул — это повторяющаяся полоса в самом верху (верхний) или внизу (нижний) каждого печатного листа. В неё выносят то, что должно быть на всех страницах: номер листа, дату, название документа, реквизиты.
Главное, что путает новичков: колонтитул — это свойство табличного документа, а не макета. Макет формирует тело печатной формы (строки, ячейки, суммы), а колонтитул добавляется уже к готовому результату на уровне печати.
Поэтому один и тот же колонтитул одинаково настраивается и для типового счёта, и для акта, и для отчёта — везде, где на экране открылся табличный документ.
Откуда бы ни пришла печатная форма — обычный макет документа, внешняя печатная форма или результат отчёта, — на выходе всегда табличный документ. А значит, механизм настройки колонтитулов один и тот же.
Важная деталь: в обычном режиме на экране колонтитула не видно. Он появляется только при печати и в предварительном просмотре. Если кажется, что настройка «не сработала», сначала откройте предпросмотр.
Между верхним и нижним колонтитулом разница только в положении — настраиваются они одинаково. По сложившейся практике их распределяют так:
- Верхний — название документа и организации, иногда фирменный текст. То, что помогает опознать бумагу с первого взгляда.
- Нижний — служебная информация: нумерация страниц, дата и время печати, имя исполнителя. То, что важно при сшивании и сверке экземпляров.
Жёсткого правила нет, но такое разделение привычно глазу и совпадает с оформлением большинства деловых документов.
Настройка колонтитулов через «Параметры страницы»
Это основной способ для разовой печати, когда лезть в код не нужно. Порядок действий:
- Сформируйте печатную форму — нажмите
Печатьв документе илиСформироватьв отчёте. - В открывшемся окне табличного документа выберите
Файл → Параметры страницы. Если пунктаФайлна виду нет, диалог вызывается из менюЕщёв командной панели окна. - Перейдите на вкладку
Колонтитулы. - Выберите, что настраиваете —
Верхний колонтитулилиНижний колонтитул, и включите флажокВыводить. - Заполните три поля:
Слева,По центру,Справа. В любое можно вписать произвольный текст. - Задайте шрифт и размер (обычно 8–9 пунктов, чтобы колонтитул не спорил с основным текстом), а при необходимости — расстояние от края листа.
- Нажмите
ОКи проверьте результат черезФайл → Предварительный просмотр.
Колонтитул печатается в области полей страницы. Если поля заданы слишком маленькими, колонтитул либо обрежется, либо наедет на основной текст. Запас 1–1,5 см снизу и сверху решает проблему.
Настройки колонтитула относятся к конкретному открытому табличному документу. При следующем формировании той же печати их придётся задать заново — если только вы не «зашьёте» колонтитул в сам макет кодом (об этом в разделе про программную настройку).
Нумерация страниц и другие динамические поля
Самое частое, ради чего колонтитулы и заводят, — автоматическая нумерация. Руками номер листа не напишешь: страниц может оказаться и 3, и 30.
На вкладке Колонтитулы над полями есть кнопки для вставки служебных полей:
- 🔢 Номер страницы — текущий лист;
- 📄 Число страниц — сколько листов всего;
- 📅 Дата — дата печати;
- ⏰ Время — время печати.
При нажатии в поле вставляется специальный маркер — короткий токен в квадратных скобках. При печати 1С сама подставит вместо него нужное значение. Например, если в поле По центру вставить кнопками «Номер страницы» и «Число страниц» и дописать слова, получится строка вида Стр. <номер> из <всего>, которая на бумаге превратится в «Стр. 1 из 7», «Стр. 2 из 7» и так далее.
Вставляйте эти поля только кнопками, а не вписывайте маркер руками. Одна опечатка в токене — и вместо номера страницы на листе напечатается сам текст в скобках. Если нужен тот же маркер в коде, проще настроить поле в диалоге и скопировать готовый токен оттуда.
Три поля колонтитула задают выравнивание, и располагать данные по ним стоит осмысленно. Рабочая раскладка для нижнего колонтитула выглядит так:
| Поле | Что разместить |
|---|---|
| Слева | Дата и время печати |
| По центру | Нумерация «Стр. X из Y» |
| Справа | Имя исполнителя или примечание |
Дату и время удобно ставить слева внизу — получается отметка, когда именно распечатали экземпляр. Для договоров и актов это снимает лишние вопросы при сверке версий, особенно если один и тот же документ печатали несколько раз с правками.
А вот имени пользователя или названия организации среди кнопок нет — такие данные в колонтитул можно подставить только кодом. Как это сделать, разберём ниже.
Колонтитулы в отчётах на системе компоновки данных
Отчёты на СКД формируют результат тоже в табличный документ, но своей настройки колонтитулов в конструкторе компоновки нет. Поэтому варианта два.
Первый — вручную. Сформируйте отчёт, затем на полученном табличном документе откройте Параметры страницы и задайте колонтитул так же, как для обычной печатной формы. Способ подходит, когда отчёт печатают разово.
Второй — кодом. Если отчёт регулярный и колонтитул нужен всегда, его задают в модуле отчёта — на том табличном документе, в который компоновщик выводит результат. Тогда нумерация и подписи появятся сами при каждом формировании, и пользователю не придётся каждый раз лезть в параметры страницы.
Какой способ выбрать, зависит от того, кто и как часто печатает отчёт. Для разового выгрузки под конкретную задачу проще руки, для ежемесячной отчётности на печать — однозначно код.
Если задать колонтитул руками, а потом нажать Сформировать ещё раз, табличный документ перестроится заново и ручная настройка сбросится. Для повторяющихся отчётов надёжнее именно код.
Для сложных отчётов, где на каждой странице должна повторяться не только подпись, но и шапка таблицы (названия колонок), одного колонтитула мало — понадобится ещё и повторение строк при печати. Об этом — в следующем разделе про изображения и повторяющиеся области.
Логотип и изображения: почему их нет в колонтитуле
Частый запрос — «поставить логотип в колонтитул». Короткий ответ: штатный колонтитул 1С хранит только текст. Вставить в него картинку, печать или логотип нельзя — кнопки для изображения там попросту нет.
Чтобы логотип появлялся на каждом листе, картинку размещают не в колонтитуле, а в самом макете:
- Откройте макет печатной формы в конфигураторе (или во внешней печатной форме).
- Добавьте в верхнюю область объект
Рисуноки загрузите в него файл логотипа. - Пометьте строки с логотипом как повторяющиеся при печати — через меню
Таблицав пункте, отвечающем за повторение областей при печати (Повторять при печати строки), либо через соответствующее свойство табличного документа.
После этого выбранная область (с логотипом и, например, шапкой) будет печататься в начале каждого листа — визуально это работает как «картинка в верхнем колонтитуле», хотя технически это повторяющаяся область макета.
Тот же приём решает задачу «шапка таблицы на каждой странице»: помечаете строку с названиями колонок как повторяющуюся — и на листе 2, 3, 4 читатель видит, что это за столбцы, без возврата к первой странице.
Если логотип нужен только на первом листе (как на фирменном бланке), повторение не включайте — обычный Рисунок в начале макета и так выведется один раз.
При подготовке логотипа заранее уменьшите файл до разумного размера: тяжёлая картинка на несколько мегабайт раздувает печатную форму и замедляет формирование, особенно если документ на десятки листов. Для печати достаточно изображения шириной в несколько сотен пикселей — на бумаге разница с «тяжёлым» файлом незаметна.
Программная настройка колонтитулов в коде
Когда колонтитул должен появляться автоматически при каждой печати, его прописывают в коде формирования табличного документа. У объекта ТабличныйДокумент для этого есть свойства ВерхнийКолонтитул и НижнийКолонтитул.
Базовый пример — нумерация внизу по центру и дата справа:
ТабДок = Новый ТабличныйДокумент;
// ... вывод областей макета ...
ТабДок.НижнийКолонтитул.Выводить = Истина;
ТабДок.НижнийКолонтитул.ТекстПоЦентру = "Стр. [маркер номера] из [маркер числа страниц]";
ТабДок.НижнийКолонтитул.ТекстСправа = ТекстоваяСтрокаДаты;
ТабДок.НижнийКолонтитул.РазмерШрифта = 8;
Точные маркеры номера и числа страниц удобнее не писать по памяти, а один раз вставить кнопками в диалоге Параметры страницы, скопировать готовую строку и перенести в код. Так вы гарантированно не ошибётесь в написании токена.
Через свойства ТекстСлева, ТекстПоЦентру, ТекстСправа в колонтитул можно подставить любые вычисленные значения — то, чего нет среди кнопок диалога:
- 👤 имя текущего пользователя;
- 🏢 название и ИНН организации из реквизитов документа;
- 📎 номер и дату самого печатаемого документа.
Верхний колонтитул настраивается симметрично через ТабДок.ВерхнийКолонтитул. Флажок Выводить обязателен — без него текст колонтитула заполнен, но на печать не попадёт.
Размер и начертание шрифта задаются отдельно для каждого колонтитула, поэтому можно сделать подпись мельче основного текста, не трогая сам макет. Если в разных печатных формах нужен один и тот же колонтитул, вынесите его настройку в общую процедуру и вызывайте её после формирования каждого табличного документа — так правка в одном месте применится ко всем печатям сразу.
Правку модулей типовой конфигурации делайте только на копии базы и через расширение, а не прямым снятием с поддержки. Иначе обновление затрёт изменения, и колонтитул пропадёт после очередного релиза.
Этот подход единственный, если колонтитул нужен «навсегда» для типовой печатной формы: встроенный в код, он переживёт повторные формирования и не требует ручной настройки от пользователя.
Частые ошибки при настройке колонтитулов
Разберём ситуации, на которых чаще всего спотыкаются, — симптом и что проверить.
Выводить на нужном колонтитуле, либо все три поля (слева/центр/справа) остались пустыми. Проверьте флажок и в предпросмотре, а не на экране.Параметры страницы.Рисунок в макете и пометьте область как повторяющуюся при печати.Параметры страницы.Частые вопросы
Чем верхний колонтитул отличается от шапки таблицы в макете?
Можно ли задать разный колонтитул для чётных и нечётных страниц?
Сохранятся ли колонтитулы при выгрузке в Excel или PDF?
Почему колонтитул не виден прямо в окне табличного документа?
Файл → Предварительный просмотр или отправьте документ на печать.Как вывести в колонтитул название организации или имя пользователя?
ТекстСлева/ТекстПоЦентру/ТекстСправа нужного колонтитула.