Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 2008 sql server 2008报表服务_Sql Server 2008_Reporting Services_Expression - Fatal编程技术网

Sql server 2008 sql server 2008报表服务

Sql server 2008 sql server 2008报表服务,sql-server-2008,reporting-services,expression,Sql Server 2008,Reporting Services,Expression,我正在尝试生成矩阵报告。我有一个SSN行和一个3位代码列。3位代码在整个报告中随机插入到单元格中,每行一个。我想让它们都显示在一列中。我试过 =Iif(IsNothing(Fields!CODE.Value),"The Field Is Null",Fields!CODE.Value) 但这只是显示“字段为空”。我想在…中显示任何内容 =Iif(IsNothing(Fields!CODE.Value),"",Fields!CODE.Value) 但将空单元格本身排除在外。有人知道一个诀窍吗

我正在尝试生成矩阵报告。我有一个SSN行和一个3位代码列。3位代码在整个报告中随机插入到单元格中,每行一个。我想让它们都显示在一列中。我试过

=Iif(IsNothing(Fields!CODE.Value),"The Field Is Null",Fields!CODE.Value)
但这只是显示“字段为空”。我想在…中显示任何内容

=Iif(IsNothing(Fields!CODE.Value),"",Fields!CODE.Value)
但将空单元格本身排除在外。有人知道一个诀窍吗

结果是这样的

ssn          code
123456789    123
123456789    123
and so on
我的矩阵结构看起来像这样。。。

Exp现在设置为=Iif(IsNothing(Fields!ID5.Value),“Field为Null”,Fields!ID5.Value)
注意:ID5只是一种快速命名约定。ID5对应于代码。ID2对应于SSN。

基本上,您希望将多个列压缩为一个列(不包括空列)

最简单的方法可能是在查询中执行:

SELECT SSN, IsNull(Code1, '') + IsNull(Code2, '') + IsNull(Code3, '') AS Code
FROM MyTable
或者,在Reporting Services中的表达式中执行此操作:

=IIF(IsNothing(Fields!Code1.Value), "", Fields!Code1.Value) + IIF(IsNothing(Fields!Code2.Value), "", Fields!Code2.Value)

诸如此类……

请您在报告中添加数据的外观,并添加更多有关您想要显示的内容的信息。你似乎说你想显示代码,但后来又说你不想显示???所以字段!值可以是:有一个值;具有空字符串值;是空的吗?你想让空字符串和空字符串显示相同的内容吗?我真的想让空单元格消失,呵呵!我只是用Iif命令作为起点。我确实想显示代码值,但它们已分配。每行一个,大约20个单元格中的一个。我可以在构建报表的早期部分使用它,但在查询数据集后,我试图找到一个表达式来执行此操作。当然,除非您知道如何将其作为可接受的表达式编写。我没有,但是我的技术水平很低!只需使用IIF(没有什么(…如现在的答案所述