我想在另一个应用程序的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时都要刷新此报告。
非常感谢任何想法。
答案 0 :(得分:19)
您可以通过清除会话来强制报表服务器在每个请求中获取新报表。
只需将以下内容添加到网址rs:ClearSession=true
它将在您的网址中实现:
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。