【发布时间】:2015-07-23 17:08:14
【问题描述】:
Netsuite 在采购订单和发票中四舍五入时的模式是什么。我需要四舍五入时需要处理的所有场景。例如,如果 123.987 的值将四舍五入到小数点后 2 位数字值,即 123.99 现在由于值为 123.99,它再次将其四舍五入为 124。任何我不知道或需要处理的情况。
提前谢谢你
【问题讨论】:
标签: java integration netsuite erp
Netsuite 在采购订单和发票中四舍五入时的模式是什么。我需要四舍五入时需要处理的所有场景。例如,如果 123.987 的值将四舍五入到小数点后 2 位数字值,即 123.99 现在由于值为 123.99,它再次将其四舍五入为 124。任何我不知道或需要处理的情况。
提前谢谢你
【问题讨论】:
标签: java integration netsuite erp
有关一般舍入,请参阅其他答案。
需要注意的区域是您的商品价格超过 2 位数的情况。 假设您的客户商定了每公斤 0.0756 美元的价格,而您想出售 1000 公斤。 您设置自定义价格水平并将费率设置为 0.0756 美元,数量设置为 1000。 您认为延长线金额应为 75.60 美元,但实际为 76.00 美元。这是因为费率是 NS 中的货币值,它只保留 2 个小数位,因此金额的计算方式就像费率是 0.76 美元/公斤
这是我知道的 Netsuite 中唯一的舍入问题。否则 NS 使用与为 Javascript 定义的相同的舍入算法(这可能会产生有趣的舍入惊喜 - 请参阅 Rounding quirk in JavaScript or IEEE-754?)
【讨论】:
我从客户端测试中得到了什么。
货币值始终使用两位小数。
希望对你有帮助。
【讨论】:
您可能想看看nlapiFormatCurrency(str)。
nlapiFormatCurrency('123.985'); // "123.99"
nlapiFormatCurrency('123.998'); // "123.99"
nlapiFormatCurrency('123.999'); // "124.00"
【讨论】: