【问题标题】:Using SSRS Data Driven Subscription as a Data Driven Schedule使用 SSRS 数据驱动订阅作为数据驱动计划
【发布时间】:2012-10-20 11:47:05
【问题描述】:

我想要一个数据驱动的“时间表”,这意味着每份报告都有其独特的时间(存储在每分钟填充的表格中)。

For example: (not all fields included)

To                 Parameter     Format    NextRunDate         ReportStatus
bob[at]email.com   SalesRegion1  Email     1/1/2012 9:00:00   'Unprocessed'
joe[at]email.com   SalesRegion2  Email     1/1/2012 9:05:00   'Unprocessed'
sara[at]email.com  SalesRegion1  Email     1/1/2012 8:55:00   'Processed'

如果当前时间是 2012 年 1 月 1 日 9:01:00,我的数据驱动订阅“where 语句”将类似于...

where NextRunDate < GETDATE() -- in the past
   and ReportStatus = 'Unprocessed' -- <--here is my problem

此查询每分钟运行一次。它应该只为 bob[at]email.com 提取报告...

我的问题在这里: 我需要添加在发送报告后切换报告状态和“已处理”的逻辑...否则它每次都会运行每个报告...

想法?其他方法可以让它发挥作用?

运行 SQL Server 2k8 企业版

提前致谢!

【问题讨论】:

    标签: reporting-services ssrs-2008


    【解决方案1】:

    如果报告以类似的周期运行(如您的代码中每分钟或每五分钟一次),您可以使用 BETWEEN 和 DATEADD 减去分钟数(无论如何)以达到您最后一次运行报告的时间到现在。

    {WHERE NextRunDate BETWEEN DATEADD(mi, -5, GETDATE()) AND GETDATE()}

    我希望这会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-08
      • 2022-08-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多