在SSRS表达中使用IIF和AND

时间:2015-03-26 15:30:48

标签: reporting-services ssrs-2008-r2 ssrs-expression

我有一张如下表格

enter image description here

我想要隐藏ALL 3列为0的行。所有列都是INT数据类型

我的表情是这样的:

    =IIF((Fields!PastVal.Value=0) AND (Fields!DatePay=0) AND (Fields!Line.Value=0),False,True)

但是除了列标签(标题)之外没有返回任何数据。我的快递可能有什么问题?

4 个答案:

答案 0 :(得分:0)

在Tablix上创建一个过滤器,您只需添加3个条件,每个条件对应3个字段:

enter image description here

在每个条件上使用<> as运算符,只需将0指定为值,而不是使用表达式。

答案 1 :(得分:0)

您使用的是行可视性吗? True False 用于隐藏行,但如果它们等于0,则将其设置为false。

=IIF((Fields!PastVal.Value=0) AND (Fields!DatePay=0) AND (Fields!Line.Value=0), True, False)

但仍然没有解决问题 - 因为你的例子中有数据,所以应该显示一些列。

您的数据行是否使用SUM?如果是这样,你的表达式也需要SUM。

=IIF(SUM(Fields!PastVal.Value) = 0 AND SUM(Fields!DatePay.Value) = 0 AND SUM(Fields!Line.Value) = 0, True, False)

答案 2 :(得分:0)

感谢大家的善意建议。我的表达一直都是正确的,但由于我对报告进行了分组,因此我必须通过单击“详细信息”来通过“组属性”设置“可见性”。在此之前,我通过右键单击报表正文中的详细信息行来应用过滤器,但这不起作用。

答案 3 :(得分:0)

感谢大家的贡献。我的错。我的报告有一个组级别,因为我通过右键单击我的Tablix来应用过滤器,但这不起作用。我必须通过右键单击行组中的详细信息来执行此操作。