我想添加项目列表作为选择选项。当用户开始输入项目名称时,相关项目名称显示在下拉列表中。
答案 0 :(得分:0)
答案 1 :(得分:0)
首先创建一个列表并获取内部ID。例如,内部id为36
form.addField('myselectfield', 'select', 'my label', '36');
//here 36 is the internal id of the list you created
答案 2 :(得分:0)
您需要进行搜索以返回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;
}