4

我有一份报告,其中包含几页图表、表格等。该报告供总是希望对报告进行小的修改的不同客户使用。目前,如果客户希望在第 5 页上进行更改,则将重新创建带有修改的整个报告,即使唯一的更改在第 5 页的图表中。

更重要的是,一些客户不想看到第 3 页,而另一些客户希望看到第 6 页的自定义表格。我的老板希望报告是模块化的,这样他就可以根据客户的需要简单地打开/关闭部件。目前,报告中的更改意味着先开发后部署。

我的想法是创建一个包含多个子报表的报表。每个图表/表格都是一个子报告,因此如果需要更改,我们只需要更改特定的子报告。

理想情况下,数据集应附加到主报告,详细说明要显示的子报告:对于客户 X,我们将显示 SubreportX,客户 Y 将看到 subreportY。

我知道这可以通过将所有可能的子报表添加到主报表并切换每个子报表的可见性来完成,但更优雅的是动态决定要显示哪个子报表。在钻取报表上,这可以通过使用表达式来确定要打开的报表;

例如IIF(customer = X, "subreportX", "SubreportY")

但这可能与子报表有关吗?

需要明确的是:我正在寻找一种在打开报告时动态决定要显示哪些子报告的方法。类似于使用表达式来获取所需子报表的名称。

我一直在寻找这个(在VS2012中并通过谷歌),但我似乎无法找到一个明确的答案,是否可以决定在打开报告时显示哪些子报告......

我发现了以下内容,但似乎只是在使用切换可见性:

SSRS 2008 中的动态子报表

我非常希望得到建议、答案甚至是大方向。谢谢你和我一起思考!

4

1 回答 1

3

我将创建一个返回所选客户的有效子报表列表的数据集。我会将所有可能的子报告添加到主报告中。我将使用查找表达式设置每个子报表的 Visibility 属性,以该数据集为目标。

于 2014-05-12T07:21:18.123 回答