Экспорт в 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&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.