Результат компоновки можно использовать для дальнейшей программной обработки и выводить таблицу значений или дерево значений. Для этого предназначен объект ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений. Метод УстановитьОбъект() является аналогом метода УстановитьДокумент(). Если метод УстановитьОбъект() не был вызван, результат будет выведен в таблицу значений.
Элементы результата компоновки могут быть получены при помощи процессора компоновки данных либо сформированы любыми другими средствами.
В приведенном примере результат компоновки данных выводится в дерево значений – переменную ДеревоРезультата.
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновкиДанных = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки, , , Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений"));
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных);
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВКоллекциюЗначений;
ПроцессорВывода.УстановитьОбъект(ДеревоРезультата);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
При выводе результата компоновки в таблицу или дерево значений существуют следующие ограничения:
- в настройках должны присутствовать только группировки и детальные записи. Использование таблиц, диаграмм и вложенных отчетов не допускается;
- все папки, указанные в выбранных полях, игнорируются;
- не используется условное оформление, а также оформление для поля, указанное в схеме компоновки данных;
- из параметров вывода используются только следующие:
- расположение общих итогов по вертикали;
- тип заголовка полей;
- количество записей;
- процент записей;
- предопределенные макеты не используются.
Если при выполнении ругается "Неизвестный тип макета", значит забыл указать Тип("ГенераторМакетаКомпоновкиДанныхДляКоллекцииЗначений") при выполнении компановщика макета.
Если надо вывести дерево на форму, то не забываем сформировать структуру элементов дерева на форме, так как переносятся данные только по совпадающим полям.
|