我很难理解为什么这个循环无法正常工作。它似乎只是第一轮迭代。订单项计数记录4因此应该循环4次,因为有4个订单项。需要能够从外部系统更新订单项,因此我有一个外部ID,我将匹配现有的外部ID。
var itemcount = update_record.getLineItemCount('item');
for (var i = 1; i <= itemcount; i++)
{
var a_id = update_record.getLineItemValue('item', 'custcol_ex_line_id', i);
var json_itemcount = jsonObject.item.length
for (var x = 0; json_itemcount != null && x < json_itemcount; x++)
{
var json_id = jsonObject.item[x].ex_line_id
if(json_id == a_id)
{
nlapiLogExecution('DEBUG', 'Match Found');
update_record.setLineItemValue('item', 'amount', i, jsonObject.item[x].amount)
var id = nlapiSubmitRecord(update_record, true);
return id;
}
else
{
nlapiLogExecution('DEBUG', 'no match found - no updates required');
}
}
}
"item": [{"item" : 38, "amount": 1786, "ex_line_id" : 111},
{"item" : 38, "amount": 1786, "ex_line_id" : 113},
]
}
&#13;
答案 0 :(得分:4)
此代码因第一次更新基础记录而返回时停止。
您希望在循环中进行更新但不提交记录并返回循环完成。