Создание веб-каналов данных из отчетов (построитель отчетов)

Модуль отрисовки Atom служб Reporting Services создает документ службы Atom, который содержит веб-каналы данных, доступные в отчете с разбивкой на страницы, и веб-каналы данных из регионов данных в отчете. Этот модуль используется для формирования совместимых с Atom потоков данных, которые допускают чтение и обмен данными с приложениями, которые потребляют потоки данных, формируемые отчетами. Модуль подготовки отчетов Atom можно применить, например, для формирования веб-каналов данных, которые будут использоваться в Power Pivot или Power BI.

Сервисный документ Atom содержит сведения по меньшей мере об одном потоке данных для каждой области данных отчета. В зависимости от типа области данных и отображаемых данных в регионе данных службы Reporting Services могут создавать несколько веб-каналов данных из региона данных. Несколько потоков данных может породить, к примеру, матрица или диаграмма. Когда модуль подготовки отчетов Atom создает сервисный документ Atom, для каждого потока данных создается уникальный идентификатор, который упоминается в URL-адресе для доступа к содержимому потока данных.

Метод формирования модулем подготовки отчетов Atom данных для потока данных аналогичен методу, при помощи которого модуль подготовки отчетов в формате CSV формирует данные для CSV-файла. Как и CSV-файл, поток данных содержит плоское представление данных отчета. Например, таблица с группой строк, которая суммирует продажи в группе, повторяет сумму в каждой строке данных и не существует отдельной строки, содержащей только сумму.

Вы можете создавать документы службы Atom и веб-каналы данных с помощью веб-портала служб Reporting Services, сервера отчетов или сайта SharePoint, интегрированного со службами Reporting Services.

Atom отвечает двум родственным стандартам. Сервисный документ Atom соответствует спецификациям протокола публикации RFC 5023 Atom, а потоки данных соответствуют спецификациям протокола формата синдикации RFC 4287 Atom.

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

Создать и изменить определение для отчета на страницу (RDL-файл) можно с помощью построителя отчетов (Майкрософт), построителя отчетов Power BI и конструктора отчетов в SQL Server Data Tools.

Отчеты в виде веб-каналов данных

Вы можете экспортировать рабочий отчет в виде веб-канала данных или создать отчет, основной целью которого является предоставление данных в виде веб-каналов данных в приложения. Используя отчеты в качестве веб-канала данных, вы можете предоставлять данные приложениям, когда данные не легко получить через поставщиков данных клиента. Кроме того, их можно использовать в качестве канала данных, если вы предпочитаете скрыть сложность источника данных и упростить использование данных. Еще одним преимуществом использования данных отчета в качестве канала данных является использование функций служб Reporting Services. К этим функциям относятся безопасность, планирование и моментальные снимки отчетов для управления отчетами, предоставляющими веб-каналы данных.

Чтобы получить максимальную отдачу от модуля подготовки отчетов Atom, необходимо разобраться в том, как отчет преобразуется в потоки данных. Если вы используете существующие отчеты, можно спрогнозировать, какие каналы данных создают отчеты. Если вы пишете отчет специально для использования в качестве веб-каналов данных, вы можете включить данные и точно настроить макет отчета, чтобы максимально повысить полезность веб-каналов данных.

Дополнительные сведения см. в разделе "Создание веб-каналов данных" из отчета (построитель отчетов и служб SSRS).

Документ службы Atom (ATOMVC-файл)

Сервисный документ Atom определяет связь с одним или несколькими веб-каналами данных. В простейшем варианте это просто URL-адрес службы, порождающей поток данных.

При подготовке данных отчета с помощью модуля Atom сервисный документ Atom содержит список потоков данных, доступных для отчета. Этот документ содержит сведения по меньшей мере об одном потоке данных для каждой области данных отчета. Таблицы и датчики создают только один канал данных, но матрицы, списки и диаграммы могут создавать несколько веб-каналов в зависимости от отображаемых данных.

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

Схема отчета, использующего две таблицы и диаграмму.

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

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

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

Сервисный документ Atom, сформированный на основе этого отчета, включает два потока данных, по одному для каждого динамического однорангового столбца: «Территория» и «Год». Следующая диаграмма показывает содержимое каждого из этих потоков данных.

Схема содержимого каждого веб-канала.

Веб-каналы данных

Веб-канал данных — это XML-файл с согласованным табличным форматом, который не изменяется с течением времени и переменными данными, которые могут отличаться при каждом запуске отчета. Каналы данных, созданные службами Reporting Services, находятся в том же формате, что и эти каналы, созданные этим ADO.NET службами данных.

Поток данных содержит два раздела: заголовок и данные. Элементы каждого раздела определяются спецификациями Atom. Заголовок содержит такие сведения, как схема кодирования символов, используемая веб-каналами данных.

Раздел заголовка

Следующий код XML иллюстрирует раздел заголовка потока данных.

<?xml version="1.0" encoding="utf-8" standalone="yes"?><feed xmlns:d="https://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="https://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">

<title type="text"></title>

<id>uuid:1795992c-a6f3-40ec-9243-fbfd0b1a5be3;id=166321</id>

<updated>2009-05-08T23:09:58Z</updated>

Раздел данных

Раздел данных веб-каналов данных содержит по одному элементу <entry> для каждой строки плоского набора строк, сформированного модулем подготовки отчетов Atom.

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

Схема отчета, использующего группы и итоги.

В приведенном ниже коде XML показан элемент <entry> из этого отчета в веб-канале данных. Обратите внимание, что элемент <entry> включает итоговые значения по продажам и заказам для группы и итоговые значения по продажам и заказам для всех групп. Элемент <entry> включает все значения отчета.

<entry><id>uuid:1795992c-a6f3-40ec-9243-fbfd0b1a5be3;id=166322</id><title type="text"></title><updated>2009-05-08T23:09:58Z</updated><author /><content type="application/xml"><m:properties>

<d:ProductCategory_Value>Accessories</d:ProductCategory_Value>

<d:OrderYear_Value m:type="Edm.Int32">2001</d:OrderYear_Value>

<d:SumLineTotal_Value m:type="Edm.Decimal">20235.364608</d:SumLineTotal_Value>

<d:SumOrderQty_Value m:type="Edm.Int32">1003</d:SumOrderQty_Value>

<d:SumLineTotal_Total_2_1 m:type="Edm.Decimal">1272072.883926</d:SumLineTotal_Total_2_1>

<d:SumOrderQty_Total_2_1 m:type="Edm.Double">61932</d:SumOrderQty_Total_2_1>

<d:SumLineTotal_Total_2_2 m:type="Edm.Decimal">109846381.399888</d:SumLineTotal_Total_2_2>

<d:SumOrderQty_Total_2_2 m:type="Edm.Double">274914</d:SumOrderQty_Total_2_2></m:properties></content>

</entry>

Работа с веб-каналами данных

Все потоки данных, формируемые отчетом, включают элементы отчета, находящиеся в области видимости родительского элемента области данных, породившей потоки данных. Представьте, что отчет содержит несколько таблиц и одну диаграмму. Текстовые поля в тексте отчета содержат описательный текст каждого региона данных. Каждая запись в каждом потоке данных, формируемом отчетом, включает значение такого текстового поля. Например, если задан текст «Диаграмма отображает средние ежемесячные продажи по региону продаж», то этот текст будет включен в каждую строку всех трех потоков данных.

Если макет отчета содержит иерархические отношения между данными, например, вложенные области данных, эти отношения будут включены в плоский набор строк данных отчета.

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

Когда модуль подготовки отчетов Atom создает сервисный документ Atom, для потока данных создается уникальный идентификатор, который упоминается в URL-адресе для доступа к содержимому потока данных. Пример документа службы Atom, показанного ранее, содержит URL-адрес https://ServerName/ReportServer?%2fProduct+Sales+Summary&rs%3aCommand=Render&rs%3aFormat=ATOM&rc%3aItemPath=Tablix1. URL-адрес определяет отчет (сводка по продажам продукта), формат отрисовки Atom (ATOM) и имя элемента отчета (Tablix1).

Имена элементов отчета по умолчанию являются именами элементов языка определения отчета (RDL), и часто они не интуитивно понятны или просты в памяти. Например, имя по умолчанию первой матрицы, размещенной в отчете Tablix1. Потоки данных также будут использовать эти имена.

Для упрощения работы с веб-каналом данных можно воспользоваться свойством DataElementName области данных для выбора понятных имен. Если указать значение DataElementName, используется подэлемент <d> канала данных вместо имени региона данных по умолчанию. Например, если имя области данных по умолчанию заданоTablix1, <d>DataElementNameSalesByTerritoryYear то в веб-канале данных используется SalesByTerritoryYearимя по умолчанию. Если в регионе данных есть два канала данных, такие как отчет матрицы, описанные ранее, имена, используемые в веб-каналах данных, и SalesByTerritoryYear _TerritorySalesByTerritoryYear _Year.

Если сравнить данные каждого из отчетов с данными потока данных, можно заметить определенные отличия. В отчетах часто отображаются отформатированные числовые и датовые данные, а веб-канал данных содержит неформатированные данные.

Веб-канал данных сохраняется с расширением .atom имени файла. Для просмотра структуры и содержимого такого файла можно использовать любой редактор текста или XML, например, «Блокнот » или XML Editor.

Неструктурированные данные отчета

Модуль Atom представляет данные отчета в виде плоских наборов строк в формате XML. Правила для плоских таблиц данных совпадают с правилами отрисовщика CSV с несколькими исключениями:

  • Элементы в области видимости выравниваются до детального уровня. В отличие от модуля подготовки отчетов в формате CSV, текстовые поля верхнего уровня появляются в каждой записи потока данных.

  • Значения параметров отчета включаются в каждую выходную строку.

Иерархические и группированные данные должны быть переведены в плоский формат, чтобы их можно было представить в формате модуля Atom. Модуль подготовки отчетов делает отчет плоским, преобразуя его в древовидную структуру, отображающую вложенные группы области данных. При выравнивании отчета возникают следующие результаты:

  • Иерархия строк выполняется до иерархии столбцов.

  • Сначала в потоке данных отображаются элементы иерархии строк, затем элементы иерархии столбцов.

  • Столбцы упорядочены следующим образом: текстовые поля в тексте отчета — слева направо, сверху вниз, а затем области данных — слева направо, сверху вниз.

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

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

Дополнительные сведения см. в таблицах, матрицах и списках (построитель отчетов и SSRS).

Правила отрисовки Atom

Модуль подготовки отчетов Atom игнорирует следующие сведения при подготовке потоков данных.

  • Форматирование и макет

  • Верхний колонтитул страницы

  • Нижний колонтитул страницы

  • Пользовательские элементы отчета

  • Прямоугольники

  • Позиции

  • Изображения

  • Автоматические подытоги

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

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

Товар Поведение при подготовке к просмотру
Таблица Подготовка путем разворачивания таблицы и создания строки и столбца для каждой строки и столбца на самом низком уровне детализации. Промежуточные строки и столбцы не имеют заголовков столбцов или строк. Отчеты детализации не поддерживаются.
«Матрица» Подготовка с развертыванием таблицы и созданием строки и столбца для каждой строки и столбца на самом низком уровне детализации. Промежуточные строки и столбцы не имеют заголовков столбцов или строк.
List Подготовка записи для каждой отдельной строки или экземпляра в списке.
Вложенный отчет Родительский элемент повторяется для каждого экземпляра содержимого.
Диаграмма Подготовка записи со всеми метками диаграммы для каждого значения диаграммы. Метки для рядов и категорий в иерархиях приводятся к плоскому формату и включаются в строку для значения диаграммы.
Гистограмма Отображается как диаграмма. Как правило, панель данных не включает иерархии или метки.
Спарклайн Отображается как диаграмма. Как правило, спарклайн не включает иерархии или метки.
Показатели Подготавливает единственную запись с минимальным и максимальным значениями линейной шкалы, начальным и конечным значениями диапазона и значением указателя.
Индикатор Отображается как единственная запись с названием активного состояния, состояний доступности и значений данных.
Карта Создается поток данных для каждой области данных карты. Если для одной области карты используется несколько слоев карты, то они все включаются в поток данных. Поток данных включает запись с метками и значениями для всех элементов карты слоя карты.

Настройки сведений об устройстве

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

Есть еще вопросы? Посетите форум служб Reporting Services.