【问题标题】:How to trigger auto generation of report based on change in value of an entry in SQL DB?如何根据 SQL DB 中条目值的变化触发自动生成报告?
【发布时间】:2019-07-04 16:47:19
【问题描述】:

我有一个要求,即每当修改特定表中的条目时,都需要在 SSRS 2014 中自动生成报告。有没有办法实现这一目标? 例如,下面提到的 sn-p 是我的表。每当 day_status 从 Open 'O' 更改为 Close 'C' 时,都需要生成报告。Table in my DB

【问题讨论】:

    标签: reporting-services ssrs-2014


    【解决方案1】:

    您可以做的是为报告设置订阅,然后在您的表格上设置触发器以在状态更改时运行此报告订阅。

    运行此程序以找出订阅作业名称

    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'
    

    您可以将其包装在存储过程中并将其用作触发器的一部分

    【讨论】:

    • 感谢您的回答。将使用它并让您知道
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-25
    • 1970-01-01
    • 2022-11-16
    • 1970-01-01
    相关资源
    最近更新 更多