SSRS&lt; <expr>&gt;和</expr>的错误

时间:2014-03-25 14:40:36

标签: reporting-services

我在同一数据集上有两个方程式。一个返回错误,另一个不返回错误。方程式如下:

1) =Sum(IIF(Fields!Service.Value="Dispatch Only", 0, Fields!Charge.Value))
2) =Sum(IIF(Fields!Service.Value="DispatchOnly", 0, Fields!Charge.Value))

请注意,两者之间的唯一区别是我从我正在寻找的领域中占用了一个空间。

我想要整个数据集的总和。但是,如果没有&#34; Dispatch Only&#34;我还需要知道相同的金额是多少。值。显然,等式#2并没有产生任何有用的信息(它只是总和),但我加上它只是为了证明我并不是因为一些非常基本的错字而疯了,就像一个逗号地方。

我对方程式#1做错了什么?

This is the result of two equations on the same dataset

1 个答案:

答案 0 :(得分:1)

当在不同的数据类型上应用聚合时,通常会发生这种情况,除非您有IIf语句,否则您不太可能获得这种数据类型。

您可能在Charge 0 之间(即Charge的基础数据类型与整数 0 之间)不匹配

要解决此问题,请确保 0 Charge的数据类型相同,即根据需要使用CDec(0)CDbl(0)。< / p>

要考虑的另一个选择是使用Nothing代替 0 - 通过使用SSRS空值来避免任何数据类型冲突,但它确实具有返回{的缺点{1}}如果没有匹配的 Dispatch Only 行。