2014-05-20 216 views
0

我有一个多值参数,我从查询中获得。我把它传递给我的数据集,它就像一个冠军。数据集参数使用连接,即= JOIN(Parameters!CodeList.Value,“,”)。SSRS多值参数传递

到目前为止这么好。但是,当我将此传递给子报表时,子报表似乎只是“获取”列表中的第一项而不是字符串。另外,如果我在查看CodeList参数的主要报告上放置一个文本框,即= Parameters!CodeList.Value(0),我只会看到第一个项目。在这里使用JOIN返回一个错误。

我显然没有在这里得到的东西。任何可用的照明?:)

+0

其(0),即杀死你的工作。删除&使用加入,与您所讨论的相同。 – Aditya

回答

0

这个怎么样?

=Parameters!CodeList.Value(0) gives you the first selected parameter value 

=Parameters!CodeList.Value(1) gives you the second selected parameter value 

so on 

&

Join(Parameters!CodeList.Value,",") 

will give you the all selected value for the parameter seperated by , 

条件是,参数应该存在lol'z。

+0

是的,我一直使用join()。没有用它来传递值。谢谢。 – Judoguy

0

假设您希望它在此报告中的行为与您的数据集相同(IE想要发送一个包含参数中逗号分隔的所有值的字符串),您只需将相同的内容传递给SubReport参数:

= JOIN(!参数CodeList.Value,“”)

如果你真正想要什么子报表有在主报告的参数相同的值是参数,你需要通过:

=参数!CodeList.Value

注意最后没有(0)。结尾的(0)会导致它只传递参数中的第一个值,而不是你之后的值。

+0

同上,感谢:)“我一直使用join(),没有用它来传递值,谢谢。” – Judoguy