我想做什么
如果“NCRNumber”列的值出现在名为listeRNC的多值参数中,我想更改行背景颜色。
这是我现在使用的SSRS:
= iif ((Parameters!listeRNC.Value.ToString() = Fields!NCRNumber.Value.ToString()), "Khaki","White")
这是做什么
这只是着色第一行(也是Parameters!listeRNC中的第一个元素)..
我知道我可以像这样访问MultiValue列表中的各种项目
Parameters!listeRNC.Value(index)
但是如何在此列表中进行查找?就像List.Find方法或foreach一样?
答案 0 :(得分:1)
我认为您所寻找的内容与下面链接中的答案非常相似。但是,这将是一个向你发送良好方向的东西:
= Iif(Array.IndexOf(Parameters!p_myMultipleValueParameter.Value,Fields!groepType.Value)> -1,"找到","未找到")
答案 1 :(得分:0)
最后我的问题不是代码本身,我错误配置了参数本身。我曾经通过报告的XML代码手动添加参数。但是我编写多值参数的方式是错误的。
所以,对于那些感兴趣的人来说,这是正确的XML:
<ReportParameter Name="YourParameterNameGoesHere">
<DataType>String</DataType>
<Prompt>ReportParameter1</Prompt>
<MultiValue>true</MultiValue>
</ReportParameter>
以下是我如何找到这个:在查看您的报告[设计]模式时,转到visual studio的工具栏菜单 - &gt;查看 - &gt;报告数据(ctrl + alt + D)。然后转到参数,然后右键单击 - &gt;添加参数。确保检查多值选项。你去吧!
这是我用来解析整个事情的最终代码:
= iif((InStr(Join(Parameters!listeRNC.Value,",").ToString(),fields!NCRNumber.Value.ToString(),CompareMethod.Text)), "Khaki","White")