1

我想尝试实现一个参数,该参数允许用户动态选择哪些列将显示在报告中。一个想法是创建一个具有列名的多值参数。用户点击查看报告后,我想尝试遍历列和选定的值以加入可见性。

如何遍历 tablix 中的列?

如何迭代参数的多个值,以便我可以找到是否选择了某个值?

我正在使用 MS SQL 报告服务 2012。

4

1 回答 1

4

对于一个表,即固定列,可以使用下面的方法。它并不是真正基于循环,而是基于参数选择对每列进行单独的不同可见性检查。

设置一个多值参数,列出可以显示/隐藏的列。

然后,对于实际表中的每一列,将列可见性设置为使用基于参数的表达式:

在此处输入图像描述

表达式类似于:

=IIf(InStr(Join(Parameters!IncludedColumn.Value, ","), "Col1") > 0, false, true)

这样做是为IncludedColumn参数构造一个包含所有选定值的字符串,然后检查是否包含某个列标识符;此特定列的Col1。您将为每列使用不同的常量。

因此,在运行报告时,这种方法可以根据参数选择隐藏/显示列。

选择的所有列:

在此处输入图像描述

选择了一些列:

在此处输入图像描述

于 2013-05-04T12:57:15.657 回答