Нумерация страниц в печатной форме

Версия для печатиPDF-версия

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

1. Добавить в макет новую область, служащую для отображения номера страницы. В нужное место области вставить параметр НомерСтраницы.

Добавление новой области в макет

2. В процедуре печати в цикл вывода табличной части в печатную форму добавить проверку возможности вывода текущей строки и вывод области с номером страницы.

Пример

Код до изменения:

	Пока Выборка.Следующий() Цикл 
		ОбластьМакета = Макет.ПолучитьОбласть("Строка");
		ОбластьМакета.Параметры.Заполнить(Выборка);
		ТабДокумент.Вывести(ОбластьМакета);
	КонецЦикла;

Код после изменения:

	ОбластьНоваяСтраница = Макет.ПолучитьОбласть("НоваяСтраница");
	НомерСтраницы = 2;
	
	Пока Выборка.Следующий() Цикл 
		ОбластьМакета = Макет.ПолучитьОбласть("Строка");
		ОбластьМакета.Параметры.Заполнить(Выборка);
		
		Если Не ТабДокумент.ПроверитьВывод(ОбластьМакета) Тогда 
			ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
			ОбластьНоваяСтраница.Параметры.НомерСтраницы = НомерСтраницы;
			ТабДокумент.Вывести(ОбластьНоваяСтраница);
			НомерСтраницы = НомерСтраницы + 1;
		КонецЕсли;
		
		ТабДокумент.Вывести(ОбластьМакета);
	КонецЦикла;
Полезность материала: 
5
Ваша оценка: Нет Средняя: 5 (2 оценок)
Оцените полезность материала

Комментарии

1. Не работает. Проверил дважды.

Обработку в студию.

Слегка переделеал ваш код, чтобы выводить страницу с первой строки: Добавил область "ОбластьТест" высотой 2 строки

    ОбластьНоваяСтраница = Макет.ПолучитьОбласть("НоваяСтраница");

    ОбластьТест = Макет.ПолучитьОбласть("ОбластьТест");
    НомерСтраницы = 1;
      
        Если Не ТабДокумент.ПроверитьВывод(ОбластьТест) Тогда
            ОбластьНоваяСтраница.Параметры.НомерСтраницы = НомерСтраницы;
            ТабДокумент.Вывести(ОбластьНоваяСтраница);
            НомерСтраницы = НомерСтраницы + 1;
            ТабДокумент.ВывестиГоризонтальныйРазделительСтраниц();
            ТабДокумент.Вывести(ОбластьМакетаЗаголовокТаблицы);
        КонецЕсли;

       
 

© При копировании материалов сайта ссылка на оригинал обязательна.