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

时间:2016-11-21 17:04:27

标签: netsuite suitescript

我正在尝试使用此代码列出NetSuite中cabinet文件夹中的文件,但我只能列出这些文件。我需要列出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

这是正确的,但它只列出文件,而不是文件夹?

谢谢!

2 个答案:

答案 0 :(得分:2)

执行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/

答案 1 :(得分:1)

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

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));
    };
};