helpf.pro
Регистрация
 +1 
Распечатать

Как в СКД повторять шапку на каждой странице при печати и вывести колонтитулы?

Нужно выводить на каждой странице отчета, шапку. Отчет сделан через СКД (Схема компоновки данных). В схеме есть макет, в нем есть ячейки шапки.

Для этого используется метод - ПовторятьПриПечатиСтроки, о нем я уже писал: Как при печати выводить шапку на каждой странице (ПовторятьПриПечатиСтроки)?

Код кнопки формирования отчета:

Код 1C v 8.3
 СводнаяКартаРезультат = Новый ТабличныйДокумент;
   
ПечатьСводнойКартыНаСервере(СводнаяКартаРезультат);
СводнаяКартаРезультат.Показать("СводнаяКарта");

Процедура вывода отчета:

Код 1C v 8.3
 &НаСервере
Процедура ПечатьСводнойКартыНаСервере(СводнаяКартаРезультат)   
   СхемаКомпоновкиДанных = Справочники.Номенклатура.ПолучитьМакет("МакетСводнаяКарта");   
   
   СводнаяКартаРезультат.ПовторятьПриПечатиСтроки = СводнаяКартаРезультат.Область(7, , 7); // <- Строки вывода повторения нужно считать в уже результате вывода, а не в макете!
   
   Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;
      
   НомеклатураСсылка = Настройки.ПараметрыДанных.Элементы.Найти("НоменклатураСсылка");   
   НомеклатураСсылка.Значение = Объект.Ссылка;
   НомеклатураСсылка.Использование = Истина;
   
   ДанныеРасшифровки = Новый ДанныеРасшифровкиКомпоновкиДанных;
   КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;

   МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных,Настройки, ДанныеРасшифровки);

   ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
   ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,,ДанныеРасшифровки);

   ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   ПроцессорВывода.УстановитьДокумент(СводнаяКартаРезультат);
   //ПроцессорВывода.ОтображатьПроцентВывода = Истина;
   
   ПроцессорВывода.НачатьВывод();
   ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных, Истина);   
   ПроцессорВывода.ЗакончитьВывод();
   
КонецПроцедуры

Если дополнительно нужно вывести колонтитулы, 

тогда:

Код 1C v 8.3
 // Верхний колонтитул 
ТабДок.ВерхнийКолонтитул.Выводить = Истина;
ТабДок.ВерхнийКолонтитул.НачальнаяСтраница = 2;
ТабДок.ВерхнийКолонтитул.Шрифт = Новый Шрифт(Результат.ВерхнийКолонтитул.Шрифт, , , , Истина);
ТабДок.ВерхнийКолонтитул.ТекстСлева = "Заголовок отчета";
ТабДок.ВерхнийКолонтитул.ТекстВЦентре = "Стр. [&НомерСтраницы] из [&СтраницВсего]";
ТабДок.ВерхнийКолонтитул.ТекстСправа = "Дата/время печати: [&Дата]/[&Время]";

// Нижний колонтитул
ТабДок.НижнийКолонтитул.Выводить = Истина;
ТабДок.НижнийКолонтитул.Шрифт = Новый Шрифт(Результат.ВерхнийКолонтитул.Шрифт, , , , Истина);
ТабДок.НижнийКолонтитул.ТекстВЦентре = "Заголовок отчета";
Разместил:   Версии: | 8.2 УП | 8.3 |  Дата:   Прочитано: 24077
 +1 
Распечатать
Возможно, вас также заинтересует
PostgreSQL: установка, настройка, обслуживание 11
PostgreSQL напрямую "из коробки" применяться для использования с 1С Предприятем не может. Необходима именно адаптированная версия от 1С, превращающая PostgreSQL в блокировочник, причем нужно понимать, что блокировки будут накладываться на всю таблиц
Автоматическая установка ширины колонки табличного документа. 0
Процедура, которая " примерно" делает автоширину колонок (навроде, как если бы выделить все колонки и дважды щелкнуть мышкой по границе заголовка колонки). Привожу текст, работает неахти, но лучше чем ничего: Процедура РасчетШириныКолонок(Табличный
Внешние обработки, печатные формы, обработки по заполнению табличных частей 3
Справочник «Внешние обработки, печатные формы, обработки по заполнению табличных частей» содержит список произвольных обработок, произвольных отчетов, дополнительных печатных форм, обработок для заполнения ТЧ объектов, обработок, подключаемых к отч
Внутреннее устройство PostgreSQL, в помощь администраторам 1С 1
Понимание архитектуры используемой СУБД очень важно для правильной эксплуатации, но местами переоценено: администратору, DevOps-специалисту или разработчику прикладных систем вовсе необязательно знать подробности внутреннего устройства B-дерева или
Временные таблицы, что из себя представляют и как с ними работать? 7
Временные таблицы - хранятся на сервере и позволяют писать более простые запросы. Временные таблицы хранятся в объекте типа МенеджерВременныхТаблиц . Когда этот объект уничтожается, уничтожаются и временные таблицы. Чтобы создать временную таблицу
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.