Общие сведения о модулях доставки

Службы SQL Server Службы Reporting Services позволяют пользователям создавать и публиковать отчеты, которые после создания и публикации могут доставлять в различные места. Кроме того, службы Службы Reporting Services содержат несколько модулей доставки и API-интерфейс доставки, который позволяет разработчикам создавать дополнительные модули доставки, расширяя возможности доставки в службах Службы Reporting Services.

В следующей таблице перечислены модули доставки, входящие в состав служб Службы Reporting Services.

Модуль доставки

Описание

Электронная почта сервера отчетов

Отправляет отчеты отдельным пользователям или группам пользователей по электронной почте через SMTP-сервер.

Общая папка сервера отчетов

Используется для распространения отчетов по организации с использованием сетевых общих папок. Дает возможность автоматически копировать отчет в общую папку по заданному расписанию.

Архитектура модуля доставки служб Reporting Services

Архитектура модуля доставки служб Reporting Services

Подпискам ставятся в соответствие модули доставки. При создании подписки, чтобы определить порядок доставки отчета, пользователь может выбрать один из доступных модулей доставки. В службах Службы Reporting Services подписки располагаются в базе данных сервера отчетов. Когда происходит событие, службы Службы Reporting Services проверяет событие по подпискам, содержащимся в базе данных сервера отчетов. Для каждой подписки, сопоставленной с событием, сервер отчетов создает уведомление. Для управляемых данными подписок уведомление создается для каждого получателя. После создания уведомления сервер отчетов вызывает определенный модуль доставки и передает для параметров модуля значения, указанные в уведомлении. Модуль доставки отправляет уведомление пользователю, как указано в выбранном модуле доставки.

В модулях доставки реализуется API-интерфейс модулей доставки служб Службы Reporting Services. За счет поддержки API-интерфейса модулей доставки служб Службы Reporting Services модули доставки имеют возможность получать уведомления от сервера отчетов и указывать состояние уведомления.

Сервер отчетов не управляет назначением доставки для уведомлений и отчетов. Сбор сведений о назначении выполняется кодом, который включается в модуль доставки.

Подписки и модули доставки

Клиентские приложения создают подписки, использующие модули доставки, с помощью двух методов веб-службы сервера отчетов: CreateSubscription и CreateDataDrivenSubscription. Для изменения существующих подписок используются методы SetSubscriptionProperties и SetDataDrivenSubscriptionProperties. Во время создания подписки пользователь также выбирает для нее модуль доставки и вводит значения для необходимых параметров модуля. Когда пользователь сохраняет подписку, она записывается в базу данных сервера отчетов. Подписки создают уведомления по расписанию или в результате некоторых событий. Когда начинается доставка, выбранный модуль доставки сначала загружает данные конфигурации из файла конфигурации. Затем получаются параметры модуля для подписки и задаются их значения. Наконец, вызывается метод Deliver и отправляется уведомление.

Требования для разработки

Для разработки модуля доставки служб Службы Reporting Services необходимо:

  • компьютер для развертывания с установленным сервером отчетов;

  • Компьютер для разработки с установленной средой Visual Studio 2008 или установленным пакетом средств разработки программного обеспечения для платформы Microsoft .NET Framework.

  • основные сведения о функциях и возможностях служб Службы Reporting Services, в особенности относящихся к подписке и доставке;

  • основные сведения о ASP.NET и веб-элементах управления, если планируется реализация собственного пользовательского интерфейса подписки для диспетчера отчетов;

  • опыт разработки на языке .NET Framework, например Microsoft Visual C# или Microsoft Visual Basic .NET.