我有一个报告,显示格式为:前缀,第一,中间,最后,后缀的成员名称。报告代码如下所示:[name_prefix] [name_first] [name_middle] [name_last] [name_suffix]SSRS报告:字段为空时字段之间的额外空间
每个字段条目之间有一个单独的空格,当成员具有中间名时效果很好,但当中间名在名字和姓氏之间是空的两个空格。我试图解决这个问题,看起来像这样的表达式:
=IIF(IsNothing(Fields!name_middle.Value),"",Fields!name_middle.Value & " ")
我还调整了间隔,看起来像这样:[name_first] [name_middle] [name_last]与中间名和姓字段之间没有空格。我的希望是,如果有一个中间名,名称之间会有空格,当中间名为空时,名和姓之间只有一个空格。如果中间名称呈现正确,但如果中间名称为空,则仍有额外的空间。所以,我想另一种方法,看起来像这样的字段之间没有空格:
=IIF(IsNothing(Fields!name_middle.Value)," "," " & Fields!name_middle.Value & " ")
同样同样的问题,其中有一个中间的名字,但两个空格当没有正常工作。我曾考虑连接整个成员名称,但我想我会得到相同的结果。使用Crystal Reports完成的相同报告使用第一种方法,并且没有问题。先谢谢你。
马克,你的解决方案工作完美,除了我不得不将0更改为1.我继续前进,编辑/添加到您的文章并接受您的答案,希望您不介意。我相信造成差异的原因是因为我用来测试的数据确实是长度为0的字符串,而不是空值。它是一个生产数据库,所以我无法控制用户是否不改变中间名,或者输入字段使其保持空白。我没有解释的东西。再次感谢你! – PerPlexSystem 2012-01-13 20:13:22
@PerPlexSystem:是的,我原本是指'<1'或'= 0',但不知何故混淆了它们!我很高兴你能够实现它的工作。 :) – 2012-01-13 20:20:44