使用 suitescript 保存的搜索的列名

Colums name of saved search with suitescript

我正在使用套件脚本(API 版本是 1.0)。我在 netsuite 帐户中创建了一个已保存的事务搜索。 现在我想将保存的搜索中的数据提取到我的数据库中,但在此之前只想在我的映射屏幕上列出保存的搜索中存在的列。

为此我写了下面的脚本:

function GetColumnName()
{
        var s = nlapiLoadSearch('transaction', 'customsearchtestsavedsearchwithcustfield');
        var columns = s.getColumns();
        return columns;
}

但在上面的代码中,getColumns 函数不起作用,netsuite 给出了以下错误(错误并没有说明太多)

TITLE
**UNEXPECTED_ERROR**
TYPE
System
DATE & TIME
8/17/2017 4:34 am
DETAILS

谁能帮我解决这个问题。

谢谢

我相信这会给您想要的结果。只需传入 nlobjSearch 对象,它将 return 列名称数组。这被验证为功能正常,如果您仍然收到错误,则说明正在加载的搜索有问题,您应该在 UI.

中诊断此搜索
function searchColTitles(search) { // search is the nlobjSearch from an nlapiLoadSearch(), or nlapiCreateSearch()

var columns = [];
var c;
var cName;
var columnNames = [];


columns = search.getColumns();

for (c = 0; columns.length && c < columns.length; c += 1) {
    cName = columns[c].label;
    if (!cName) {
        cName = columns[c].name;
    }
    columnNames.push(cName);
}

return columnNames;

}