Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Report Definition Language (RDL) är en XML-representation av en SQL Server Reporting Services (SSRS) rapportdefinition. En rapportdefinition innehåller information om datahämtning och layout för en rapport. RDL består av XML-element som matchar en XML-grammatik skapad för Reporting Services. Du kan anpassa funktioner för att styra rapportvärden, stilar och formatering genom att komma åt kodsammansättningar i rapportdefinitionsfilerna.
RDL främjar samverkan mellan kommersiella rapporteringsprodukter genom att definiera ett gemensamt schema som möjliggör utbyte av rapportdefinitioner. RDL är:
- Ett XML-schema för rapportdefinitioner.
- Ett utbytesformat för företag och tredje part.
- Ett utbyggbart och öppet schema som stödjer fler namnrymder och egna element.
Förutsättningar
Alla protokoll eller programmatiska gränssnitt som fungerar med XML kan användas med RDL.
RDL-specifikationer
Information om hur du laddar ned specifikationer för specifika schemaversioner finns i Språkspecifikation för rapportdefinition.
XML-schemadefinition för RDL
En SSRS RDL-fil valideras med hjälp av en XML Schema Definition (XSD)-fil. Schemat definierar reglerna för var RDL-element kan förekomma i en .rdl-fil. Ett element inkluderar sin datatyp och kardinalitet, vilket är antalet förekomster som är tillåtna. Ett element kan vara enkelt eller komplext. Ett enkelt element har inga barnelement eller attribut. Ett komplext element har underelement och kan ha attribut.
Schemat innehåller till exempel RDL-elementet ReportParameters, som är den komplexa typen ReportParametersType.
- Enligt konvention är en komplex typ för ett element namnet på elementet följt av ordet Type.
- Ett ReportParameters-element kan finnas i rapportelementet (en komplex typ) och kan innehålla ReportParameter-element.
- En ReportParameterType är en enkel typ som bara kan vara ett av följande värden: Boolesk, DateTime, Heltal, Flyttal eller Sträng.
Mer information om XML-schemadatatyper finns i XML-schema del 2: Datatypes Second Edition.
RDL XSD finns tillgänglig i ReportDefinition.xsd-filen, som finns i mappen Extras på produktens CD-ROM. Den finns också tillgänglig på rapportservern via följande URL: https://servername/reportserver/reportdefinition.xsd.
Skapa RDL
Bygg verktyg och applikationer som genererar RDL baserat på deras XML-schema på grund av RDL:s öppna och utbyggbara natur.
Reporting Services erbjuder flera verktyg för att bygga RDL-filer. Mer information finns i Reporting Services-verktyg.
- Generera RDL från en applikation genom att använda Microsoft .NET Framework-klasserna i System.Xml och System.Linq namnrymden.
- Använd XmlTextWriter för att skriva RDL. Med XmlTextWriter kan du generera en fullständig rapportdefinition från början till slut i alla .NET Framework-program. För mer om XmlTextWriter-klassen och System.Xml namnrymden, se Microsoft .NET Framework Developer's Guide.
Utvecklare kan utöka RDL genom att lägga till anpassade rapportobjekt med egna egenskaper. För mer information om Language-Integrated Query (LINQ), sök på "LINQ to XML" på Microsoft Developer Network.
Standardfiländelsen för en rapportdefinitionsfil är .rdl. Du kan utveckla klientrapportdefinitionsfiler, som har filändelserna .rdlc. MIME-typen för båda tilläggen är text/xml. För mer information, se Reporting Services Reports (SSRS).
RDL-typer
I följande tabell visas typer som används i RDL-element och -attribut.
| Type | Description |
|---|---|
| Binär | En egenskap med ett base-64-kodat binärt värde. |
| Boolean | En egenskap med sant eller falskt som värdet för objektet. Om inget annat anges är värdet för ett utelämnat valfritt booleskt objekt Falskt. |
| Date | En egenskap med ett fullständigt angivet datum- eller datetime-värde som anges i ISO8601 datumformat: ÅÅÅÅ-MM-DD[THH:MM[:SS[. S]]]. |
| Enum | En egenskap med ett strängtextvärde som måste vara en av en lista med angivna värden. |
| Float | En egenskap med ett flyttalvärde. En punkt (.) används som valfri decimalavgränsare. |
| Heltal | En egenskap med ett heltalsvärde (int32). |
| Language | En egenskap med ett textvärde som innehåller en språk- och kulturkod, till exempel "en-us" för amerikansk engelska. Värdet måste antingen vara ett specifikt språk eller ett neutralt språk för vilket ett standardspråk definieras i Microsoft .NET Framework. |
| Namn | En egenskap med ett strängtextvärde. Namn måste vara unika i objektets namnområde. Om det inte anges är namnområdet för ett objekt det innersta objekt som innehåller ett namn. |
| NormalizedString | En egenskap med ett normaliserat textvärde för strängar. |
| Storlek | Ett storlekselement måste innehålla ett tal med ett punkttecken som används som valfri decimalseparator. En beteckning för en CSS-längdenhet såsom cm, mm, in, pt eller pc måste följa numret. Ett blanksteg mellan talet och beteckningen är valfritt. För mer information, se CSS Values and Units Reference. I RDL är det maximala värdet för Storlek 160 in. Den minsta storleken är 0 in. |
| String | En egenskap med ett strängtextvärde. |
| OsigneradInt | En egenskap med ett osignerat heltalsvärde (uint32). |
| Variant | En egenskap med valfri enkel XML-typ. |
RDL-datatyper
DataType Enumeration definierar datatypen för ett attribut, uttryck eller parameter i RDL. Följande tabell visar hur CLR-datatyper (Common Language Runtime) motsvarar RDL-datatyper.
| CLR-typ(er) | Motsvarande datatyp |
|---|---|
| Boolean | Boolean |
| DateTime, DateTimeOffset | DateTime |
| Int16, Int32, UInt16, Byte, SByte | Integer |
| Enkel, Dubbel | Flyta |
| Sträng, Tecken, GUID, Tidsintervall | String |