Я бы согласился с 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.
Надеюсь, это поможет