Discussions
Stay up-to-date with the latest news from NetSuite. You’ll be in the know about how to connect with peers and take your business to new heights at our virtual, in-person, on demand events, and much more.
Now is the time to ask your NetSuite-savvy friends and colleagues to join the NetSuite Support Community! Refer now! Click here to watch and learn more!
Update your Profile with your Support type to get your Support Type badge.
Uncover the power of data with the Analytics Hub —your ultimate guide to mastering NetSuite Saved Searches and Reports. Simplify the complex and unlock your organization's true potential. Dive into the Analytics Hub now and soar to new heights!
To help you get the most out of your 2025.2 Release Preview account, review the topics outlined in the 2025.2 Release Preview Guide.
Nominate Your Peers for NetSuite Support Community's Choice of the Quarter! Submit your nomination today.
Intelligent Payment Automation version 1.0.3 is now available in the SuiteApp Marketplace. The SuiteApp, powered by BILL, lets you automate payments, manage vendor details, and bank account information within NetSuite. 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
Tagged:
0