您可以从自包含代码刷新SSRS报告吗?

时间:2013-09-11 15:15:11

标签: reporting-services ssrs-2008-r2

您好我正在制作一份报告,其中包含一些钻取报告。其中一些具有中值计算,该计算由SSRS生成报告时填充的数组生成。我遇到的问题是,有人在其中一个钻取中导航“返回”报告时,由于数组不再有效,因此中位数计算不起作用。这不是参数,而是代码函数。所有的参数都是来回传递的。

我现在有一个旁路检查这个条件并在文本框中显示Re-Calc,但我真正想要做的是当这种情况发生时触发重新生成报告。

我一直在互联网上搜索,但还没有找到任何可行的解决方案。

我不想要AutoRefresh。我正在寻找要添加到报表代码或表达式中的内容,以触发刷新报表。我已经可以确定何时需要它在代码中发生,我只需要命令就可以了。

2 个答案:

答案 0 :(得分:0)

注册用户的建议"非常接近我认为会起作用的。但是,如果您在SSRS中使用默认的GUI追溯选项,则可能无法始终完全重新加载报告,这可能会考虑您要查找的内容。

如果您使用"转到网址"操作选项卡中的选项(而不是"转到报告"选项),您将导致浏览器重新加载所有内容。我的轶事解释是,当你使用"转到报告"选项,您在ReportViewer框架内移动,因此它可能正在使用一些缓存来重新生成报表的某些部分。当您使用"转到URL"选项,我相信它会强制您的浏览器离开当前页面并重新进入目标页面。

This链接有关于报表服务器路径的良好信息,以及如何操纵URL来控制页面的感受。

Here是您可以在"转到网址"中使用的所有不同网址参数的资源。用于控制页面加载方式以及传递参数的选项。

要使用“转到网址”选项,您可以使用全局ReportServer& ReportFolder字段,因此您每次都不输入完整地址。另外,如果你想确保你的参数栏总是显示出来(这就是我猜测你"选择框"),你可以使用rs:参数= true URL参数。仅供参考,其中一个关于" Go to URL"选项是您可以集成所有SSRS函数和一些有限的JavaScript来真正控制页面的位置和方式。

希望这有帮助!

答案 1 :(得分:-1)

一个不完全符合您要求的可能解决方案是在钻取报告中添加一个返回报告的链接。单击链接时,您可以将参数传递回原始报告,它将重新呈现报告。它不会帮助按下后退按钮的用户,但它会为您带来稍微好一点的用户体验。您甚至可以在显示ReCalc的字段上再次创建指向报表的链接,以便它们不必点击刷新。

有人在another forum上问了一个类似于你的问题。解决方案对我来说似乎有些过分。我建议将上述解决方案与培训用户结合使用,点击链接返回,而不是单击后退按钮。