Ниже представлен код вывода таблицы значений в табличный документ используя схему компоновки данных.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
ТД = Новый ТабличныйДокумент(); | |
СКД = Новый СхемаКомпоновкиДанных(); | |
Источник1 = СКД.ИсточникиДанных.Добавить(); | |
Источник1.Имя = "Основной"; | |
Источник1.ТипИсточникаДанных = "Local"; | |
Набор1 = СКД.НаборыДанных.Добавить(Тип("НаборДанныхОбъектСхемыКомпоновкиДанных")); | |
Набор1.Имя = "ИмяНабора"; | |
Набор1.ИмяОбъекта = "НаборТЗ"; | |
Набор1.ИсточникДанных = "Основной"; | |
Для Каждого К ИЗ ТЗ.Колонки Цикл | |
Поле1 = Набор1.Поля.Добавить(Тип("ПолеНабораДанныхСхемыКомпоновкиДанных")); | |
Поле1.Поле = К.Имя; | |
Поле1.ПутьКДанным = К.Имя; | |
Поле1.Заголовок = К.Заголовок; | |
ПолеВыбора = СКД.НастройкиПоУмолчанию.Выбор.Элементы.Добавить(Тип("ВыбранноеПолеКомпоновкиДанных")); | |
ПолеВыбора.Поле = Новый ПолеКомпоновкиДанных(К.Имя); | |
ПолеВыбора.Использование = Истина; | |
КонецЦикла; | |
ГруппировкаКомпоновкиДанных = СКД.НастройкиПоУмолчанию.Структура.Добавить(Тип("ГруппировкаКомпоновкиДанных")); | |
ГруппировкаКомпоновкиДанных.Выбор.Элементы.Добавить(Тип("АвтоВыбранноеПолеКомпоновкиДанных")); | |
ГруппировкаКомпоновкиДанных.Порядок.Элементы.Добавить(Тип("АвтоЭлементПорядкаКомпоновкиДанных")); | |
ГруппировкаКомпоновкиДанных.Использование = Истина; | |
//Объект для создания макета компоновки данных | |
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных; | |
Попытка | |
МакетКомпоновки = КомпоновщикМакета.Выполнить(СКД, СКД.НастройкиПоУмолчанию); | |
Исключение | |
Сообщить(ОписаниеОшибки()); | |
Возврат ТД; | |
КонецПопытки; | |
//Объект, выполняющий компоновку данных. | |
ПроцессорКД = Новый ПроцессорКомпоновкиДанных; | |
ВнешнийНаборДанных = Новый Структура("НаборТЗ", ТЗ); | |
ПроцессорКД.Инициализировать(МакетКомпоновки, ВнешнийНаборДанных, , Истина); | |
//Вывожу Результат компоновки данных в табличный документ. | |
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент; | |
ПроцессорВывода.УстановитьДокумент(ТД); | |
ПроцессорВывода.Вывести(ПроцессорКД); | |
Возврат ТД; |
Комментариев нет:
Отправить комментарий