使用SSRS 2012
我在报告中有一个多值参数,我想把它作为表的来源。有没有办法实现这个目标?我得出的结论是,除了数据集之外,不能使表的数据源成为任何东西。
我尝试使用参数过滤多值数据集(参数源),但这会产生前向参考错误(有意义)。
我现在正试图在表格的单个文本框中设置visibility属性,因此它只会使值可见,这是所选参数值之一: = IIF(Fields!MODALITY.Value = Join(参数!Modalities.Value,","),True,False)
但他们都被展示了(总是如此?)。有关如何显示从报表中的多值参数中选取的值列表作为表格的任何想法(不仅仅是文本框中的分隔字符串)?
答案 0 :(得分:1)
表的数据源始终是数据集,但您可以使用数据集中的参数。像
这样的东西select * from dbo.split3(@parameter)
其中split3是csv到table函数,就像在http://blogs.msdn.com/b/amitjet/archive/2009/12/11/sql-server-comma-separated-string-to-table.aspx
上找到的那样答案 1 :(得分:0)
我找到了一个用于更改可见性的表达式,以便我的表只显示所选多值参数中的元素。也许有一种更简单的方法。
=IIF(Instr(","+Join(Parameters!Modalities.Value,",")+",",","+Fields!MODALITY.Value+",") <> 0,False,True)