【问题标题】:SSRS Total Row minus a value based on another fields valueSSRS Total Row 减去基于另一个字段值的值
【发布时间】:2015-01-02 05:44:50
【问题描述】:

我试图得到一个总行,显示P2_NUM_START 的总和减去带有“SWP”的PRODUCT_CODE 的记录数,有时存在,有时不存在。无论是否存在“SWP”,删除它不断显示为 False 的 IIF 语句我做错了什么?

目前我在:

=Sum(IIf(Fields!PRODUCT_CODE.Value ="SWP",Fields!P2_NUM_START.Value,0))

【问题讨论】:

  • 显示为假是什么意思?你的意思是零 (0)?
  • 是的,它显示为零。我已将其简化为显示“无 SWP”而不是零,并且每次都会显示。

标签: mysql reporting-services sum conditional-statements


【解决方案1】:

我实际上是通过另一种方法解决了这个问题。将 If 条件添加到数据集中的计算字段,然后在聚合中调用该新字段,如下所示:

如果计算字段中的条件称为 SWP_ACCT_TOTAL_P2

=IIF(Fields!PRODUCT_CODE.Value = "SWP", Fields!P2_NUM_START.Value,0)

texbox 中的求和语句

=Sum(Fields!P2_NUM_START.Value-Fields!SWP_ACCT_TOTAL_P2.Value)

为什么这在单独的语句中有效,但在 SumIIF 中无效,我不知道。

【讨论】:

    【解决方案2】:

    我想你想要: 如果 PRODUCT_CODE 为“SWP”,则值为 0,否则为 P2_NUM_START 的总和

    =Sum(IIf(Fields!PRODUCT_CODE.Value ="SWP",0,Fields!P2_NUM_START.Value))
    

    【讨论】:

    • 如果没有 SWP 的产品代码,这实际上是有效的,那么它正确地总结了 P2_NUM_START 中的所有值。但是,如果有“SWP”,它会在单元格中显示#Error。
    • =Sum(IIf(Fields!PRODUCT_CODE.Value ="SWP","0",Fields!P2_NUM_START.Value))
    • 没有变化,仍然显示#Error。尽管如此,我还是能够通过上述不同的方法解决它。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-13
    • 2015-10-02
    • 2014-11-19
    • 2013-05-21
    • 1970-01-01
    • 2015-04-09
    • 1970-01-01
    相关资源
    最近更新 更多