首页 > 解决方案 > SuiteScript 2.0 中用于替换只读字段中数据的模块?

问题描述

我正在尝试构建一个 Netsuite 脚本来执行以下操作:

  1. 使用交易记录加载已保存的搜索
  2. 使用 CSV 列表中的新超链接 更新(只读)“URL”字段中的值

我找不到可以与这个只读字段交互的 SuiteScript 2.0 模块。这是到目前为止我在控制台中测试的代码。它使用格式(包括内部文件 ID 和现有 URL)成功地在浏览器控制台中加载保存的搜索和结果集results.columns,但我不确定哪个模块允许我用新值实际替换该值。

 /**
 *  @NApiVersion 2.0
 *  @NScriptType ClientScript
 *
 *  1. Load saved search for files to update
 *  2. For each record in saved search, set URL field to new URL value  
 */

require(['N/search', 'N/file'], function(search, file) {
    var searchobj = search.load({
        id: 'customsearch_url'
    })
    var results=searchobj.run();
        console.log(results);
    results.each(function(result) {
        console.log(result);
        var URL = result.getValue(results.columns[4])
        console.log(URL);
        var fileId = result.getValue(results.columns[3])
        var fileObj = file.load({
            id: fileId
        })
        console.log(fileObj)
        return true;
    });
});

编写此脚本以用URL新的超链接替换字段中的值的最佳方法是什么?

标签: javascriptnetsuitesuitescriptsuitescript2.0

解决方案


要在 NetSuite 中创建/更新/删除任何记录,您需要使用N/record模块。首先,您应该加载/创建一个将返回记录对象的记录,然后您可以使用record.setValue函数来设置/更新值。

或者,如果您只想更新正文字段,则可以改用record.submitFields


推荐阅读