我想通过添加一个新的服务项目来编辑销售订单,在添加之后,我需要批准/将SO的状态更改为“未决履行”。保存时,项目被添加到销售订单中,但在状态更改行抛出错误,如“已更改记录”。脚本是用Suitescript1.0开发的
步骤1:加载销售订单并将服务项添加到其中并保存记录。
步骤2:再次加载销售订单,并将销售订单状态设置为“待定履行”,并保存记录。它没有保存,并以“记录已更改”错误结尾。
在步骤2中,我没有更改销售订单状态,而是通过更改其他字段来尝试,这一次保存了some。因此,问题只是随着SO状态的变化。
我尝试了"nlapiSubmitField“api,但这也解决不了我的问题。
var soRec = nlapiLoadRecord('salesorder', SOId);
....
soRec.selectNewLineItem("item");
soRec.setCurrentLineItemValue("item","item",1093360);
soRec.setCurrentLineItemValue("item","custcol5",ringDesc);
soRec.setCurrentLineItemValue("item","povendor",46063);
soRec.commitLineItem("item");
var order_id = nlapiSubmitRecord(soRec, true, true);
var soObj = nlapiLoadRecord("salesorder", order_id);
soObj.setFieldValue("orderstatus", "B"); // B : Pending Fulfilment
var order_id = nlapiSubmitRecord(soObj, true, true);SO包含下拉项,因此在保存SO时,应该保存so并创建相应的PO。
发布于 2019-11-01 10:42:45
实际上,问题是,所以有太多的时间来保存记录(在步骤1中)。在保存操作完成之前,记录将从下一步再次加载,并再次尝试保存。因此,我设置了一些setTimeout脚本来暂停进程一段时间,并在步骤2中继续加载销售订单。
https://stackoverflow.com/questions/58446067
复制相似问题