我想在聚合函数中只添加正值,即sum。它应该只增加正值。我在做什么
SUM(((字段!MonthlyTarget.Value-字段!MonthToDateUnits.Value-字段!DUSales.Value)/(字段!RemaningDays.Value + 1)))
但现在我想忽略要添加的负值。
答案 0 :(得分:0)
您需要将分子更改为IIf
表达式,如果现有值为负,则返回0,即更改
Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value
类似于:
IIf(Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value > 0
, Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value
, 0)
根据基础数据类型,您可能需要强制转换以防止表达式中不同数据类型的聚合,因此#Error
显示在报告中,即
IIf(Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value > 0
, Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value
, CDbl(0))
或
IIf(Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value > 0
, Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value
, CDec(0))
所以整个表达式就像:
SUM(((IIf(Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value > 0
, Fields!MonthlyTarget.Value-Fields!MonthToDateUnits.Value-Fields!DUSales.Value
, 0))/(Fields!RemaningDays.Value+1)))