我将在SSRS 2019中实施一份数据驱动的报告,该报告将有超过80个"TO"在订阅的缓存数据集中接收所有作为单独返回行的电子邮件地址。
的背景;它们是单独的行,因为如果将所有电子邮件地址放在一个"TO"中,并且一个电子邮件地址无法发送,报表服务器将尝试以15分钟的间隔重新发送整个报表3次。所以,每个人都收到了3次以上的报告,而失败的电子邮件地址永远不会收到它。我知道报表服务器可以设置为不重试失败的尝试,但是我们的服务器管理员不愿意这样做。
那么,我的问题是:订阅的第一个"TO"电子邮件地址,从缓存数据集,缓存报告以供下一个79?或者,所有80个报表都单独生成,并且缓存只开始/使在缓存时间范围内稍后运行报表的订阅(或用户)受益?
谢谢Gord
感谢Alan提醒我关于ExecutionLog视图的事情。
我运行了一个测试数据驱动订阅5个电子邮件地址。
看起来报表服务器正在批量处理它们,一次一个第一批报告完成后,将创建一个缓存副本,供任何其他报告使用。
在下面的表中,第二行的报表在5.299秒内完成,在第4行开始之后,但在第5行开始之前…所以第5行使用缓存。
TimeStart | TimeDataRetrieval | Source | RowCount | 2023-01-27 08:02:22.463 | 5625 | 生活 | 803 |
---|---|---|---|
2023-01-27 08:02:22.493 | 5299 | 生活 | 803 |
2023-01-27 08:02:22.493 | 6197 | 生活 | 803 |
2023-01-27 08:02:25.573 | 8853 | 生活 | 803 |
2023-01-27 08:02:43.307 | 0 | 缓存 | 0 |