使用SuiteScript 2.x无法为Inventory Adjustment记录设置Inventory Status
解决NetSuite库存调整记录设置库存状态失败的问题
问题排查与修正步骤
修复代码语法错误
你的代码存在多余大括号,会导致执行异常:- 开头的
{{需改为{ - 倒数第二行的冗余
}需要删除
修正后的代码结构如下:
{ invAdjDetail.setCurrentSublistValue({ sublistId: "inventoryassignment", fieldId: "inventorystatus", value: invStatus, }); invAdjDetail.setCurrentSublistValue({ sublistId: "inventoryassignment", fieldId: "binnumber", value: invBin, }); invAdjDetail.setCurrentSublistValue({ sublistId: "inventoryassignment", fieldId: "quantity", value: -1 * invQty, }); invAdjDetail.commitLine({ sublistId: "inventoryassignment" }); } invAdj.commitLine({ sublistId: "inventory" });- 开头的
确认正确字段与值类型
- 在
inventoryassignment子列表中,设置库存状态的有效字段仅为inventorystatus,无需同时设置toinventorystatus或status,后两者不属于该子列表的有效操作字段。 - 确保
invStatus变量存储的是库存状态记录的内部ID(数字类型),NetSuite对这类字段仅接受内部ID值,而非状态名称或其他标识。
- 在
验证操作前置步骤
调用setCurrentSublistValue前,需先选中子列表的新行,否则字段设置不会生效:invAdjDetail.selectNewLine({ sublistId: "inventoryassignment" }); // 之后再执行各字段赋值操作
内容的提问来源于stack exchange,提问作者Saahir Kapasi
相关产品推荐
相关产品推荐

