我正在尝试在SQL Server Report Builder 3.0中产生条件和。

我的表情如下:

=Sum(Iif(Fields!ProjectTypeID.Value=2,Fields!kWp.Value,0))

我希望这个表达式能够产生所有类型2项目的kWp之和。

不幸的是,事实并非如此。而且我似乎无法弄清楚为什么。即使我知道kWp列中有非零值,并且该列不包含空值,它也只会返回0结果。

一位同事确实设法通过替换了
Fields!kWp.Value


1 * Fields!kWp.Value

但是我们不知道为什么这行得通,因此不能真正相信答案。

我怎样才能使这个条件和表现出来呢?

最佳答案

“kWp”列的数据类型为“十进制”,因此您需要将默认值转换为0.00或将列强制转换为double

 SUM(iif(Fields!ProjectTypeID.Value = 2,cdbl(Fields!kWp.Value),0.00))

10-01 20:35