Linguagem de Definição de Relatório (RDL)
APLICA-SE A: Power BI Report Builder Power BI Desktop
A linguagem RDL (Report Definition Language) é uma representação XML de uma definição de relatório paginada. Uma definição de relatório contém informações de recuperação de dados e layout para um relatório. RDL é composto de elementos XML que correspondem a uma gramática XML criada para o Power BI. Você pode adicionar suas próprias funções personalizadas para controlar valores, estilos e formatação de itens de relatório acessando blocos de código em arquivos de definição de relatório.
O RDL promove a interoperabilidade de produtos de relatórios comerciais definindo um esquema comum que permite o intercâmbio de definições de relatório. Qualquer protocolo ou interface programática que funcione com XML pode ser usado com RDL. RDL é:
- Um esquema XML para definições de relatório.
- Um formato de intercâmbio para empresas e terceiros.
- Um esquema extensível e aberto que suporta namespaces adicionais e elementos personalizados.
Especificações RDL
Para baixar especificações para versões específicas do esquema, consulte Especificação da linguagem de definição de relatório.
Definição de esquema XML RDL
O arquivo RDL (Report Definition Language) é validado usando um arquivo XSD (XML Schema Definition). O esquema define as regras para onde os elementos RDL podem ocorrer em um arquivo .rdl. Um elemento inclui seu tipo de dados e cardinalidade, ou seja, o número de ocorrências permitidas. Um elemento pode ser simples ou complexo. Um elemento simples não tem elementos filho ou atributos. Um elemento complexo tem filhos e, opcionalmente, atributos.
Por exemplo, o esquema inclui o elemento RDL ReportParameters, que é o tipo complexo ReportParametersType. Por convenção, um tipo complexo para um elemento é o nome do elemento seguido pela palavra Type. Um elemento ReportParameters pode ser contido pelo elemento Report (um tipo complexo) e pode conter elementos ReportParameter. Um ReportParameterType é um tipo simples que só pode ser um dos seguintes valores: Boolean, DateTime, Integer, Float ou String. Para obter mais informações sobre tipos de dados do esquema XML, consulte Esquema XML Parte 2: Datatypes Second Edition.
Criando RDL
Devido à natureza aberta e extensível do RDL, uma variedade de ferramentas e aplicativos podem ser criados para gerar RDL com base em seu esquema XML.
O Construtor de Relatórios do Power BI é a maneira preferida de criar relatórios paginados baseados em RDL.
Uma das maneiras mais fáceis de gerar RDL a partir de um aplicativo é usar as classes do Microsoft .NET Framework do namespace e System.Linq namespaceSystem.Xml. Uma classe em particular, a classe XmlTextWriter , pode ser usada para escrever RDL. Com XmlTextWriter, você pode gerar uma definição de relatório completa do início ao fim em qualquer aplicativo .NET Framework. Os desenvolvedores também podem estender o RDL adicionando itens de relatório personalizados com propriedades personalizadas. Para obter mais informações sobre a classe XmlTextWriter e o namespace, consulte o System.Xml Guia do desenvolvedor do Microsoft .NET Framework. Para obter mais informações sobre LINQ (Language-Integrated Query), procure "LINQ to XML" no MSDN.
A extensão de arquivo padrão para arquivos de definição de relatório é .rdl. O tipo MIME é text/xml.
Tipos de RDL
A tabela a seguir lista os tipos usados em elementos e atributos RDL.
Type | Description |
---|---|
Binário | Uma propriedade com um valor binário codificado em base 64. |
Booleano | Uma propriedade com true ou false como o valor do objeto. A menos que especificado de outra forma, o valor de um objeto booleano opcional omitido é False. |
Date | Uma propriedade com um valor de data ou data/hora totalmente especificado especificado no formato de data ISO8601: AAAA-MM-DD[THH:MM[:SS[. S]]]. |
Enum | Uma propriedade com um valor de texto de cadeia de caracteres que deve ser um de uma lista de valores designados. |
Flutuador | Uma propriedade com um valor float. Um ponto (.) é usado como separador decimal opcional. |
Inteiro | Uma propriedade com um valor inteiro (int32). |
Idioma | Uma propriedade com um valor de texto que contém um código de idioma e cultura, como "en-us" para inglês dos EUA. O valor deve ser uma linguagem específica ou uma linguagem neutra para a qual uma linguagem padrão é definida no Microsoft .NET Framework. |
Nome | Uma propriedade com um valor de texto de cadeia de caracteres. Os nomes devem ser exclusivos dentro do namespace do item. Se não for especificado, o namespace de um item é o objeto que contém mais interno que tem um nome. |
NormalizedString | Uma propriedade com um valor de texto de cadeia de caracteres que foi normalizado. |
Tamanho | Um elemento size deve conter um número (com um caractere de ponto usado como separador decimal opcional). O número deve ser seguido por um designador para uma unidade de comprimento CSS, como cm, mm, in, pt ou pc. Um espaço entre o número e o designador é opcional. Para obter mais informações sobre designadores de tamanho, consulte Valores CSS e referência de unidades. Em RDL, o valor máximo para Tamanho é 160 pol. O tamanho mínimo é 0 pol. |
Cadeia | Uma propriedade com um valor de texto de cadeia de caracteres. |
UnsignedInt | Uma propriedade com um valor inteiro não assinado (uint32). |
Variante | Uma propriedade com qualquer tipo XML simples. |
Tipos de dados RDL
A enumeração DataType define o tipo de dados de um atributo, expressão ou parâmetro em RDL. A tabela a seguir mostra como os tipos de dados CLR (Common Language Runtime) correspondem aos tipos de dados RDL.
Tipo(s) CLR | Tipo de dados correspondente |
---|---|
Boolean | Boolean |
DateTime, DateTimeOffset | DateTime |
Int16, Int32, UInt16, Byte, SByte | Número inteiro |
Individual, Duplo | Float |
String, Char, GUID, Timespan | String |
Conteúdos relacionados
- Power BI Report Builder
- Exibir um relatório paginado no serviço do Power BI
- Tem dúvidas? Pergunte à Comunidade do Power BI.