将ssrs报告存储在可立即调用的文件中

时间:2013-10-22 12:04:38

标签: caching ssrs-2008

SSRS开发人员,

我有一个我试图倾向的场景,但需要知道我想做的事情是否可能。

我有4个报告要运行,然后将实际报告存储在服务器上的文件中。这种需求的原因是因为报告的响应时间有点长,我已经用SQL完成了所有工作以加快报告的速度。

我想要发生的是,当用户点击报告名称,而不是在屏幕上呈现报告时,我只想调用已存在于文件中的报告,以便快速加载闪电。

有没有人用SSRS做过这件事,甚至可能吗?

谢谢,

1 个答案:

答案 0 :(得分:0)

除了按需运行报表外,还有两个特定选项:从缓存报表运行并从快照运行。

您可以在Setting Report Processing Properties

中查看有关所有这些内容的详细信息

<强>缓存

来自联机丛书:

  

要提高性能,您可以指定要生成的报告(和数据)   用户运行报表时临时缓存。缓存的副本是   随后可供访问同一报告的其他用户使用。同   这种方法,如果十个用户打开报告,只有第一个请求   导致报告处理。该报告随后被缓存,并且   其余九个用户查看缓存的报告。

所以在这里你可以看到它是一个特定的用户动作,导致创建存储的报告。

请参阅Report Caching in Reporting Services

<强>快照

来自联机丛书:

  

报告快照是包含布局信息的报告   在特定时间点检索的数据。你可以跑一个   报告为报告快照以防止报告在其中运行   任意时间(例如,在计划备份期间)。一份报告   通常会创建快照并随后按计划刷新,   允许您准确计算报告和数据处理的时间   发生。如果报告基于需要很长时间才能运行的查询,   或者使用您不喜欢的数据源中的数据的查询   在某些时段访问,您应该将报告作为快照运行。

您可以在这里看到,这些通常是定期设置的,即与用户活动无关。

请参阅Creating, Modifying, and Deleting Snapshots in Report History

在这种情况下,似乎快照可能是您的最佳选择,因此您可以更好地控制何时创建存储的报告。快照的主要问题是它们需要存储的凭据或无人值守的执行帐户,因此可能无法在所有情况下使用。