我有一个Tablix,其数据来自数据集,有一列称为Productgroup,可能有些用户希望对其应用过滤器。
我正在尝试构建一个ssrs表达式,该表达式将过滤该特定列上的tablix,但是仅当名为@Filter的参数不为null时(如果为null,则不需要应用过滤器)
我尝试过
表达式:产品组
接线员:喜欢
值:=IIF(IsNothing(Parameters!Filter.Value), false, Fields!ProductGroup=Parameters!Filter.Value)
似乎没有任何效果:(
答案 0 :(得分:0)
首先,最好将参数发送到数据集并在服务器上过滤,而不是在客户端取回所有数据和过滤器。因此,这意味着需要对存储过程进行参数化,或者使用WHERE子句来过滤要连接的表/视图。
如果您坚持使用这种方法:
您希望表达式为“ ProductGroup”。
您希望您的运算符为“ =”。
您希望自己的价值是=IIF(IsNothing(Parameters!paramFilter.Value), Fields!Productgroup.Value, Parameters!paramFilter.Value)
您正在说的是如果参数为空,则我需要ProductGroup等于ProductGroup。一直都是这样。但是,如果参数不为空,则ProductGroup必须等于参数值。