Export saved search result into csv and save in file cabinet
Category : Uncategorized
In this blog of smiling coders we will be talking about saved search,file object and its automation . I Suppose you have a client asking for Exporting a saved search result and save it as CSV file to the File Cabinet that task we can automate via script.
To get the value of each columns, resultObject.getValue(name: ‘value’) can be used where the internal id of the field is required. In this article, the internal ids will not be use.
Approach
To get the value of the columns without using the internal id of the field, resultObject.getValue(mySearch.columns[0]) can be used instead.
Consider the following details:
Saved Search ID: 123 //any integer
Saved Search Columns:
• Internal ID
• Item Name
• Formula Column
Folder ID: 123 //folder internal id
With these details, see the sample Scheduled Script below.
/**
* @NApiVersion 2.x
* @NScriptType ScheduledScript
* @NModuleScope SameAccount
*/
define([‘N/search’,’N/file’], function(search,file) {
function execute(scriptContext) {
//Load saved search
var mySearch = search.load({
id: ‘123’
})
//Run saved search
var SCSearchResultSet = mySearch.run();
log.debug(‘Results…’,SCSearchResultSet)
//Headers of CSV File separated by commas and ends with a new line (\r\n)
var csvFile = ‘Internal ID,Item Name,Average Cost\r\n’;
//Iterate through each result
SCSearchResultSet.each(iterator);
function iterator(resultObject){
//Get value returned for Internal ID
var internalid = resultObject.getValue(mySearch.columns[0])
//Get value returned for Item ID
var itemid = resultObject.getValue(mySearch.columns[1])
//Get value returned for Formula Column
var formulacolumn = resultObject.getValue(mySearch.columns[2])
//Add each result as a new line on CSV
csvFile += internalid+’,’+itemid+’,’+formulacolumn+’\r\n’
return true;
}
//Variable for datetime
var date = new Date();
//Creation of file
var fileObj = file.create({
//To make each file unique and avoid overwriting, append date on the title
name: ‘Saved Search Result – ‘ + date.toLocaleDateString() +’.csv’,
fileType: file.Type.CSV,
contents: csvFile,
description: ‘This is a CSV file.’,
encoding: file.Encoding.UTF8,
folder: 123
});
//Save the CSV file
var fileId = fileObj.save()
log.debug(‘File ID…’,fileId)
}
return {
execute: execute
};
});
Reference : netsuite.com, netsuite help and netsuite guide.
Feel free to reach out Netsuite Solution provider TheSmilingCoders for proper netsuite implementation, netsuite consultation , netsuite customization, netsuite Support, netsuite Training , NetSuite Celigo Integration , Celigo Consultant, Celigo Integration Consultant.
contact us : [email protected]
Linkedin : https://www.linkedin.com/company/netsuite-academy/