9

我想在另一个应用程序的 IFrame 中显示 SSRS 报告的输出。我将源设置为这样的:

http://SERVERNAME.domain.com/ReportServer?%2fTBI_MSCRM%2fCustomReports%2f%7bdafdbed0-1e96-e211-a5da-001d0967e0fc%7d&rs:Command=Render&rc:Toolbar=false

我遇到的问题是报告的输出似乎是为会话缓存的。

如果刷新页面时报表上的时间戳未更新。要查看更新的数据,您必须关闭所有浏览器并重新打开页面。在 SSRS 中,快照未打开,没有缓存刷新计划,因为选择了“不缓存此报告的临时副本”选项。

我已经从 IFrame 中取出 URL 并单独运行它,我得到了相同的结果,所以它不是导致问题的 IFrame。我需要的是每次访问 URL 时刷新此报告。

任何想法都非常感谢。

4

1 回答 1

26

您可以通过清除会话来强制报表服务器在每个请求中获取新报表。

只需将以下内容添加到 URLrs:ClearSession=true

它将像这样在您的 URL 中实现:

http://SERVERNAME.domain.com/ReportServer?%2fTBI_MSCRM%2fCustomReports%2f%7bdafdbed0-1e96-
e211-a5da-001d0967e0fc%7d&rs:Command=Render
&rs:ClearSession=true&rc:Toolbar=false

清除会话:

true 值指示报表服务器从报表会话中删除报表。与经过身份验证的用户关联的所有报表实例都将从报表会话中删除。(报表实例定义为同一个报表使用不同的报表参数值多次运行。)默认值为 false。

更多信息看这里

于 2013-03-28T20:27:15.860 回答