11

这是我的问题

我正在处理 Rdlc 报告。我有这些领域:

First name  
Address1 
Address2  
City, state, zip

如果这些字段中的任何一个为空,则不应显示空格。例如(预期输出

First name,  
Address1,  
City, state, zip  

但是,如上图所示,我得到了这个:

First name,  
Address1,  
........................<-(blankspace is showing here)  
City, state, zip 

我试着改变Visiblity-> Expression-> =IIF(String.IsNullOrEmpty(Fields!Address2.Value), false,True)

4

3 回答 3

18

我认为 with 的表达String.IsNullOrEmpty不起作用。

尝试使用以下两个选项之一:

1.=IIF(IsNothing(Fields!Address2.Value),False,True)

2.=IIF(Len(Fields!Address2.Value) = 0,False,True)

根据评论,解决方案是创建一个文本框,在其中放置两个(或更多)字段,如果第二个字段具有实际值或为空,则连接值。

所以表达式将是:

=Fields!Name.Value + System.Environment.NewLine + Fields!SAddr_Line1.Value + IIF(‌​Len(Fields!Address2.Value) = 0, "", System.Environment.NewLine + Fields!Address2.Value) + Fields!ShipTo.Value

为了提高可读性:

=Fields!Name.Value
+ System.Environment.NewLine
+ Fields!SAddr_Line1.Value
+ IIF(‌​Len(Fields!Address2.Value) = 0, "", System.Environment.NewLine + Fields!Address2.Value)
+ Fields!ShipTo.Value
于 2012-12-12T07:59:44.393 回答
1

以防万一这有助于某人。

在我这样做之前,我遭受了同样的痛苦(而且我的分组非常复杂):

字段!字段名.值 * 1

(如果需要,您可以使用 CStr() 转换为字符串)

瞧!

于 2018-03-13T02:55:24.197 回答
0

您可以在 rdlc 报告中的以下情况下使用 if else 语句

     1=IIF(IsNothing(Fields!Amount.Value),False,True)
     2.=IIF(Len(Fields!Amount.Value) = 0,False,True)

       =iif(IsNothing(Sum(Fields!Amount.Value)),0.00,True).ToString()

最后一个没有找到记录并显示 0 它的工作!

于 2017-03-23T04:55:49.287 回答