gpt4 book ai didi

reporting-services - SSRS如何在新数据加载到数据库时触发订阅

转载 作者:行者123 更新时间:2023-12-02 04:46:05 24 4
gpt4 key购买 nike

我为报告创建了一个数据驱动的订阅。订阅从 Oracle 数据库中的表中获取数据。 (查询:select * from Mytable)我想做的是按事件(已经按计划工作)为报告下标。例如,当在 Oracle 中的表中插入新行时,这将触发订阅并生成新报表。我该如何处理?谢谢!

最佳答案

我可以想到一些方法。通过一些额外的数据库设计,您可以在表中为已插入但尚未报告的行设置一个标志。然后,您可以更改数据驱动的订阅查询以运行一个存储过程来查找标志、将行返回到订阅并更新表上的标志。然后,您可以安排数据驱动的订阅在适当的时间间隔触发——当表中没有插入任何行时,没有行返回到订阅,因此它不会触发。

如果您希望报表在每次插入时都触发,那么另一种方法是在您的表上设置一个触发器,这样每次插入一行时,它都会将代码发送到 ReportServer 数据库,如下所示:

exec [ReportServer].dbo.AddEvent @EventType='TimedSubscription', @EventData='520580b3-bd4e-4221-9254-b220bc16ca55'

上面的代码是 SQL Server 如何触发作业中的订阅。您只需通过触发器直接调用作业。 @EventData 中的 GUID 是您要触发的 SubscriptionID。您必须查看订阅表(在 ReportServer 数据库中)才能弄清楚。此外,如果您采用这种方式,我建议您将数据驱动订阅设置为“一次性”计划。

关于reporting-services - SSRS如何在新数据加载到数据库时触发订阅,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19777328/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com