Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
ОБЛАСТЬ ПРИМЕНЕНИЯ: Power BI построитель отчетов
Power BI Desktop
Язык определения отчета (RDL) — это XML-представление определения отчета с разбивкой на страницы. Определение отчета содержит сведения о получении данных и о макете для отчета. RDL состоит из XML-элементов, которые соответствуют грамматике XML, созданной для Power BI. Вы можете добавить собственные пользовательские функции для управления значениями элементов отчета, стилями и форматированием, доступом к блокам кода в файлах определения отчета.
Применение языка определения отчетов способствует повышению уровня функциональной совместимости коммерческих продуктов формирования отчетов, поскольку позволяет определить общую схему, которая обеспечивает обмен определениями отчетов. Любой протокол или программный интерфейс, работающий с XML, может использоваться с языком определения отчетов (RDL). RDL это:
- Схему XML для определений отчетов.
- Формат обмена для организаций и сторонних разработчиков.
- Расширяемую и открытую схему, поддерживающую дополнительные пространства имен и пользовательские элементы.
Спецификации RDL
Описание загрузки спецификаций для конкретных версий схемы см. в разделе Спецификация языка определения отчетов.
Определение схемы XML RDL
Файл языка определения отчета (RDL) проверяется с помощью файла определения схемы XML (XSD). Схема определяет правила того, где элементы RDL могут находиться в файле .rdl. Элемент содержит сведения о своем типе данных и кардинальности, то есть допустимом количестве вхождений. Элементы бывают простыми и составными. Простой элемент не включает дочерних элементов и атрибутов. Составной элемент, напротив, содержит дочерние элементы и, возможно, атрибуты.
Например, следующая схема включает элемент ReportParameters, который является сложным типом ReportParametersType. В соответствии с принятым соглашением обозначением сложного типа для элемента является имя элемента, за которым следует слово Type. Элемент ReportParameters может входить в элемент Report (сложного типа) и в свою очередь содержать элементы ReportParameter . ReportParameterType — это простой тип, который может принимать только одно из следующих значений: Boolean, DateTime, Integer, Floatили String. Дополнительные сведения о типах данных схем XML см. в статье XML Schema Part 2: Datatypes Second Edition(Схема XML, часть 2. Типы данных, второе издание).
Создание RDL
RDL имеет открытый и расширяемый характер, что позволяет создавать различные инструменты и приложения, генерирующие RDL на основе его XML схемы.
Power BI построитель отчетов — это предпочтительный способ создания отчетов на основе языка RDL с разбивкой на страницы.
Одним из самых простых способов создания RDL из приложения является использование классов пространства имен System.Xml и System.Linq платформы Microsoft .NET Framework. Класс XmlTextWriter может использоваться для записи RDL. С помощью XmlTextWriter можно создать полное определение отчета от начала до конца в любом приложении платформа .NET Framework. Разработчики также могут расширять RDL, добавляя пользовательские элементы отчета с пользовательскими свойствами. Дополнительные сведения о классе XmlTextWriter и System.Xml пространстве имен см. в Руководстве разработчика Microsoft .NET Framework. Дополнительные сведения о технологии работы с запросами LINQ можно получить, воспользовавшись поиском по запросу «LINQ to XML» на сайте MSDN.
Для файлов определения отчета стандартным расширением файла является RDL. Тип MIME — text/xml.
Типы RDL
Следующая таблица содержит список типов, используемых в элементах и атрибутах RDL.
| Тип | Описание |
|---|---|
| Бинарный | Свойство с закодированным в base-64 двоичным значением. |
| Boolean | Свойство объекта со значением true или false . Если иное не указано, то значением дополнительного объекта Boolean будет False. |
| Дата | Свойство с полностью указанной датой или датой-временем в формате даты ISO8601: YYYY-MM-DD[THH:MM[:SS[.S]]]. |
| Enum | Свойство со строковым значением, которое может быть одним из списка определенных значений. |
| Число с плавающей запятой | Свойство с числом с плавающей запятой. Точка (.) используется как необязательный десятичный разделитель. |
| Целое число | Свойство со значением целого типа (int32). |
| Язык | Свойство с текстовым значением, которое содержит код языка и культуры, например «en-us» для американского варианта английского языка. Значение должно быть определённым или нейтральным языком, для которого язык по умолчанию установлен в Microsoft .NET Framework. |
| Имя | Свойство со значением текстовой строки. Имена должны быть уникальны внутри пространства имен элемента. Если не указано, пространством имен для элемента считается самое внутреннее пространство имен, содержащее объект с именем. |
| NormalizedString | Свойство со значением текстовой строки, которое было нормализовано. |
| Размер | Элемент размера должен содержать число (с символом запятой, используемым в качестве необязательного десятичного разделителя). За этим числом должен следовать указатель единицы измерения длины CSS (например: cm, mm, in, pt или pc). Пробел между числом и указателем является необязательным. Дополнительные сведения о единицах измерения см. в справочнике по единицам и значениям CSS. В RDL максимальное значение Size равно 160 дюймам. Минимальный размер — 0 дюймов. |
| String | Свойство со значением текстовой строки. |
| UnsignedInt | Свойство со значением целого числа без знака (uint32). |
| Variant | Свойство, имеющее любой простой тип XML. |
Типы данных RDL
Перечисление DataType определяет тип данных атрибута, выражения или параметра в RDL. В следующей таблице показано, как типы данных общего языка runtime (CLR) соответствуют типам данных RDL.
| Типы CLR | Соответствующий тип данных |
|---|---|
| Логический | Логический |
| DateTime, DateTimeOffset | Дата/время |
| Int16, Int32, UInt16, Byte, SByte | Целое число |
| Одинарный, Двойной | Тип с плавающей запятой |
| String, Char, GUID, Timespan | Строка |