Я пытаюсь изменить и сохранить subrecord
в клиентском скрипте, но при его сохранении получаю следующую ошибку:
"Cannot read property 'invalidateCurrentSublistLineForSubrecordCache' of undefined"
Текущий код:
/**
* @NApiVersion 2.x
* @NModuleScope public
*/
define(['N/record','N/currentRecord','N/search'],
function(record,currentRecord,search) {
return({
stock: function(context) {
var curRec = currentRecord.get();
var ab_search = search.create({
type: search.Type.TRANSACTION,
title: 'YXZC_Assembly_Build_Search',
id: 'customsearch_yxzc_assembly_build_search',
columns: ['internalid'],
filters: [
['createdfrom', 'is', curRec.id],'and',['type','is','Build']
]
});
ab_search.save();
var searchResult = ab_search.run().getRange({
start: 0,
end: 1
})[0];
var internalid = searchResult.getValue(searchResult.columns[0]);
search.delete({
id: 'customsearch_yxzc_assembly_build_search'
});
var rec = record.load({
type: record.Type.ASSEMBLY_BUILD,
id: internalid,
// isDynamic: true,
});
var inventorydetailRec = rec.getSubrecord({
fieldId: 'inventorydetail',
});
var line = inventorydetailRec.getLineCount({
sublistId: 'inventoryassignment'
});
for (var i=0; i<line; i++){
inventorydetailRec.setSublistValue({
sublistId:'inventoryassignment',
fieldId: 'inventorystatus',
line: i,
value: '2'
});
};
var recId = rec.save({
enableSourcing: true,
ignoreMandatoryFields: true
});
}
});
});
Я не уверен, что означает свойство invalidateCurrentSublistLineForSubrecordCache
.
Что кто-нибудь знает о том, почему возникает эта ошибка?
Подзаписи доступны только для чтения для клиентских скриптов. Клиентские скрипты могут удалять подзапись из родительской записи, но не могут их изменять. См. Поддерживаемые развертывания для сценариев субзаписи в справке NetSuite
Попробуйте record.submitFields()
См. https://system.netsuite.com/app/help/helpcenter.nl?fid=section_4267283788.html
Я только что наткнулся на ваш вопрос, так как у меня была такая же проблема, но я нашел решение с помощью @erictgrubaugh
inventorystatus
- допустимый fieldId? Я не рассматриваю это как вариант в подсписке инвентаризации.