RDL 2016 Report Builder 为可选参数跳过一行

RDL 2016 Report Builder skip a line for an optional parameter

我有一个包含多个参数的 RDL 模板。它们都是可选的并标记为:

重要的是它们是可选的,因为有时地址不包含 AddressLine3(或者实际上不包含 AddressLine1 或 AddressLine2,甚至 PostCode):

它们都放在一个文本框区域中,并且一切正常,但问题是如果我不传递可选参数之一(下例中的 AddressLIne2)- 中保留了一个空行报告:

关于如何使空行消失的任何想法?

最简单的方法是用一个表达式替换 5 个参数的列表。像这样。

=
Parameters!FullName.Value & IIF(IsNothing(Parameters!FullName.Value), Nothing, vbcrlf) &
Parameters!AddressLine1.Value & IIF(IsNothing(Parameters!AddressLine1.Value), Nothing, vbcrlf) &
Parameters!AddressLine2.Value & IIF(IsNothing(Parameters!AddressLine2.Value), Nothing, vbcrlf) &
Parameters!AddressLine3.Value & IIF(IsNothing(Parameters!AddressLine3.Value), Nothing, vbcrlf) &
Parameters!PostCode.Value

仅当参数不为空时,才将每个参数值与添加的新行连接起来。


演示数据

下面显示了应用于 AdventureWorks 示例数据库中的一些地址数据的相同原理

报告显示所有地址字段以供说明

给出以下输出