在SSRS中为参数的不同实例缓存

时间:2019-03-11 22:00:06

标签: caching reporting-services ssrs-2008 ssrs-tablix

我有一个要求,我必须合并5份SSRS报告。所有5个报告具有完全相同的参数。目前,我已经将所有5个Tablix合并到一个报告中,并创建了一个新的下拉参数,用户可以从中选择特定的报告。

我的问题是如何为下拉列表中的5个选项中的每个选项保持 CACHE 。所有5个tablix都有自己的5个不同的数据集,这些数据集分别调用其存储过程。当前,从下拉参数中选择其他报告时,几乎需要5分钟来加载报告。

将这5个报告合而为一的最佳方法是什么。请帮忙。谢谢。

1 个答案:

答案 0 :(得分:0)

您可以让SSRS缓存报告的所有5个版本。在SSRS 2008+中执行此操作的一种方法是创建数据驱动的订阅。编写一个小的查询,该查询将返回5个带有不同参数值的行。安排它运行并使用查询中的值填充参数。将缓存设置为持续600分钟左右。

这将对每个参数值运行一次报表并将其全部缓存。它将持续10个小时,因此您可以全天使用它。

请记住,这不适用于其他参数,它仅缓存您在过去10个小时中使用过的参数组合。

如果您不能进行数据驱动的订阅,则为每个高速缓存单独进行订阅就可以了。在较新版本的SSRS中,您可以设置缓存刷新计划而不是订阅。

如果您对这种方法有疑问,建议您每晚进行一次运行,以将数据准备在为读取而优化的表中。该ETL将减轻程序负担,并应加快按需查询。