列出指定文件夹中的文件夹

Listing folders in specified folder

我正在尝试使用此代码列出 NetSuite 中文件柜文件夹中的文件,但我只能列出文件。我需要列出 ID 为 28

的文件夹内的文件夹

我使用的代码:

var folder = 28;

var filters = new Array();
filters[0] = new nlobjSearchFilter('internalid', null, 'is', folder);

var columns = new Array();
var filename = new nlobjSearchColumn('name', 'file');
var fileid = new nlobjSearchColumn('internalid', 'file');

columns[0] = filename;
columns[1] = fileid;

var searchResult = nlapiSearchRecord('folder', null , filters , columns);
if(searchResult) {
for (var i = 0 ; i < searchResult.length; i++) {
    alert(searchResult[i].getValue(filename)+searchResult[i].getValue(fileid));
    };
};

结果:

warning File1.txt1938   11/22/2016 17:30:08.693
warning File2.txt1636   11/22/2016 17:30:08.693
warning File3.txt1939   11/22/2016 17:30:08.693
warning File4.txt4601   11/22/2016 17:30:08.693

这是正确的,但它只列出了文件,没有列出文件夹?

谢谢!

执行 UserEvent BeforeLoad 函数。所有文件都有父文件夹 ID。

// pass in the internal id of the file's parent folder
var folder = 415 // the folder ID we care about

var filters = new Array();
filters[0] = new nlobjSearchFilter('internalid', null, 'is', folder);

//file name and file internal ID
var columns = new Array();
var filename = new nlobjSearchColumn('name', 'file');
var fileid = new nlobjSearchColumn('internalid', 'file');

columns[0] = filename;
columns[1] = fileid;

// perform the search and loop through the findings
var searchResult = nlapiSearchRecord('folder', null , filters , columns);
if(searchResult) {
for (var i = 0 ; i < searchResult.length; i++) {
    var f = searchResult[i];
    //do what you want with f here
    };
};

来源:http://blog.prolecto.com/2014/01/09/get-netsuite-list-of-files-from-folder/

我能够使用以下代码列出文件夹的子文件夹:

var folder = 3232;

var filters = new Array();
filters[0] = new nlobjSearchFilter('parent', null, 'is', folder);

var columns = new Array();
var filename = new nlobjSearchColumn('name');
var fileid = new nlobjSearchColumn('internalid');

columns[0] = filename;
columns[1] = fileid;

var searchResult = nlapiSearchRecord('folder', null , filters , columns);
if(searchResult) {
for (var i = 0 ; i < searchResult.length; i++) {
    alert(searchResult[i].getValue(filename)+searchResult[i].getValue(fileid));
    };
};