隐藏一行是一个字段为空

Hide a row is a field is empty

我有问题。其中一个字段连续为空,我想隐藏该行。

我试过下面的表达式

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

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

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

有人可以帮忙吗?

感谢您的帮助

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

您可以通过多种方式获得想要的结果。

一种是使用行可见性属性。右键单击 table 左侧的灰色行选择框,然后选择“行可见性”。选择 "Show or hide based on an expression" 选项并输入您的表达式。

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

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

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

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

关于表达式的一些注释。首先,表达式只需要 return true 或 false,所以将它放在 IIF() 中有点多余。 =Fields!CRM_PO_Ref.Value = "" 这样的表达式就足够了。第二点要注意的是,行可见性功能的 True 值将隐藏该行,而过滤器中的 True 结果将导致包含该行。您可能需要通过在表达式前面加上 Not 关键字或通过反转比较运算符来反转表达式的结果。