ssrs过滤tablix表达式,它将使用参数值过滤tablix
Id喜欢根据一个参数过滤我的tablix,其中包含3种可能的值供您选择。 人 狗 两者
然后按字段过滤Tablix:人物,狗,两者...
---更新
Tablix按参数值过滤。目标包括所有
1参数具有3个选项(不是多选)。人,狗,全部。
我建立了一个名为FILTER的字段,该字段将“ ALL”放置在单元格中。
否则,它位于CLIENT_TYPE“ PERSON”或“ DOG”字段之间
表达式:
字段!CLIENT_TYPE.Value
值
参数!CLIENT_TYPE.Value
这仅适用于“ PERSON”和“ DOG”。浓液不适用于“全部”
根据参数...过滤tablix的表达式和值是什么?
我可以欺骗“ ALL”排除所有内容吗?
表达式 IFF(Parameters!CLIENT_TYPE.Value =字段!CLIENT_TYPE.Value或Parameters!CLIENT_TYPE.Value =字段!FILTER.Value ,“包含” ,“排除”)
值 = Parameters!CLIENT_TYPE.Value
解决方案:
表达式
=(Fields!CLIENT_TYPE.Value = Parameters!CLIENT_TYPE.Value)
OR
(Parameters!CLIENT_TYPE.Value = Fields!FILTER.Value)
值 = true
答案 0 :(得分:0)
您将单击tablix属性->可见性,然后像这样弹出和表达 iif(parameters_p1.value ='Person',True,False)。请记住,如果您具有全选选项,即param可以接受多个值,则此解决方案将无法使用。一次只能接受1个值并呈现结果。
答案 1 :(得分:0)
您需要将您的字段与参数进行比较。
对于过滤器表达式,您将具有
=IIF(Fields!YOUR_FIELD.Value = Parameters!YOUR_PARAMETER.Value OR Parameters!YOUR_PARAMETER.Value = "Both", 1, 0)
将类型设置为整数,将值设置为1。这将为您的字段与参数匹配或参数均为两者的记录分配值1。前提是没有其他选择。
您还可以将参数映射到查询并过滤查询,而不是对数据集或tablix使用过滤器。
WHERE (YOUR_FIELD = @YOUR_PARAMETER or @YOUR_PARAMETER = 'Both')
答案 2 :(得分:0)
1参数(3个选项):Person,Dog,All ...在proc:FILTER中创建了一个字段,其中每个单元格都保留“ ALL”。
表达式 =(字段!CLIENT_TYPE.Value =参数!CLIENT_TYPE.Value) 要么 (参数!CLIENT_TYPE.Value =字段!FILTER.Value)
值 = true