在文本框中使用 vbcrlf 的 SSRS 连接字段需要排除空白返回行



我创建了一个SSRS报告,可以按地址打印。

我正在使用 vbcrlf 在一个文本框中连接多个字段。

在某些情况下,连接中的一个字段可能为空。 如果是这种情况,返回的行会在我的文本框中创建一个空行。

有没有办法删除空白换行符?

=Fields!SOP10200_ADDRESS1.Value & vbcrlf & Fields!SOP10200_ADDRESS2.Value & vbcrlf & TRIM(Fields!SOP10200_CITY.Value) & "," & TRIM(Fields!SOP10200_STATE.Value) & " " & TRIM(Fields!SOP10200_ZIPCODE.Value)

预期成果:

4349 绿灰博士
地球城,MO 63045

实际结果:

4349 绿灰博士

地球城,MO 63045

我会添加一个 IIF 语句来检查地址 2 字段以确保它不是 NULL 或空白。如果它是空白或空,则在 VBCRLF 中有一个空白。

IIF(ISNOTHING(Fields!SOP10200_ADDRESS2.Value) OR Fields!SOP10200_ADDRESS2.Value = "", "", VBCRLF)

所以你的表达将是

=Fields!SOP10200_ADDRESS1.Value & vbcrlf & 
 Fields!SOP10200_ADDRESS2.Value & 
 IIF(ISNOTHING(Fields!SOP10200_ADDRESS2.Value) 
      OR Fields!SOP10200_ADDRESS2.Value = "", "", VBCRLF) & 
 TRIM(Fields!SOP10200_CITY.Value) & "," & 
 TRIM(Fields!SOP10200_STATE.Value) & " " & 
 TRIM(Fields!SOP10200_ZIPCODE.Value)

谢谢汉诺威。 我不得不稍微改变它,然后它起作用了!

=Fields!SOP10200_ADDRESS1.Value & vbcrlf &
IIF(ISNOTHING(Fields!SOP10200_ADDRESS2.Value)
OR Fields!SOP10200_ADDRESS2.Value = "",vbcrlf,"")
 & TRIM(Fields!SOP10200_CITY.Value) & "," & TRIM(Fields!SOP10200_STATE.Value)
 & " " & TRIM(Fields!SOP10200_ZIPCODE.Value)

最新更新