Поделиться через


Экспорт в XML

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

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

Элемент

Поведение при подготовке к просмотру

Отчет

Готовится к просмотру как элемент высшего уровня 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 or 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-адрес отчета на сервере.

SchemaName

Report.SchemaName. Если значение этого поля равно NULL, то используется переменная Report.Name. При использовании значения Report.Name оно сначала шифруется с помощью параметра XmlConvert.EncodeLocalName.

ReportName

Имя отчета.

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

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

Диаграммы

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

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

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

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

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

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

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

Изображения

Изображения не подготавливаются к просмотру.

Линии

Линии не подготавливаются к просмотру.

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

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

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

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

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

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

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

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

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

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

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

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

Свойство RDL TablixMember.DataElementOutput управляет подготовкой к просмотру неповторяющегося элемента.

Если свойство DataElementName элемента табликса не предоставлено, имя неповторяющегося элемента формируется автоматически по следующему принципу:

RowX — для неповторяющихся строк, где X — начинающийся с нуля индекс строки в текущем родительском элементе;

ColumnY — для неповторяющихся столбцов, где Y — начинающийся с нуля индекс столбца в родительском элементе.

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

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

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

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

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

Если свойство DataElementOutput имеет значение «Выводить», верхний колонтитул повторяющегося элемента выводится как дочерний элемент для элемента сведений.

Пользовательские форматы и преобразования 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-документа.

Дополнительные сведения см. в разделе Настройки сведений об устройстве в службах Reporting Services.