Многие уже знакомы с SSRS, знают, что это такое и как их использовать, но также многим данный компонент MS SQL сервера не знаком, поэтому сейчас давайте познакомимся с SQL Server Reporting Services, сокращенно SSRS и узнаем, какие возможности нам предлагают эти службы.
В каждой организации возникает необходимость формировать отчеты на основе каких-то данных и средства для этого используются разные, иногда даже это делается вручную (например, в Word или в Excel). Компания Microsoft предлагает отличное, комплексное решение построения отчетов, которое входит в комплект MS SQL сервера — это SQL Server Reporting Services и сейчас мы узнаем, что же это такое SSRS?
Примечание! В качестве примера SQL Server Reporting Services я буду рассматривать, и описывать возможности на примере MS SQL Server 2008 R2.
Что такое SSRS?
SQL Server Reporting Services (SSRS) – это службы для разработки, построения, доставки и просмотра отчетов. С помощью этих служб можно создавать табличные, интерактивные, графические и другие более сложные отчеты с использованием диаграмм и других отчетных элементов.
SSRS реализован как web-служба и ее администрирование, а также управление отчетами производится через веб интерфейс. Стандартный доступ к отчетам предоставляется пользователям также через веб интерфейс. SSRS предоставляет возможность интегрировать разработанные отчеты в сторонние приложения, т.е. имеется некий API функционал. Например, SSRS можно интегрировать с SharePoint.
Так как SSRS это web-служба, для ее работы требуется что-то вроде web-сервера, ранее в MS SQL 2005 требовалось наличие web-сервера IIS, начиная с MS SQL 2008, IIS не требуется, так как данный функционал уже встроен в SSRS. В связи с этим не рекомендуется использовать SSRS 2008 версии и выше на одном сервере вместе с IIS (лично я рекомендую не разворачивать SSRS на машину, на которой установлен какой-либо web-сервер).
Для того чтобы сервер отчетов имел возможность хранить опубликованные отчеты, модели отчетов и иерархию папок требуется база данных SQL Server.
В SSRS можно управлять правами доступа к отчетам, т.е. например одной группе (или конкретному пользователю) Вы можете дать права на просмотр отчета, а другой нет.
Службы Reporting Services поддерживают кэширование отчетов, т.е. например, у Вас есть отчет, который долго выполняется, и при этом данные в нем редко изменяются, и для того чтобы отчет выполнялся быстрей его можно закэшировать.
SSRS предоставляют возможность подписки на публикуемые отчеты, т.е. например, по расписанию пользователь будет получать по почте или в общую папку свежие отчеты.
Все отчеты созданные с помощью служб Reporting Services можно экспортировать в разные форматы (с сохранением визуального оформления), например:
- Excel;
- Word;
- PDF;
- CSV;
- XML;
- TIFF;
- MHTML (Web Archive).
Источники данных для отчетов SSRS
Службами Reporting Services поддерживаются следующие типы источников данных для отчетов:
- Microsoft SQL Server;
- Microsoft SQL Azure;
- Microsoft SQL Server Analysis Services (поддержка многомерных баз данных);
- OLE DB;
- ODBC – соответственно поддерживаются файлы dBase, Excel, Access (MDB) и другие;
- Параллельные хранилища данных Microsoft;
- XML;
- Oracle;
- Teradata;
- Hyperion Essbase;
- Список Microsoft SharePoint;
- Sap NetWeaver BI;
- Report Server Model.
Компоненты служб Reporting Services и средства разработки отчетов
- Сервер отчетов (Report Server) — обеспечивает обработку данных и отчетов, а также доставку отчетов, он является основным компонентов служб Reporting Services.
- Диспетчер отчетов (Report Manager) – это web интерфейс, предназначенный для просмотра отчетов, а также управления ими. Именно диспетчер отчетов используется пользователями как стандартное средство просмотра отчетов.
-
- Конструктор отчетов (Report Designer) – это мощное средство для создания отчетов. Конструктор работает в среде Business Intelligence Development Studio (BIDS).
-
- Диспетчер конфигурации служб Reporting Services (Reporting Services Configuration Tool) – это средство настройки сервера и диспетчера отчетов, т.е. именно здесь можно изменить их параметры, например, настроить учетную запись службы сервера отчетов, задать URL адреса сервера и диспетчера отчетов, создать или выбрать базу данных, задать настройки электронной почты, и другие.
-
- Программы командной строки сервера отчетов (Report Server Command Prompt Utilities) — SSRS включают три программы командной строки, с помощью которых можно администрировать сервер отчетов.
- rs – программа для обработки скриптов с помощью которых можно автоматизировать административные задачи;
- rsconfig — служит для настройки и управления соединением сервера отчетов с базой данных сервера отчетов;
- rskeymgmt — средство управления ключами шифрования.
- Построитель отчетов 3.0 (Report Builder 3.0) – программа для создания отчетов, интерфейс которой напоминает Microsoft Office. Она разработана для бизнес-пользователей, которые привыкли работать с приложениями Microsoft Office. Это своего рода упрощенная версия конструктора Business Intelligence Development Studio.
Заключение
Теперь я думаю, Вы имеете представление о том, что такое SQL Server Reporting Services (SSRS) и если подводить итог, то это очень мощное, а главное комплексное решение создания системы отчетности. И напоследок, давайте вспомним и отметим основные возможности SSRS:
- Создание, как простых табличных отчетов, так и сложных интерактивных;
- Экспорт отчетов в разные популярные форматы (Excel, Word, PDF и др.);
- Поддержка всевозможных источников данных для отчетов (SQL Server, SQL Azure, OLE DB, ODBC, Oracle и др.);
- Мощный конструктор Business Intelligence Development Studio;
- Подписка на отчеты;
- Кэширование отчетов;
- Интеграция с SharePoint;
- API интерфейс для интеграции с другими сторонними приложениями.
Для теории я думаю достаточно в следующих материалах мы рассмотрим установку и настройку SQL Server Reporting Services, а также научимся создавать отчеты и публиковать их. На этом все, удачи!
Заметка! Если Вас интересует SQL и T-SQL, рекомендую посмотреть мои видеокурсы по T-SQL, с помощью которых Вы «с нуля» научитесь работать с SQL и программировать с использованием языка T-SQL в Microsoft SQL Server.