NetSuite Suitescript 2.0 - 删除成员项目然后根据工具包上的字段添加成员项目

NetSuite Suitescript 2.0 - Remove Member Item then Add member item based on a field on the kit

我正在开发一个 SuiteScript,它是我通过观看视频和阅读各种文章拼凑而成的。

目的:从 Kit/Package 项中删除成员项并添加在自定义字段中找到的新成员项。

一些细节:我们使用 Kit/Package 项目来促进我们在单个 SKU 下有库存的一般商品的销售。当我们缺货或缺货时,我们可能会有替代品来代替它。我添加了一个名为 "Best Member Item" {custitem_burkett_bestmemberitem} 的自定义字段。此字段会使用我们可以用来填写客户订单的最佳替代品来填充自身。

问题 #1:脚本对我只输入值的字段标签不满意。 问题 #2:我通过添加文本进行测试,它抱怨“已跳过 - 脚本工作流程操作:设置最佳成员项目没有匹配的受众 “ 下面是脚本。

define(["N/currentRecord"], function(r){

var rec = currentRecord.get();

       function insertLine(rec) {
           rec.insertLine({
               sublistId: "item",
               line: 1
           });

           rec.SetCurrentSublistValue({
               sublistId: "item",
               fieldId: "item",
               Value: {custitem_burkett_bestmemberitem},
           });

           rec.SetCurrentSublistValue({
               sublistId: "item",
               fieldId: "quantity",
               Value: 1
           });

           rec.commitLine({sublistId: "item"});
       };

})

根据您提供的示例,我认为在继续之前您需要更多帮助。

我认为您需要了解并告诉我们您的执行上下文是什么 - 例如,在项目的创建、项目的编辑或交易级别的基础上。

其次,我几乎可以肯定,出于最佳实践或其他原因,N/currentRecord 应该只在客户端脚本中使用。所以这可以成为你可以研究的东西。您当前的示例将用作 2.0 客户端脚本,并进行一些更改...

但根据您的用例,即如果您的用户只会在 UI 中更新此内容,或者更进一步,使用 csv,或两者兼而有之,您可能需要多个脚本。

对我来说,除非有重大变化或用例,否则将其用作 wfa(工作流操作脚本)不是正确的设计前进..