Очень часто требуется вывести в табличном документе номер текущего листа, страницы, другой информации. Эту задачу можно решить двумя способами
Если требуется вывести это в самом начале или конце, то самый простой способ использовать колонтитулы.
Колонтитулы
Это автоматически отображаемый в документе текст.
Можно управлять его шрифтом или вертикальным/горизонтальным положением текста в “ячейках” (6 зон)
Для текста существует список доступных “макропеременных”:
- [&НомерСтраницы] ([&PageNumber]) – отобразить номер листа;
- [&СтраницВсего] ([&PagesTotal]) – отобразить общее количество;
- [&Дата] ([&Date]) – отобразить текущий дату ;
- [&Время] ([&Time]) – отобразить текущее время (момент печати)
Код для вывода колонтитула
Если необходимо вывести счетчик листов внизу/справа, код будет таким:
ТабДок.ИмяПараметровПечати = “ПАРАМЕТРЫ_ПЕЧАТИ_АктСверкиВзаиморасчетов_АктСверки”;
ТабДок.НижнийКолонтитул.ТекстСправа = “Лист [&НомерСтраницы] из [&СтраницВсего]”;
ТабДок.НижнийКолонтитул.Выводить = Истина;
ТабДок.НижнийКолонтитул.НачальнаяСтраница = 1;
Важно располагать данный код после установки имени настроек печати.
Аналогично делается для верхнего колонтитула и других частей.
В режиме “Предприятие” также можно задать/убрать колонтитул в меню “Таблица\Настройки печати\Колонтитулы..” , если документ в режиме правки (меню “Таблица\Вид\Редактирование”)
Области макета
Когда же требуется вывести в середине табличного документа, например в шапке таблицы, или более сложное отображение, тогда следует использовать области.
Считать листы в таком варианте придется самостоятельно.
Для вывода нам потребуется использовать функцию
Параметры: <Таблицы> (обязательный) Тип: Массив; ТабличныйДокумент.
Массив из проверяемых таблиц или табличный документ.
- Перед выводом очередной секции создается/очищается переменная массива.
- В нее добавляется эта секция, а также секция колонтитула
- Проверяется вывод
- Если успешно: просто выводится секция, иначе выводится колонтитул
- Выводится горизонтальный разделитель страницы
- При выводе колонтитула увеличивается счетчик страниц, и сразу заполняется в секцию колонтитула
В данном случае есть риск, что не получится вывести сам колонтитул: он должен быть не большим, чтобы снизить эту вероятность, либо потребуется усложнить алгоритм, перед выводом секции проверять получится ли вывести сам колонтитул.
В случае например Торг-12, где номер страницы выводится в шапке, требуется только проверять получится ли вывести очередную строку, если нет . то просто выводится горизонтальный разделитель и “итерируется” счетчик страницы.
Изобилие товаров устраняет дефицит, широкой рекламой устраняется психическая неустойчивость.