Система компоновки данных

Платформа «1С:Предприятие» постоянно развивается, выходят новые релизы, появляются новые возможности, улучшающие и облегчающие жизнь пользователей и программистов. Одним из таких новшеств явилось закономерное преобразование построителя отчета в более функциональный инструмент – систему компоновки данных.

Построитель отчета – это объект, позволяющий на основе заданного текста запроса и настроек получить результат и вывести его в табличный документ или диаграмму. Основной задачей построителя является изменение текста запроса на основании указанных настроек, а также динамическое формирование выходных данных.

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

Возможности, предоставляемые системой компоновки данных:

  • создание отчета без программирования;
  • использование автоматически генерируемых форм просмотра и настройки отчета;
  • разбиение исполнения отчета на этапы;
  • исполнение отдельных этапов построения отчета на различных компьютерах;
  • независимое использование отдельных частей системы компоновки данных;
  • программное управление процессом выполнения отчета.

Схема компоновки данных

Исходные данные для компоновки отчета содержит в себе схема компоновки данных – это наборы данных и методы работы с ними.

Разработчик создает схему компоновки данных, в которой описывает текст запроса, наборы данных, связи между ними, доступные поля, параметры получения данных и задает первоначальные настройки компоновки – структуру отчета, макет оформления данных и др.

Рисунок 1. – Пример схемы компоновки данных

В общем виде система компоновки данных представляет собой совокупность нескольких объектов. При формировании и исполнении отчета происходит последовательная передача данных от одного объекта системы компоновки данных к другому, до получения конечного результата – документа, показанного пользователю.

Последовательность работы системы компоновки можно представить в виде следующей схемы:

Алгоритм взаимодействия этих объектов выглядит следующим образом: разработчик создает схему компоновки данных и настройки по умолчанию. В общем случае на основе одной схемы компоновки данных может быть создано большое количество различных отчетов. Настройки компоновки данных – создаваемые разработчиком или изменяемые пользователем – определяют, какой именно отчет будет получен в конкретном случае.

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

Процессор компоновки данных выбирает данные из информационной базы согласно макету компоновки, агрегирует и оформляет эти данные.

Результат компоновки обрабатывается процессором вывода, и в итоге пользователь получает результирующий табличный документ.

Система компоновки данных повсеместно приходит на смену построителю отчетов. Так, полностью переработана всем известная стандартная обработка КонсольОтчетов.еpf, многие отчеты в типовых конфигурациях переписываются с ее использованием.

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

Примеры создания отчета с использованием системы компоновки данных «1С:Предприятие 8» можно найти по адресу http://v8.1c.ru/overview/dcs_sample_report.htm или на диске информационно-технологического сопровождения (ИТС).

Также можно увидеть рассматриваемый механизм в действии в бесплатно распространяемой конфигурации «Примеры 8.1».