Лучший способ получения уведомлений в службах отчетов SQL Server с использованием служб Notification Services
Можно ли получать уведомления с помощью служб отчетов SQL Server? Скажем, например, у меня есть отчет, который я хочу получить по почте, если, например, он внезапно показывает более 10 строк или если конкретное значение падает ниже 100 000. Нужно ли привязывать к нему службы Notification Services и как это сделать?
Пожалуйста, предоставьте как можно больше технических деталей, так как я никогда раньше не пользовался Notification Services.
Кто-то также сказал мне, что службы уведомлений заменены новыми функциями в службах отчетов в SQL Server 2008 - так ли это?
5 ответов
Я согласен с Simon re Notification Services
Кроме того, управляемые данными подписки SSRS недоступны, если вы не используете Enterprise Edition (и недоступны, если вы используете режим интеграции с SharePoint).
Альтернативным способом было бы создать задание агента, которое запускает процесс. Proc может проверить требуемые условия и отменить подписку, если они выполнены с использованием:
exec ReportServer.dbo.AddEvent @EventType='TimedSubscription', @EventData='xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxxx'
Где @EventData - это идентификатор подписки в dbo.Subscription.
Это опустит строку в [dbo].[Event]. Служба опрашивает эту таблицу несколько раз в минуту, чтобы начать подписку.
На самом деле, это не так уж далеко от того, что происходит, когда вы настраиваете новую подписку, может быть даже проще создать подписку на сайте сервера отчетов, узнать, какое задание агента было создано (задания с именами GUID), и отредактировать T-SQL.
Надеюсь это поможет
Отправка почты с использованием подписки SSRS на ваш отчет, управляемый данными
В зависимости от ваших потребностей, возможно, сработает подписка SSRS на данные, отправляемая вам по электронной почте. http://msdn.microsoft.com/en-us/library/ms159150(SQL.90).aspx
Я бы не стал идти по пути сервисов ntofications - это в значительной степени устаревшая функция SQL Server, и даже если он появится в будущем, он будет стагнировать. Так что не создавайте зависимость от этого.
Управляемая данными подписка состоит из нескольких частей. Фиксированные аспекты управляемой данными подписки определяются при ее создании, и к ним относятся следующие:
Отчет, для которого определена подписка (подписка всегда связана с одним отчетом). Расширение доставки, используемое для распространения отчета. Вы можете указать доставку электронной почты на сервере отчетов, доставку файлового ресурса, провайдера нулевой доставки, используемого для предварительной загрузки кэша, или пользовательское расширение доставки. Вы не можете указать несколько расширений доставки в рамках одной подписки. Абонентский источник данных. При определении подписки необходимо указать строку подключения к источнику данных, который содержит данные подписчика. Источник данных подписчика не может быть указан динамически во время выполнения. Запрос, который вы используете для выбора данных подписчика, должен быть указан при определении подписки. Вы не можете изменить запрос во время выполнения.