gpt4 book ai didi

javascript - Netsuite 将搜索保存到 Suitelet 子列表

转载 作者:行者123 更新时间:2023-11-30 16:28:29 24 4
gpt4 key购买 nike

我正在尝试使用我已经创建的自定义保存搜索中的数据填充套件中的子列表。我的问题是子列表仅从与我正在执行的已保存搜索的“类型”相对应的字段中填充数据。例如,在这种情况下,保存的搜索是“交易”类型的搜索。例如,如果我想在保存的搜索中引用客户字段,比如“姓名”和“账单地址”,则此数据将不会填充套件中的子列表。交易记录本身引用的所有其他字段都很好地填充了子列表。我只是想知道是否有人遇到过同样的问题,无论如何这是我要实现的代码。

 var form,
sublist;

//GET
if (request.getMethod() == 'GET')
{
//create form
form = nlapiCreateForm('Test Custom Suitelet Form', false);

//create sublist to show results
sublist = form.addSubList('custpage_sublist_id', 'list', 'Item List');


//form buttons
form.addSubmitButton('Submit');
form.addResetButton('Reset');

// run existing saved search
var searchResults = nlapiSearchRecord('transaction','customsearchID');
var columns = searchResults[0].getAllColumns();

// Add the search column names to the sublist field
for ( var i=0; i< columns.length; i++ )
{
sublist.addField(columns[i].getName() ,'text', columns[i].getLabel() );
nlapiLogExecution('DEBUG', 'Column Label',columns[i].getLabel());
}

//additional sublist fields
sublist.addMarkAllButtons();
sublist.addField('custfield_selected', 'checkbox', 'Selected');

sublist.setLineItemValues(searchResults)

response.writePage(form);

}

最佳答案

如果您查看 nlobjSublist 文档,您会发现 sublist.setLineItemValues 也可以采用哈希数组。起作用的是:

function getJoinedName(col) {
var join = col.getJoin();
return join ? col.getName() + '__' + join : col.getName();
}
searchResults[0].getAllColumns().forEach(function(col) {
sublist.addField(getJoinedName(col), 'text', col.getLabel());
nlapiLogExecution('DEBUG', 'Column Label', col.getLabel());
});
var resolvedJoins = searchResults.map(function(sr) {
var ret = {
id: sr.getId()
};
sr.getAllColumns().forEach(function(col) {
ret[getJoinedName(col)] = sr.getText(col) || sr.getValue(col);
});
return ret;
});
sublist.setLineItemValues(resolvedJoins);

关于javascript - Netsuite 将搜索保存到 Suitelet 子列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33742377/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com