javascript - SuiteScript 清空字段值中的 record.setFieldValues() 问题

标签 javascript netsuite suitescript

好的,所以我有一个附加到自定义记录的用户事件脚本。此自定义记录上的字段之一是项目记录的选择字段。在用户事件脚本中,它获取该字段的值,检查所选项目的项目选项。当它遍历这些值时,它会检查是否缺少某些值并在必要时添加它们。我遇到的问题是它最终将项目选项字段设置为空白。我已经尝试过加载记录、设置值、然后保存,以及尝试使用 nlapiSubmitField() 设置单个值。两种方式的结果都是一样的。以下是代码的简要说明:

var itemId = customRec.getFieldValue("custrec_item_field");
var itemRec = nlapiLoadRecord("noninventoryitem", itemId, { recordmode : "dynamic" });
var optArray = [ "CUSTCOL_OPT1" , "CUSTCOL_OPT2" , "CUSTCOL_OPT3" , "CUSTCOL_OPT4" ];
itemRec.setFieldValues("itemoptions", optArray);
nlapiSubmitRecord(itemRec, true, true);

现在,几个月前我确定它工作正常,如果我在项目记录保存时将类似的登录应用于用户事件 BeforeSubmit 函数,一切都会按预期工作。我确信我可以通过在从原始用户事件调用的 Suitelet 中触发对项目记录的编辑来实现它,但这看起来很荒谬。除非我以小写形式传递项目选项值,否则不会遇到任何错误。我错过了什么吗?还是我只需要找到一种方法在这个用户事件函数之外触发它?

最佳答案

清除选项时其他地方存在缺陷,因为它错误地认为所选值已更改。

关于javascript - SuiteScript 清空字段值中的 record.setFieldValues() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59218898/

相关文章:

javascript - 有没有办法强制更新 redux-form 提交 Prop ?

javascript - HTML5 和 Javascript 角色?

javascript - Netsuite 搜索过滤条件不起作用

javascript - 使用 SuiteScript,如何将 JavaScript 变量组合到字符串中?

javascript - 在 Firebase Functions 中,如何更新声明?

javascript - Response.Redirect(Request.RawUrl) 之后的 Response.Write

javascript - 显示/保存与代码中没有位置的行关联的 NS 高级 pdf/html 模板时出错

netsuite - 有谁知道在哪里可以找到 SS2.0 JSDOC 定义库?

javascript - 如何通过在 SuiteScript 2.0 中使用左外连接连接两条记录来在 netsuite 中创建保存的搜索

javascript - NetSuite - 日期问题