的行項目我有一個用戶事件腳本部署到銷售訂單。它使用訂單項的字段值來確定剩餘的數量。但是,如果我刪除了訂單項,則不會更新已移除項目的數量。我需要在提交後更新該項目。檢索舊記錄
是否可以編輯使用nlapiGetOldRecord()
或諸如此類的東西刪除行項目的數量嗎?
下面的代碼是什麼樣子:
function afterSubmit(){
var curRec = nlapiGetRecordId();
var item = nlapiLoadRecord('item', curRec);
var sold = item.getFieldValue('cust_sold');
var quantity = item.getFieldValue('cust_quantity');
var leftToSell = quantity - sold;
item.setFieldValue('cust_lefttosell', leftToSell);
var finalValue = item.getFieldValue('cust_lefttosell');
var old = nlapiGetOldRecord(); // only retrieves salesorder record
nlapiSubmitRecord(item);
}
編輯:因此,原來我可以用一個簡單的old.getLineItemValue('item', 'item', linenum)
瞄準線項目。如Adolfo在下面指出的那樣,我可以定位舊記錄的訂單項。出於某種原因,我認爲唯一的方法是使用nlapiGetLineItemField(type, fldnm, linenum)
。功能的getLineItemValue
版本正是我所期待的。 這是代碼會是什麼樣子:
var old = nlapiGetOldRecord();
var id = old.getLineItemValue('item', 'item', linenum);
var rec = nlapiLoadRecord('type', id);
你應該發佈你的代碼的一些例子。 – opticon
@opticon添加了代碼 – VicDid