我写了一个非常简单的(我认为)大规模更新,以便在以前的发票上设置部门,这样我就可以按部门运行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)
我有点困惑。错误是记录已被更改?但这是剧本的重点,改变记录!我不确定为什么我会收到此错误或如何继续前进?
答案 0 :(得分:0)
最可能的事情是与用户事件脚本的交互。一个简单的测试是将nlapiSubmitRecord替换为:
nlapiSubmitRecord(recInvoice, {disabletriggers:true});