【发布时间】:2011-06-11 06:12:05
【问题描述】:
我有一个显示多页行的 SSRS 报告。在每一行中都有一个“TYPE”字段。在该 TYPE 字段中,有一个“M”代表值或一个“P”代表该值。在报告的最后,我想总结“P”类型的所有价格值。我试过这个,但它产生了一个#Error:
=Sum(iif(Fields!TYPE.Value = "P",Fields!EXT_QTY.Value * Fields!PRICE.Value ,0))
这是所有行的总和
=iif(Fields!PART_TYPE.Value = "P" , Sum(Fields!EXT_QTY.Value * Fields!PRICE.Value ), 0 )
我确信这是可行的。有任何想法吗?谢谢
【问题讨论】:
-
为什么在这种情况下需要 CDbl?
-
在 OP 的场景中
Sum(Fields!EXT_QTY.Value * Fields!PRICE.Value )正在生成具有 double 和/或 decimal 类型的数字,并且在 SSRS 中,当您执行 SUM 时,它期望 SUM 相似的类型并且0是整数。它因此而失败。因此,将 IIF 语句的真假部分转换为相同的数据类型即可解决错误。
标签: reporting-services conditional sum