Настройки компоновки данных
Глава I. Система компоновки данных в системе 1С: Предприятие
Механизм системы компоновки данных
Механизм системы компоновки данных – это основной механизм получения отчетных форм в системе «1С: Предприятие», он является одним из самых важных и в то же время сложных механизмов платформы.
Система компоновки данных представляет собой механизм, основанный на декларативном описании отчетов. Он предназначен для построения отчетов, а также вывода информации, имеющей сложную структуру и содержащий произвольный набор таблиц и диаграмм.
Система компоновки данных позволяет реализовать следующие возможности:
¾ создание отчета без программирования;
¾ использование автоматически генерируемых форм просмотра и настройки отчета;
¾ разбиение исполнения отчета на этапы;
¾ исполнение отдельных этапов построения отчета на различных компьютерах;
¾ независимое использование отдельных частей системы компоновки данных;
¾ программное управление процессом выполнения отчета.
Формирование отчета с использованием системы компоновки данных разбивается на несколько этапов. При этом разбиение на этапы - не логическое, а физическое. То есть в каждый из этих этапов разработчик может вмешаться, программно или визуально, выполнить различные этапы компоновки данных в различных модулях и даже на различных компьютерах.
Основные элементы системы компоновки данных представлены на схеме (рис.1).
Рис. 1. Структура системы компоновки данных
Схема компоновки данных описывает суть данных, которые предоставляются отчету (откуда получать данные и как можно управлять компоновкой данных). Представляет собой базу, на основе которой могут быть сформированы всевозможные отчеты. Схема компоновки данных может содержать:
¾ текст запроса с инструкциями системы компоновки данных;
¾ описание нескольких наборов данных;
¾ подробное описание доступных полей;
¾ описание связей между несколькими наборами данных;
¾ описание параметров получения данных;
¾ описание макетов полей и группировок.
Процесс разработки отчета с помощью системы компоновки данных и его дальнейшего использования на практике реализуется следующим образом.
Исходя из прикладной задачи, для которой разрабатывается отчет, разработчик создает схему компоновки данных, в которой описывает наборы данных, связи между ними, определяет поля отчета, параметры получения данных и т.п., а также задает стандартные настройки компоновки данных — структуру отчета, порядок, отбор и другие.
У каждого отчета разработчик может предусмотреть несколько вариантов настроек, представляющих данные в виде диаграммы, таблицы или группировок, имеющих различный состав полей, итогов и т.п. Разработчик может описать, какие настройки отчета будут доступны пользователю (пользовательские настройки) и какие из этих настроек будут присутствовать прямо в форме отчета (быстрые пользовательские настройки). С их помощью пользователь может настроить вариант отчета под себя и сохранить его для дальнейшего использования.
Пользователь запускает отчет. При его формировании выполняется программная компоновка данных и вывод результатов компоновки пользователю. Данные в отчете выводятся в соответствии со стандартными настройками для основного варианта отчета.
Пользователь может выбрать вариант отчета, являющийся с его точки зрения наиболее информативным, а может, при желании и соответствующей квалификации, задать собственные настройки и получить другой отчет, основанный на той же схеме компоновки данных. При этом данные будут представлены в соответствии с пользовательскими настройками.
Таким образом, на основе одной схемы компоновки данных может быть получено множество различных отчетов. Применение настроек компоновки данных, созданных разработчиком или измененных пользователем, к схеме компоновки данных и определяет конечный результат.
Настройки компоновки данных
Настройки компоновки данных описывают все, что может настроить разработчик или пользователь в некоторой установленной схеме компоновки данных. Настройки компоновки данных могут содержать:
¾ отбор;
¾ упорядочивание;
¾ условное оформление;
¾ структуру отчета (составные части будущего отчета);
¾ параметры получения данных;
¾ параметры вывода данных;
¾ и др.
Макет компоновки данных представляет собой уже готовое описание того, как должен быть сформирован отчет. В нем соединяется схема компоновки и настройки компоновки. Фактически макет компоновки данных представляет собой результат применения конкретных настроек к схеме компоновки и является готовым заданием процессору компоновки на формирование отчета нужной структуры с учетом конкретных настроек.
Результат компоновки данных представляется набором элементов результата компоновки данных. Как самостоятельная логическая сущность результат компоновки данных не существует, существуют только его элементы. Элементы результата компоновки данных можно вывести в табличный документ для представления их пользователю, или в другие виды документов. Также имеется возможность программного вывода элементов результата компоновки в объекты вида Дерево значений или Таблица значений.
Работа с системой компоновки данных в конфигурации.
Система компоновки данных интегрирована в объект конфигурации Отчет. Это позволяет создавать отчеты без программирования.
У объекта конфигурации Отчет реализовано свойство "Основная схема компоновки данных" (рис.2):
Рис.2 Основная схема компоновки данных
При нажатии кнопки открытия для этого свойства, вызывается конструктор макета, который позволяет создать макет отчета, содержащий схему компоновки данных (рис.3):
Рис.3 Конструктор макета компоновки данных
После нажатия кнопки "Готово" будет открыт конструктор схемы компоновки данных (рис.4):
Рис.4 Конструктор схемы компоновки данных
Конструктор схемы компоновки данных позволяет описать исходные данные, которые будет использовать отчет: наборы данных, связи между наборами данных, вычисляемые поля, ресурсы и т.д.
Также конструктор схемы компоновки данных предоставляет возможность описать настройки компоновки данных, которые будут использоваться по умолчанию (в том случае, если пользователь не задаст собственные настройки). Настройки компоновки данных могут быть созданы с помощью специального конструктора настроек компоновки данных, или вручную (рис.5):
Рис.5 Настройки компоновки данных
После выполнения этих действий отчет готов. В режиме 1С:Предприятие система автоматически, на основании схемы компоновки данных, содержащейся в отчете, может создать форму отчета и форму настроек отчета.
Таким образом пользователь просто запускает отчет и получает результат в соответствии с теми настройками, которые описал разработчик (рис.6):
Рис.6 Готовый отчет
При необходимости пользователь может открыть форму настроек отчета и отредактировать их, изменить структуру отчета и т.д. аналогично тому, как это делает разработчик в режиме конфигуратора.