在SSRS 2008 R2中,是否可以使用参数查找单元格内的特定数据?
例如:
我有表达式(Fields!input_criteria.Value),其中包含多个以;;
分隔的值 ;#Action01;#Action02;#Action03;#Action04;#Action05;#
根据行的不同,可以使用不同的组合填充单元格
Row 1 = ;#Action01;#Action04;#Action05;#
Row 5 = ;#Action01;#Action05;#
Row 7 = ;#Action03;#
...
我想通过查看Fields!input_criteria.Value来创建一个过滤数据集的参数,并显示具有所选值的行
Available Values:
Action01
Action02
Action03
Action04
Action05
If I select Action01 from the Parameter drop down the report displays only Rows 1 and 5. If Action04 is selected only Row 1 is displayed.
提前感谢您的帮助!
答案 0 :(得分:0)
您可以在数据集上设置过滤器
1)编写将接受两个参数的自定义代码,一个是由逗号分隔的参数选择值。您可以使用
加入您的值 =Join(Parameters!input_criteria.Value.Value, ",")
第二个是您的input_criteria
字段值
2)该方法将拆分参数值并循环遍历每个值,然后使用InStr
它将确定input_criteria
字段中是否存在calue。如果存在,那么它将返回true。
3)在过滤器中将表达式设置为
= Code.Yourfunction(Join(Parameters!input_criteria.Value.Value, ","),Fields!input_criteria.Value)
4)在过滤器中将操作员设置为=
5)在过滤器中将value
设置为True
这将过滤包含所选参数值的所有记录。
您可以通过进入菜单栏选项
在报告中添加自定义代码报告 - >报告属性 - >代码
答案 1 :(得分:0)
您可以在过滤器中使用Instr()函数。
= InStr函数(字段!input_criteria.Value,参数!param1.Value)
>
0