【问题标题】:trigger SSRS report when finishing a SSIS job完成 SSIS 作业时触发 SSRS 报告
【发布时间】:2016-12-01 11:19:07
【问题描述】:

许多 SSIS 包已部署到 SSI 目录,并通过 SQL 代理作业进行调度。 在 SSRS 服务器上,我创建了一份报告,让我深入了解在 SSIS 服务器上运行的所有 SSIS 包的执行情况。 我创建了一个作业(向我发送报告),在执行时会向我发送此报告。 我知道如何创建一个触发此 SQL 代理作业的作业步骤。 我将此作业步骤添加到执行 SSIS 包的所有作业中。

但是,我并不是唯一一个调度包,也不是我的所有同事都添加了这个作业步骤。作业是不定期安排和创建的。因此,每天发送报告将是无稽之谈,因为有时工作一个月都不会运行。其他时候,每天执行 5 个作业。

有没有办法在 SSIS 包完成运行时触发“向我发送报告”作业?不管它是如何开始的?不管结果如何?

【问题讨论】:

    标签: sql-server reporting-services ssis


    【解决方案1】:

    为执行存储过程的报告创建数据驱动订阅,以检查当天是否执行了任何作业(可能是前一天或运行 24 小时等)

    【讨论】:

    • 我研究了这个想法并对其进行了一些扩展:我创建了一个包含日期时间列 [LastSent] 的表。如果日期存在,proc 检查表。如果是这样,它将使用该日期来检查在该日期之后具有 end_time 的任何执行。如果 [LastSent] 为空,它将检查 end_time 大于开始时间的任何执行。
    • 然后用 max(end_time) + 1 ms 填充 [LastCheck]。这样我可以很容易地改变这个过程运行的时间表:)
    猜你喜欢
    • 2016-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多