如果您有目标编号和实际编号,那么计算差距的简单方法就是:
{goal} - {actual}
但如果超过目标,则此数字将在报告中显示为负数。我的老板想要使用的惯例是在数字前加上一个“+”符号,以表明我们已超出目标。
我尝试编写一个公式,如果结果返回负数,则将结果乘以-1:
shared numbervar gap;
gap := {goal} - {actual}
if gap < 0 then gap := gap * -1
gap;
但它不起作用。
我的第一个问题是我做错了什么?
我的第二个问题是,有更好的方法吗?我在水晶报道中称之为Gap的其他东西是什么?
答案 0 :(得分:1)
当您与-1
相乘并不意味着它显示为+
时...它不会显示任何负号表示它是正数。
通常在数学中如果在数字之前没有符号,则将其视为正数,无需明确提及+
现在你遇到问题..你已经完成了所有事情,但是因为你需要看到+
标志,然后将其添加如下
shared numbervar gap;
Shared Numbervar display;
gap := {goal} - {actual};
if (gap < 0)
then display := "+"&ToText(gap * -1)
else display := gap;
display
答案 1 :(得分:0)
我能够使用以下公式完成此任务:
shared numbervar gap;
gap := {goal} - {actual};
If gap < 0 then
"+" + totext(gap * -1, 0, "")
Else if gap = 0 then
totext(gap, 0, "")
else
totext(gap, 0, "")