netsuite - suitescript 2.0:如何在客户端脚本中修改和保存子记录
问题描述
我正在尝试修改并保存subrecord
在客户端脚本中,但是保存时出现以下错误:
“无法读取未定义的属性‘invalidateCurrentSublistLineForSubrecordCache’”
当前代码:
/**
* @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
财产是什么意思。
有谁知道为什么会发生此错误?
解决方案
试试record.submitFields()
请参阅https://system.netsuite.com/app/help/helpcenter.nl?fid=section_4267283788.html
我刚刚偶然发现了你的问题,因为我遇到了同样的问题,但在@erictgrubaugh 的帮助下找到了解决方案
推荐阅读
- osgi - 是否有任何实现 org.osgi.service.device 的 apache felix 包?
- node.js - 如果值不存在,如何不更新列续集
- php - 在循环期间将变量数组键分配给多维数组
- wpf - 使用 ValidationRule 验证 WPF 中的值会停止在文本框中设置值(如果它们不正确并保留最后一个正确值)
- termux - AnLinux termux 上的 ARM64 android 设备上缺少 XRANDR 扩展
- wpf - 如何在不阻塞线程的情况下更新 WPF 中的文本和进度条?
- javascript - 谷歌标签管理器 - 安全值 zSoyz 而不是样式属性上的变量值
- python-3.x - ZPL II 将 Z64(base64 和 LZ77)解码为 Python 中的人类可读文本
- php - 无法在编译过程中添加学说订阅者标签
- php - 在 WordPress Multisite 上的 wp-signup.php 上,如何更改错误文本“抱歉,该电子邮件地址已被使用!”