Добавляем подвал в табличный документ и макет 1С

· 9 мин

Содержание

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

Если нужна строка внизу каждого распечатанного листа — идите в Таблица → Параметры страницы, раздел «Колонтитулы». Если нужны «Итого», реквизиты организации и места под подписи в конце документа — это область макета, которую выводят методом Вывести(). Ниже — оба пути, с логотипом, печатью и типичными граблями.

Какой именно подвал вам нужен

Прежде чем лезть в конфигуратор, определитесь, что вы называете подвалом. От этого зависит весь путь.

Что должно появиться в подвале?

Колонтитул — пользовательская настройка конкретного табличного документа. Область «Подвал» — часть конфигурации, она одинаковая для всех документов этого вида. Это принципиально разные уровни, и дальше они разобраны отдельно.

Нижний колонтитул: подвал на каждом листе без конфигуратора

Самый быстрый подвал — колонтитул. Он печатается внизу каждой страницы и не зависит от содержимого документа.

Порядок такой:

  1. Откройте или сформируйте табличный документ (печатную форму, отчёт).
  2. В главном меню выберите Таблица → Параметры страницы.
  3. Перейдите в раздел Колонтитулы.
  4. Найдите блок «Нижний колонтитул» — это и есть подвал.
  5. Колонтитул делится на три части: левая, центральная, правая. Впишите текст в нужную.

В поля колонтитула можно вставлять не только текст, но и автоподстановки — кнопками в том же окне:

  • 📄 номер страницы;
  • 🔢 общее число страниц (для формата «стр. 3 из 12»);
  • 📅 дату и время печати;
  • 🏷️ имя файла.

Чтобы получить «Страница 3 из 12», в центральную часть колонтитула поставьте слово «Страница», затем кнопкой вставьте номер страницы, допишите «из» и кнопкой вставьте число страниц. 1С подставит реальные значения при печати.

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

Когда печатную форму собирают кодом, колонтитул задают у самого табличного документа через свойство НижнийКолонтитул. Так подвал не пропадёт при повторном формировании:

ТабДок.НижнийКолонтитул.Выводить = Истина;
ТабДок.НижнийКолонтитул.ТекстВЦентре = "Подготовлено в 1С";
ТабДок.НижнийКолонтитул.ТекстСправа = "";

У колонтитула есть и левая, и правая части (ТекстСлева, ТекстСправа) — распределяйте служебную информацию по ним, чтобы строки не слипались.

Область «Подвал» в макете печатной формы

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

Создаётся область так:

  1. В конфигураторе откройте макет печатной формы (тип макета — «Табличный документ»).
  2. Выделите строки, которые станут подвалом (итоги, реквизиты, подписи).
  3. Вызовите Таблица → Имена → Назначить имя (или Ctrl+Shift+N).
  4. Задайте имя латиницей или кириллицей, например Подвал.

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

ТабДок = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("ПечатнаяФорма");

ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ОбластьПодвал.Параметры.ИтогоСумма = СуммаДокумента;
ОбластьПодвал.Параметры.Руководитель = РуководительФИО;

ТабДок.Вывести(ОбластьПодвал);

Чтобы в подвал попадали данные документа, в ячейках области задают параметры. В конфигураторе дважды щёлкните по ячейке, в палитре свойств поставьте «Заполнение → Параметр» и впишите имя (например, ИтогоСумма). В коде это имя становится полем ОбластьПодвал.Параметры.ИтогоСумма.

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

В типовых конфигурациях на «1С:Библиотеке стандартных подсистем» (Бухгалтерия 3.0, ЗУП 3.1, УТ 11) подвал печатной формы можно поправить вообще без конфигуратора. Макеты печатных форм там редактируются из режима «1С:Предприятие»:

  1. Откройте Администрирование → Печатные формы, отчёты и обработки.
  2. Перейдите в Макеты печатных форм.
  3. Найдите в списке нужную форму, откройте её встроенным редактором макета.
  4. Правьте область подвала — добавляйте строки, параметры, рисунки.

Изменённый макет хранится в базе отдельно от типового и не затирается обновлением. Это щадящий путь для бухгалтера или администратора, которому не нужен весь конфигуратор. Если же подвалу нужны новые данные, которых нет в исходной форме (например, дополнительный реквизит из справочника), без доработки в конфигураторе или расширении уже не обойтись.

Логотип в подвале: рисунок, а не картинка в тексте

Логотип добавляют как объект «Рисунок» в области макета, а не вставляют символами в ячейку.

  1. В конфигураторе откройте макет и перейдите к области подвала.
  2. Выберите Таблица → Рисунки → Вставить картинку либо перетащите объект «Рисунок» из палитры.
  3. Загрузите файл логотипа (PNG или JPG) в свойство «Картинка».
  4. Растяните рамку рисунка до нужного размера и зафиксируйте положение относительно ячеек.

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

Храните логотип в макете «Общие картинки» (ветка «Общие → Общие картинки» в дереве конфигурации) и ссылайтесь на него. Тогда один файл используется во всех печатных формах, и менять его придётся в одном месте.

Следите за разрешением: растянутый мелкий логотип на печати выглядит размытым. Берите исходник шириной хотя бы 300–600 пикселей на предполагаемый размер в сантиметрах.

Подписи и печать в подвале документа

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

Типовой набор строк:

  • Руководитель ______________ / ФИО /
  • Главный бухгалтер ______________ / ФИО /
  • М.П. (место для печати)

ФИО удобно выводить параметром, чтобы они подставлялись из справочника:

ОбластьПодвал.Параметры.РуководительДолжность = Организация.РуководительДолжность;
ОбластьПодвал.Параметры.РуководительФИО = Организация.РуководительФИО;

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

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

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

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

ОбластьПодпись = Макет.ПолучитьОбласть("СтрокаПодписи");
Для Каждого Подписант Из Подписанты Цикл
    ОбластьПодпись.Параметры.Должность = Подписант.Должность;
    ОбластьПодпись.Параметры.ФИО = Подписант.ФИО;
    ТабДок.Вывести(ОбластьПодпись);
КонецЦикла;

Подвал в отчётах и обработках

В отчётах на системе компоновки данных отдельную область «Подвал» вручную рисовать не нужно. Итоговую строку формируют ресурсы.

  • На вкладке Ресурсы схемы компоновки добавьте поля, по которым нужен итог (Сумма, Количество).
  • СКД сама выведет общий итог внизу — это и есть подвал отчёта.
  • Текст и оформление итоговой строки настраиваются на вкладке Макеты, где задаётся шаблон вывода для итоговой области.
  • Если итог нужен не только общий, но и по каждой группировке, в настройках группировки включите вывод её итога — тогда подвал появится после каждой группы.

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

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

Если обработка собирает документ построчно в цикле, подвал выводят один раз после цикла, иначе итоги задвоятся:

ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
Для Каждого СтрокаТЧ Из Товары Цикл
    ОбластьСтрока.Параметры.Наименование = СтрокаТЧ.Наименование;
    ОбластьСтрока.Параметры.Сумма = СтрокаТЧ.Сумма;
    ТабДок.Вывести(ОбластьСтрока);
КонецЦикла;

ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ТабДок.Вывести(ОбластьПодвал);

Оформление: чтобы подвал не разваливался при печати

Подвал чаще всего ломается не в коде, а на печати. Несколько правил, которые экономят время:

  • Задайте подвалу фиксированную высоту строк, чтобы он не наезжал на основную таблицу при большом числе строк.
  • Границы ячеек рисуйте в свойствах ячейки («Границы»), а не псевдографикой из дефисов — последняя разъезжается при разных шрифтах.
  • Проверяйте подвал в режиме Таблица → Просмотр перед печатью: на экране область может выглядеть иначе, чем на бумаге.
  • Если итог должен быть на той же странице, что и последняя строка таблицы, настройте у области свойство запрета разрыва страницы внутри неё.

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

Типичные ошибки при добавлении подвала

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

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

Можно ли добавить подвал без конфигуратора?
Да, если речь о нижнем колонтитуле: Таблица → Параметры страницы → Колонтитулы. Область «Подвал» с итогами и подписями добавляется только в конфигураторе, это часть макета.
Чем колонтитул отличается от области «Подвал»?
Колонтитул печатается внизу каждого листа и настраивается для документа. Область «Подвал» — часть макета печатной формы, выводится один раз в конце и содержит итоги и реквизиты.
Как вставить номер страницы в подвал?
В окне колонтитулов нажмите кнопку вставки номера страницы. Для формата «страница N из M» добавьте рядом кнопку вставки общего числа страниц.
Почему подвал съезжает на отдельный лист?
Основная таблица заняла всю страницу, и подвал не поместился. Задайте области запрет разрыва страницы внутри неё или уменьшите высоту строк таблицы.
Можно ли поставить в подвал факсимиле подписи?
Технически да — как рисунок в области макета. Но для счетов-фактур и первички факсимиле рискованно: там нужна собственноручная или квалифицированная электронная подпись. Для внутренних документов допустимо.