如何删除ssrs中表达式中值的否定符号

Aza*_*hin 1 reporting-services ssrs-2008

FormatCurrency(
(SUM(iif(IsNothing(Fields!Planned.Value),0,Fields!Planned.Value))-(SUM(iif(IsNothing(Fields!Actuals.Value),
iif(IsNothing(Fields!Forecasts.Value),0,Fields!Forecasts.Value),
iif(Fields!Actuals.Value=0,iif(IsNothing(Fields!Forecasts.Value),
0,
Fields!Forecasts.Value),Fields!Actuals.Value))))),
iif(Parameters!DecimalDigits.Value=1,1,iif(Parameters!DecimalDigits.Value=2,2,0)),0,0,0)
)
Run Code Online (Sandbox Code Playgroud)

这是我的表达式,它返回负值以及如何在数字前面删除此负号

Chr*_*tta 8

最简单的方法是转换表达式.例如,如果

Planned - Actual
Run Code Online (Sandbox Code Playgroud)

给你负数,你想要正数然后你想要

Actual - Planned
Run Code Online (Sandbox Code Playgroud)

否则你可以把整个表达式从零开始反转符号:

0 - <expression>
Run Code Online (Sandbox Code Playgroud)

或者如果你真的想要杀死负号,那么使用Absolute- 这会将值作为正数返回

Abs(<expression>)
Run Code Online (Sandbox Code Playgroud)

我还将删除表达式的格式化部分并将其放入Format属性中.SSRS中的几乎所有内容都可以是表达式,因此您无需在Value表达式中执行任何操作.