Netsuite质量更新错误

时间:2015-12-28 22:34:06

标签: netsuite

我写了一个非常简单的(我认为)大规模更新,以便在以前的发票上设置部门,这样我就可以按部门运行P& L报告,看看我们不同的业务线是如何进行这个日历年的。

脚本很简单:

function updateInvoiceDepartment(rec_type,rec_id) {
var recInvoice = nlapiLoadRecord(rec_type,rec_id);
if (recInvoice.getFieldValue('job') != null)
    recInvoice.setFieldValue('department',4);
else
    recInvoice.setFieldValue('department',3);
nlapiSubmitRecord(recInvoice); 
}

但是,当我运行脚本时,出现以下错误:

Error: RCRD_HAS_BEEN_CHANGED
Record has been changed
Stack Trace: nlapiCreateError(Controlco_Mass_Update.js$23323:1305)
nlapiSubmitRecord(Controlco_Mass_Update.js$23323:494)
updateInvoiceDepartment(Controlco_Mass_Update.js$23323:232)
<anonymous>(Controlco_Mass_Update.js$23323:234)

我有点困惑。错误是记录已被更改?但这是剧本的重点,改变记录!我不确定为什么我会收到此错误或如何继续前进?

1 个答案:

答案 0 :(得分:0)

最可能的事情是与用户事件脚本的交互。一个简单的测试是将nlapiSubmitRecord替换为:

nlapiSubmitRecord(recInvoice, {disabletriggers:true});