1

我将两个相同类型的业务对象List<DenominationDataEntity>添加到水晶报表中。1. 收到面额 2. 支付面额。

我必须显示两个列表的值,然后我必须减去两个列表字段的值。
例如。ReceivedDenomination和都有PaidDenomination字段Thousand现在我必须减去和的ReceivedDenomination.ThousandPaidDenomination.Thousand。我使用以下代码创建了公式字段。

Global numberVar TotalThousand :=0;

(if IsNull({ReceivedDenomination.Thousand}) then
     TotalThousand
else
     TotalThousand := ToNumber({ReceivedDenomination.Thousand})
);

(if IsNull({PaidDenomination.Thousand}) then
    TotalThousand
else
     TotalThousand := TotalThousand + ToNumber({PaidDenomination.Thousand});
);
TotalThousand

我遇到的问题是该TotalThousand字段返回错误的答案。即如果

ReceivedDenomination.Thousand是 85 并且PaidDenomination.Thousand是 2 然后我得到 2 而不是 83。

4

1 回答 1

0

你试过这样做吗?

Global numberVar TotalThousand :=0;
Global numberVar RcvdThou := 0;
Global numberVar PdThou := 0;

(if IsNull({ReceivedDenomination.Thousand}) then
     TotalThousand
else
     RcvdThou := ToNumber({ReceivedDenomination.Thousand})
);

(if IsNull({PaidDenomination.Thousand}) then
    TotalThousand
else
     PdThou := ToNumber({PaidDenomination.Thousand});
);
TotalThousand := RcvdThou + PdThou;
TotalThousand;

如果这仍然给您带来问题,请尝试将公式分成多个公式并查看每个字段给您的内容。所以你会得到一个 TotalThousand、RcvdThou、PdThou 和一个 Total forma。TotalThousand 将实例化全局,而 RcvdThou 和 PdThou 将显示 2 个数字,而 Total 将提供数学。

于 2012-10-16T10:37:00.420 回答