我有一个套件小程序,正在创建一个订单。大多数情况下,这工作,但有时,也许1/50它失败了这个错误: "Please enter a value for amount."
这个错误是在提交这个的时候抛出的。
if(orderLine.amount){
log.debug("itemrate", orderLine.itemrate);
salesOrder.setCurrentSublistValue({
sublistId : 'item',
fieldId : 'rate',
value : Number(orderLine.itemrate ? orderLine.itemrate : (orderLine.amount / orderLine.qty))
});
fieldServices.sleep(1000);
log.debug("Amount", orderLine.amount);
salesOrder.setCurrentSublistValue({
sublistId : 'item',
fieldId : 'amount',
value : Number(orderLine.amount)
});
}
执行失败的日志中写道
2 View Debug Amount 26/05/2020 11:21 AM -System- 118.0909090909091
3 View Debug itemrate 26/05/2020 11:21 AM -System- 118.0909
因此,金额被设置为一个金额,但当我试图提交行时,它并不是100%的工作。
所以问题就出在这里。我以为日志是在我发布的那行,但结果是它试图添加另一行金额为0的行。
if(orderLine.amount)
所以金额从来没有被添加到行中。我把这个if语句改为
if(orderLine.amount || orderLine.amount == 0)
这就解决了问题。