【发布时间】:2019-07-04 16:47:19
【问题描述】:
我有一个要求,即每当修改特定表中的条目时,都需要在 SSRS 2014 中自动生成报告。有没有办法实现这一目标? 例如,下面提到的 sn-p 是我的表。每当 day_status 从 Open 'O' 更改为 Close 'C' 时,都需要生成报告。Table in my DB
【问题讨论】:
标签: reporting-services ssrs-2014
我有一个要求,即每当修改特定表中的条目时,都需要在 SSRS 2014 中自动生成报告。有没有办法实现这一目标? 例如,下面提到的 sn-p 是我的表。每当 day_status 从 Open 'O' 更改为 Close 'C' 时,都需要生成报告。Table in my DB
【问题讨论】:
标签: reporting-services ssrs-2014
您可以做的是为报告设置订阅,然后在您的表格上设置触发器以在状态更改时运行此报告订阅。
运行此程序以找出订阅作业名称
SELECT
sj.[name] AS [Job Name],
rs.SubscriptionID,
c.[Name] AS [Report Name],
c.[Path],
su.Description,
su.EventType,
su.LastStatus,
su.LastRunTime,
c.Parameter,*
FROM msdb..sysjobs AS sj
INNER JOIN ReportServer..ReportSchedule AS rs
ON sj.[name] = CAST(rs.ScheduleID AS NVARCHAR(128))
INNER JOIN ReportServer..Subscriptions AS su
ON rs.SubscriptionID = su.SubscriptionID
INNER JOIN ReportServer..[Catalog] c
ON su.Report_OID = c.ItemID
where c.[Name] like '%your report%'
您可以使用上面的作业名称来触发订阅,如下所示:
USE [msdb]
EXEC sp_start_job @job_name = 'the GUID of the Job from the above query'
您可以将其包装在存储过程中并将其用作触发器的一部分
【讨论】: