Что такое формат файла RDL?
Файлы .rdl - это файлы языка определения отчетов (Report Definition Language), используемые Microsoft SQL Server Reporting Services (SSRS) для описания полной структуры, источников данных, запросов и форматирования многостраничного отчета. Формат представляет собой обычный XML, что делает файлы .rdl человекочитаемыми и доступными для редактирования в любом текстовом редакторе.
Корневой элемент <Report> содержит URL-адрес пространства имен xmlns, который кодирует версию схемы RDL: распространенные значения включают 2005/01, 2008/01, 2010/01 и 2016/01 (текущая версия, используемая в SQL Server с 2016 по 2022). Это позволяет SSRS определить набор функций, для которых был разработан отчет.
Внутри файла .rdl элементы <DataSources> и <DataSets> определяют подключения к базам данных и запросы - обычно это T-SQL для SQL Server, хотя SSRS также поддерживает Oracle, OData и других поставщиков. Элемент <Body> содержит <ReportItems>: сетки Tablix, диаграммы, текстовые поля, изображения и ссылки на вложенные отчеты. Элемент <Page> управляет размером бумаги, полями и ориентацией для визуализированного вывода.
Отчеты создаются в Microsoft Report Builder (бесплатный автономный инструмент) или в Visual Studio через SQL Server Data Tools (SSDT). Веб-портал SSRS визуализирует отчеты в форматах PDF, Excel, Word, CSV и других по запросу или по расписанию.
Связанное расширение .rdlc является клиентским вариантом, используемым в проектах Windows Forms и ASP.NET, где привязка данных обрабатывается в коде приложения, а не объявляется внутри файла отчета. Power BI Report Server размещает отчеты .rdl вместе с файлами Power BI .pbix на единой локальной платформе.
Безопасность и защита
РИСК: LOWRDL - это текст XML; исполняемый код напрямую не встраивается. Однако файл RDL может содержать строки подключения с учетными данными или ссылаться на вредоносные источники данных - проверяйте DataSources перед запуском на неизвестном сервере.
Детали формата
в двух словах- Corel Paradox Report Definition - Устаревшие файлы .rdl из приложения базы данных Corel Paradox (снято с производства); не связаны с SSRS.
Программы, открывающие файлы RDL
Технические подробности
глубокая спецификация| Базовый формат | XML (текст UTF-8); без бинарных компонентов; человекочитаемый и редактируемый в любом текстовом редакторе |
| Версионность схемы | URI пространства имен xmlns в корневом элементе `<Report>`: .../2005/01, 2008/01, 2010/01, 2016/01 (текущая) |
| Текущее пространство имен | `http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition` |
| Объявление данных | `<DataSources>` и `<DataSets>` определяют подключения (T-SQL, Oracle, OData и другие) и запросы |
| Элементы макета | Tablix (таблицы, матрицы, списки), диаграмма, текстовое поле, изображение, прямоугольник, вложенный отчет - вложены в `<Body>` |
| Модель страницы | Элемент `<Page>` управляет размером бумаги, полями и ориентацией для многостраничного вывода |
| Параметры | Раздел `<ReportParameters>` определяет поля ввода пользователя с типами данных, значениями по умолчанию и текстом подсказок |
| Типичный размер файла | 10 КБ - 5 МБ; значительно увеличивается, если в отчеты встроены изображения в кодировке base64 |
| Вывод визуализации | Сервер выполняет рендеринг в PDF, Excel, Word, CSV, XML, HTML, TIFF через расширения рендеринга SSRS |
| Инструменты разработки | Microsoft Report Builder (бесплатно), Visual Studio с SSDT, Power BI Report Builder |
| Связанный формат | `.rdlc` - клиентский вариант, где привязка данных обрабатывается в коде приложения, а не в файле |
| Платформы хостинга | SSRS на Windows; SSRS 2017+ на Linux; Power BI Report Server |
| Выпущен | 2004 (SQL Server 2000 Reporting Services SP1; RDL formalized with SSRS 2000/2005) |
| Последняя версия | RDL schema 2016 (SQL Server 2016/2017/2019/2022; namespace http://schemas.microsoft.com/sqlserver/reporting/2016/01/reportdefinition) |
| Открыть стандартное | Да · без роялти |
| Спецификация | learn.microsoft.com |
Конвертации RDL
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах RDL.