用零替换空值

Ken*_*enD 4 reporting-services ssrs-2008-r2

我知道这个问题之前已被多次询问过,但是按照以前的解决方案我还是无法解决问题:

我有一份SSRS(2008R2)报告,它以矩阵形式显示数据.有一个水平列组包含可能存在或不存在的值:当值不存在时,我想用空格替换空单元格0.目前该报告呈现如下:

在此输入图像描述

我希望那些空洞的细胞0代替它们.细胞表达设定为:

 =Sum(Fields!number.Value)
Run Code Online (Sandbox Code Playgroud)

所以我试过了

 =iif (IsNothing(Sum(Fields!number.Value)),0,Sum(Fields!number.Value))
Run Code Online (Sandbox Code Playgroud)

=iif (IsNothing(Fields!number.Value),0,Sum(Fields!number.Value))
Run Code Online (Sandbox Code Playgroud)

=iif (Sum(Fields!number.Value)>0,Sum(Fields!number.Value),0)
Run Code Online (Sandbox Code Playgroud)

......但是"空"的细胞仍然存在.我确定我做的事情很糟糕......但是什么?

编辑:为了更好地说明我的情况,我的查询产生输出(在SSMS中)类似于:

File | outcomeID     | number
A    |    Outcome1   |   2
A    |    Outcome2   |   1
B    |    Outcome2   |   2
C    |    Outcome1   |   1
D    |    Outcome3   |   2
Run Code Online (Sandbox Code Playgroud)

......这会产生SSRS的结果:

File | Outcome1 | Outcome2  | Outcome3
 A   |    2     |     1     |
 B   |    2     |           |
 C   |    1     |           |
 D   |          |           |    2
Run Code Online (Sandbox Code Playgroud)

使用列组:

在此输入图像描述 在此输入图像描述

即使我将表达式改为简单:

=999

我结束了

File | Outcome1 | Outcome2  | Outcome3
 A   |    999   |     999   |
 B   |    999   |           |
 C   |    999   |           |
 D   |          |           |    999
Run Code Online (Sandbox Code Playgroud)

......即大量空白.

EDIT2:我上传了一个非常小的示例.rdl文件[REMOVED],使用上面的示例数据 - 它重现了问题

pan*_*018 8

我的第一个想法是对存储过程的更改,但由于我有一个类似的报告来快速测试一些东西我有一个想法.

试试这个

=0+Sum(Fields!number.Value)
Run Code Online (Sandbox Code Playgroud)