隐藏一行是一个空的字段

时间:2015-04-21 12:32:08

标签: reporting-services ssrs-2008 ssrs-tablix

我遇到了问题。其中一个字段连续排空,我想隐藏该行。

我尝试过以下表达式

=IIF(Fields!CRM_PO_Ref.Value= "",TRUE,FALSE)

=IIF(IsNothing(Fields!CRM_PO_Ref.Value),TRUE,FALSE)

我通过右键单击TextBoxProperties,在可见性下添加了一个表达式。这不是隐藏一行。

有人可以帮忙吗?

谢谢你的帮助

1 个答案:

答案 0 :(得分:6)

设置文本框的可见性仅影响该文本框,而不影响整行。

您可以通过多种方式获得所寻求的结果。

一种是使用Row Visibility属性。右键单击表格左侧的灰色行选择框,然后选择“行可见性”。选择"根据表达式显示或隐藏"选项并输入你的表达。

另一种方法是使用数据集或Tablix或行组的Filters属性。

右键单击“数据集”并选择“数据集属性”,然后单击列表中的“过滤器”选项。单击“添加”以添加新过滤器并输入表达式。

选择Tablix,然后右键单击左上角的灰色小方块。单击Tablix Properties,然后单击列表中的Filters选项。单击“添加”以添加新过滤器并输入表达式。

使用报告编辑器底部的列表右键单击包含要隐藏的行的行组。单击“组属性”,然后单击列表中的“过滤器”选项。单击“添加”以添加新过滤器并输入表达式。

关于表达的几个注释。首先,表达式只需要返回true或false,因此将它放在IIF()中是多余的。类似=Fields!CRM_PO_Ref.Value = ""的表达式就足够了。需要注意的第二件事是,行可见性功能的True值将隐藏行,而过滤器中的True结果将导致包含该行。您可能需要通过在Not关键字前面或通过反转比较运算符来反转表达式的结果。