Wat is het RDL-bestandsformaat?
.rdl-bestanden zijn Report Definition Language-bestanden die door Microsoft SQL Server Reporting Services (SSRS) worden gebruikt om de volledige lay-out, gegevensbronnen, query's en opmaak van een gepagineerd rapport te definiëren. Het formaat is plat XML, waardoor .rdl-bestanden leesbaar zijn voor mensen en bewerkbaar in elke teksteditor.
Het root-element <Report> bevat een xmlns-namespace-URL die de RDL-schemaversie codeert: veelvoorkomende waarden zijn 2005/01, 2008/01, 2010/01 en 2016/01 (actueel, gebruikt bij SQL Server 2016 tot en met 2022). Hiermee kan SSRS detecteren voor welke functieset het rapport is ontworpen.
Binnen een .rdl-bestand definiëren de elementen <DataSources> en <DataSets> databaseverbindingen en query's - meestal T-SQL voor SQL Server, hoewel SSRS ook Oracle, OData en andere providers ondersteunt. Het element <Body> bevat <ReportItems>: Tablix-rasters, grafieken, tekstvakken, afbeeldingen en verwijzingen naar subrapporten. Het element <Page> regelt het papierformaat, de marges en de oriëntatie voor de gerenderde uitvoer.
Rapporten worden gemaakt in Microsoft Report Builder (een gratis losstaande tool) of in Visual Studio via SQL Server Data Tools (SSDT). Het SSRS-webportaal rendert rapporten naar PDF, Excel, Word, CSV en andere formaten, op aanvraag of volgens een schema.
Een gerelateerde extensie, .rdlc, is een client-side variant die wordt gebruikt in Windows Forms- en ASP.NET-projecten, waarbij de gegevensbinding wordt afgehandeld in de applicatiecode in plaats van te worden gedeclareerd in het rapportbestand. Power BI Report Server host .rdl-rapporten naast .pbix Power BI-bestanden op een uniform on-premises platform.
Beveiliging & veiligheid
RISICO: LOWRDL is XML-tekst; er is geen uitvoerbare code direct ingebed. Een RDL-bestand kan echter verbindingsreeksen bevatten met ingebedde inloggegevens of verwijzen naar kwaadaardige gegevensbronnen - controleer DataSources voordat u het uitvoert op een onbekende server.
Formaatdetails
in een notendop- Corel Paradox Report Definition - Verouderde .rdl-bestanden van de Corel Paradox-databaseapplicatie (niet meer in gebruik); niet gerelateerd aan SSRS.
Programma's die RDL-bestanden openen
Technische details
diepe specificaties| Basisformaat | XML (UTF-8 tekst); geen binaire componenten; leesbaar voor mensen en bewerkbaar in elke teksteditor |
| Schema-versiebeheer | xmlns-namespace-URI op root `<Report>`: .../2005/01, 2008/01, 2010/01, 2016/01 (actueel) |
| Huidige namespace | `http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition` |
| Gegevensverklaring | `<DataSources>` en `<DataSets>` definiëren verbindingen (T-SQL, Oracle, OData en andere) en query's |
| Lay-outitems | Tablix (tabellen, matrices, lijsten), Grafiek, Tekstvak, Afbeelding, Rechthoek, Subrapport - genest binnen `<Body>` |
| Paginamodel | Het element `<Page>` regelt papierformaat, marges en oriëntatie voor gepagineerde uitvoer |
| Parameters | De sectie `<ReportParameters>` definieert gebruikersinvoervelden met gegevenstypen, standaardwaarden en prompttekst |
| Typische bestandsgrootte | 10 KB - 5 MB; groeit aanzienlijk wanneer rapporten base64-gecodeerde afbeeldingen bevatten |
| Rendering-uitvoer | Server rendert naar PDF, Excel, Word, CSV, XML, HTML, TIFF via SSRS-rendering-extensies |
| Auteurstools | Microsoft Report Builder (gratis), Visual Studio met SSDT, Power BI Report Builder |
| Gerelateerd formaat | `.rdlc` - client-side variant waarbij gegevensbinding wordt afgehandeld in applicatiecode, niet gedeclareerd in het bestand |
| Hostingplatforms | SSRS op Windows; SSRS 2017+ op Linux; Power BI Report Server |
| Uitgebracht | 2004 (SQL Server 2000 Reporting Services SP1; RDL formalized with SSRS 2000/2005) |
| Laatste versie | RDL schema 2016 (SQL Server 2016/2017/2019/2022; namespace http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition) |
| Open standaard | Ja · royaltyvrij |
| Specificatie | learn.microsoft.com |
RDL conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over RDL-bestanden.