Netsuite 如何在suitelet 1.0中将项目列表创建为选择字段

Netsuite 如何在suitelet 1.0中将项目列表创建为选择字段,netsuite,suitescript,Netsuite,Suitescript,我想添加项目列表作为选择选项。当用户开始输入项目名称时,相关项目名称将显示在下拉列表中。创建一个自定义字段并将类型指定为列表/记录,然后在列表/记录下拉列表中选择现有对象或通过单击[+]符号创建一个新列表 首先创建一个列表并获取内部ID。例如,内部ID为36 form.addField('myselectfield', 'select', 'my label', '36'); //here 36 is the internal id of the list you created 您需要有一个

我想添加项目列表作为选择选项。当用户开始输入项目名称时,相关项目名称将显示在下拉列表中。

创建一个自定义字段并将类型指定为列表/记录,然后在列表/记录下拉列表中选择现有对象或通过单击[+]符号创建一个新列表


首先创建一个列表并获取内部ID。例如,内部ID为36

form.addField('myselectfield', 'select', 'my label', '36');
//here 36 is the internal id of the list you created

您需要有一个返回ID和名称的搜索:

  var fieldSrch= fieldValueSearch();
  var fld = form.addField('custpage_abc', 'select', 'MY SOURCED FIELD', null).setMandatory(true);
  fld.addSelectOption('', '');
  fieldSrch.forEach(function (opt) {
    fld.addSelectOption(opt.id, opt.value);
  });
你的职能如下:

function fieldValueSearch() {
  var savedSearch = nlapiLoadSearch('your_srch_type', 'your_search_id');
  var results = getResults(savedSearch.runSearch()).map(function (x) {
    return {
      "id": x.getId(),
      "value": x.getValue('name')
    };
  }).sort(function (a, b) {
    return parseFloat(a.id) - parseFloat(b.id);
  });
  return results;
}


function getResults(set) {
  var results = [];
  var i = 0;
  while (true) {
    var result = set.getResults(i, i + 1000);
    if (!result) break;
    results = results.concat(result);
    if (result.length < 1000) break;
    i += 1000;
  }
  return results;
}
函数fieldValueSearch(){
var savedSearch=nlapiLoadSearch(“您的搜索类型”、“您的搜索id”);
var results=getResults(savedSearch.runSearch()).map(函数(x){
返回{
“id”:x.getId(),
“值”:x.getValue('名称')
};
}).排序(功能(a、b){
返回parseFloat(a.id)-parseFloat(b.id);
});
返回结果;
}
函数getResults(set){
var结果=[];
var i=0;
while(true){
var result=set.getResults(i,i+1000);
如果(!结果)中断;
结果=结果。concat(结果);
如果(结果长度<1000)断裂;
i+=1000;
}
返回结果;
}

否我正在suitelet中工作,希望将“装箱表单”字段作为选择选项。