Discussions
Read on for the latest updates including:
• Agenda Builder launch
• SuiteWorld On Air registration
• New NetSuite Prompt Studio Contest
• And more!
Check out this thread to learn more!
Replacing a Search Result's column headers with getLabel values
Hey Everyone,
I am currently (successfully) returning Saved Search data from NetSuite to a Node.js application using the RESTLet API. However, the data object has column names which are often cryptic (such as 'forumlatext'), instead of the column's label (such as 'Amount' and 'Customer' in this example).
Here is the RESTlet that gets the results, adds the column labels to the array (2 columns in this example), and then adds the rest of the rows to the array (1 row of results in this example):
function executeSavedSearch(options) { if ( !options.searchId ) { return { error: 'Must provide the searchId of the saved search', options: options }; } var search = nlapiLoadSearch(null, options.searchId); var resultset = search.runSearch(); var column_list = resultset.getColumns(); var col_len = column_list.length; var results = []; for (var i = 0; i < col_len; i++) { var column = column_list[i]; var colLabel = column.getLabel(); results.push (colLabel); }; var SLICE_LIMIT = 1000; var index = 0; do { var subset = resultset.getResults(index, index+1000); if ( !subset ) break; subset.forEach( function (row) { results.push(row); index++; }); } while (subset.length === SLICE_LIMIT); nlapiLogExecution('DEBUG','Results',results); return