Memos About Salesforce

Salesforceにハマってたこと!

nlapiSearchRecord制限

ネットスイートでは保存検索の存在で、結構便利な存在だと思う。

しかし、保存検索を使うには制限もあり。

それは保存検索の返り値リスト最大は1000行制限です。

今回、この最大行数制限の対策を説明します。

 

例にすると

 

 

// create search; alternatively nlapiLoadSearch() can be used to load a saved search

var search = nlapiCreateSearch('salesorder', ['mainline', 'is', 'T']);

var searchResults = search.runSearch();

 

// resultIndex points to record starting current resultSet in the entire results array

var resultIndex = 0;

var resultStep = 1000; // Number of records returned in one step (maximum is 1000)

var resultSet; // temporary variable used to store the result set

do

{

// fetch one result set

resultSet = searchResults.getResults(resultIndex, resultIndex + resultStep);

 

// increase pointer

resultIndex = resultIndex + resultStep;

 

// process or log the results

nlapiLogExecution('DEBUG', 'resultSet returned', resultSet.length

+ ' records returned');

// once no records are returned we already got all of them

} while (resultSet.length > 0)

 

 

 

 

赤字がポイント

まあ、こんなくらいかな