Экспорт отчета с постраничным разбиением в XML (построитель отчетов)

Область применения:✅ Конструктор отчетов Microsoft построитель отчетов (SSRS) ✅ Power построитель отчетов ✅ BI конструктор отчетов в SQL Server Data Tools

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

Примечание.

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

Элементы отчета

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

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

Отчеты, подготовленные к просмотру с помощью модуля подготовки XML-отчетов, следуют следующим правилам.

  • Элементы и атрибуты XML готовятся к просмотру в том порядке, в котором они перечислены в определении отчета.

  • Разбиение на страницы не учитывается.

  • Верхние и нижние колонтитулы страницы не отображаются.

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

  • Images, lines, and custom report items не учитываются.

Типы данных

Элемент или атрибут текстового поля назначается типу данных XSD в зависимости от значений, отображаемых в текстовом поле.

Если все значения текстового поля имеют тип Назначается тип данных
Int16, Int32, Int64, UInt16, UInt32, UInt64, Byte, SByte xsd:integer
Decimal (или Decimal и любое целое число или тип данных byte) xsd:decimal
Float (или Decimal и любое целое число или тип данных byte) xsd:float
Double (или Decimal и любое целое число или тип данных byte) xsd:double
DateTime или DateTime Offset xsd:dateTime
Time xsd:string
Boolean xsd:boolean
String, Char xsd:string
Другие xsd:string

Правила отрисовки, относящиеся к XML

В следующих разделах описывается, как модули отрисовки XML интерпретируют элементы в отчете.

Текст отчета

Отчет готовится к просмотру как корневой элемент XML-документа. Имя элемента происходит из свойства, заданного DataElementNameв области свойств .

Определения пространств имен XML и ссылочные атрибуты схемы также включаются в элементы отчета. Переменные отмечены в <>:

<<Report> xmlns="<SchemaName>" xmlns:xsi="<http://www.w3.org/2001/XMLSchema-instance>" xsi:<schemaLocation>="<SchemaNameReportURL>&amp;rc%3aSchema=true" Name="ReportName">

Переменные могут принимать следующие значения.

Имя. Значение
Отчет Report.DataElementName
ReportURL URLEncoded — абсолютный URL-адрес отчета на сервере.
Имя схемы Report.SchemaName. Если значение NULL, то Report.Name. Если Report.Name используется, то значение сначала закодировано с XmlConvert.EncodeLocalNameпомощью .
ReportName Имя отчета.

Текстовые поля

Текстовые поля отображаются как элементы или атрибуты в соответствии со свойством DataElementStyle RDL. Имя элемента или атрибута поступает из TextBox.DataElementName свойства RDL.

Диаграммы, гистограммы и спарклайны

Диаграммы, гистограммы и спарклайны отображаются в ФОРМАТЕ XML. Данные структурируются.

Датчики и индикаторы

Датчики и индикаторы готовятся к просмотру в формате XML. Данные структурируются.

Вложенные отчеты

Вложенный отчет подготавливается к просмотру как элемент. Имя элемента берется из DataElementName свойства RDL. Параметр TextBoxesAsElements свойства отчета переопределяет значение вложенного отчета. Пространство имен и атрибуты XSLT не добавляются в вложенный элемент отчета.

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

Прямоугольник подготавливается к просмотру как элемент. Имя элемента данных, взятое из свойства RDL DataElementName.

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

CustomReportItems (CRI) не отображается для модуля отрисовки. Если в отчете существует пользовательский элемент, модуль подготовки отчетов отобразит его как обычный элемент отчета.

Изображения

Изображения не отображаются.

Позиции

Строки не отображаются.

Таблицы, матрицы и списки

Таблицы, матрицы и списки подготавливаются к просмотру как элементы. Имя элемента исходит из свойства RDL Табликса DataElementName .

Строки и столбцы

Столбцы подготавливаются к просмотру внутри строк.

Угол табликса

Угол не отображается. Подготавливается к просмотру только содержимое угла.

Ячейки табликса

Ячейки табликса подготавливаются к просмотру как элементы. Имя элемента берется из свойства RDL ячейки DataElementName .

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

Автоматические промежуточные итоги табликса не отображаются.

Элементы строк и столбцов, которые не повторялись с группой

Элементы, которые не повторяются с группой, например метки, промежуточные итоги и итоги, отображаются в виде элементов. Имя элемента происходит из TablixMember.DataElementName свойства RDL.

Свойство TablixMember.DataElementOutput RDL определяет, отображается ли необработаемый элемент.

DataElementName Если свойство элемента Tablix не указано, то имя неустранимого элемента создается динамически в этой форме:

RowX: для неустранимых строк, где X является отсчитывающим от нуля индексом строк в текущем родительском элементе.

ColumnY: для неустранимых столбцов, где Y ix — индекс столбцов на основе нуля в текущем родительском элементе.

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

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

Строки и столбцы, повторяющиеся с группой

Строки и столбцы, повторяющиеся в группе, отображаются в соответствии с правилами Tablix.DataElementOutput . Имя элемента берется из DataElementName свойства.

Каждое уникальное значение внутри группы подготавливается к просмотру как дочерний элемент группы. Имя элемента берется из Group.DataElementName свойства.

DataElementOutput Если значение свойства равно Output, то заголовок повторяющегося элемента отображается как дочерний элемент элемента сведений.

Пользовательские форматы и преобразования XSL

XML-файлы, созданные модулем подготовки XML-отчета, можно преобразовать практически в любой формат с помощью XSL-преобразований (XSLT). Благодаря этому можно выводить данные в форматах, еще не поддерживаемых существующими модулями подготовки отчета. Прежде чем создавать собственный модуль подготовки отчета, рассмотрите возможность использования модуля подготовки XML-отчета.

Повторяющиеся имена

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

Преобразования XSLT

Модуль подготовки отчетов в формате XML может применять к исходным XML-данным преобразование XSLT на сервере. Когда к данным применяется преобразование XSLT, модуль подготовки отчетов подготавливает к просмотру преобразованное содержимое, а не исходные XML-данные. Преобразование происходит на сервере, а не на клиенте.

XSLT, применяемый к выходным данным, определяется в файле определения отчета со DataTransform свойством отчета. Кроме того, его можно указать с помощью параметра XSLT DeviceInfo .

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

Если указан XSLT-файл, как свойством DataTransform определения, так и параметром сведений об устройстве, XSLT, заданным в DataTransform первом случае, следует XSLT, заданный параметрами сведений об устройстве.

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

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

  • Преобразование (XSLT), которое должно применяться к XML-документу.

  • Тип MIME XML-документа.

  • Применять ли строки формата к данным.

  • Добавлять ли отступ к выходным XML-данным.

  • Включать или нет имя XML-схемы.

  • Шифрование XML-документа.

  • Расширение файла XML-документа.

Дополнительные сведения см. в разделе параметров сведений об устройстве XML.