Modules
Objects/Functions
SuiteScript 2.0
N/file Module
Member Type:
Name
Search NetSuite -
https://system.netsuite.com/app/help/helpcenter.nl?search=N/file Module
// Code Example 1
/**
* @NApiVersion 2.x
*/
require(['N/file'], function(file) {
function createAndSaveFile() {
var fileObj = file.create({
name: 'test.txt',
fileType: file.Type.PLAINTEXT,
contents: 'Hello World\nHello World'
});
fileObj.folder = -15;
var id = fileObj.save();
fileObj = file.load({
id: id
});
}
createAndSaveFile();
});
// Code Example 2
/**
* @NApiVersion 2.x
*/
require(['N/file'], function(file){
function createAndSaveFile(){
var fileObj = file.create({
name: 'test.txt',
fileType: file.Type.PLAINTEXT,
contents: 'Hello World\nHello World',
folder : -15,
isOnline : true
});
var id = fileObj.save();
fileObj = file.load({
id: id
});
}
createAndSaveFile();
});
// Code Example 3
/**
* @NApiVersion 2.x
*/
require(['N/file', 'N/error', 'N/log'], function (file, error, log) {
// This sample calculates the total for the
// second column value in a CSV file.
//
// Each line in the CSV file has the following format:
// date,amount
//
// Here is the data that the script adds to the file:
// 10/21/14,200.0
// 10/21/15,210.2
// 10/21/16,250.3
// Create the CSV file
var csvFile = file.create({
name: 'data.csv',
contents: 'date,amount\n',
folder: 39,
fileType: 'CSV'
});
// Add the data
csvFile.appendLine({
value: '10/21/14,200.0'
});
csvFile.appendLine({
value: '10/21/15,210.2'
});
csvFile.appendLine({
value: '10/21/16,250.3'
});
// Save the file
var csvFileId = csvFile.save();
// Create a variable to store the calculated total
var total = 0.0;
// Load the file
var invoiceFile = file.load({
id: csvFileId
});
// Obtain an iterator to process each line in the file
var iterator = invoiceFile.lines.iterator();
// Skip the first line, which is the CSV header line
iterator.each(function () {return false;});
// Process each line in the file
iterator.each(function (line) {
// Update the total based on the line value
var lineValues = line.value.split(',');
var lineAmount = parseFloat(lineValues[1]);
if (!lineAmount) {
throw error.create({
name: 'INVALID_INVOICE_FILE',
message: 'Invoice file contained non-numeric value for total: ' + lineValues[1]
});
total += lineAmount;
return true;
}
});
// At this point, the total is 660.5
log.debug({
title: 'total',
details: total
});
});
// Code Example 4
/**
* @NApiVersion 2.0
* @NScriptType bankStatementParserPlugin
*/
define(['N/file', 'N/log'], function(file, log) {
return {
parseBankStatement: function(context) {
var reader = context.input.file.getReader();
var textUntilFirstComma = reader.readUntil(',');
var next10Characters = reader.readChars(10);
var textUntilNextNewLine = reader.readUntil('\n');
var next100Characters = reader.readChars(100);
log.debug({
title: 'STATEMENT TEXT',
details: textUntilFirstComma
});
log.debug({
title: 'STATEMENT TEXT',
details: next10Characters
});
log.debug({
title: 'STATEMENT TEXT',
details: textUntilNextNewLine
});
log.debug({
title: 'STATEMENT TEXT',
details: next100Characters
})
}
}
});
// Code Example 5
/**
* @NApiVersion 2.0
* @NScriptType bankStatementParserPlugin
*/
define(['N/file', 'N/log'], function(file, log) {
return {
parseBankStatement: function(context) {
var statementFile = context.input.file;
var statementSegmentIterator = statementFile.getSegments({separator: '\\|_|/'}).iterator();
statementSegmentIterator.each(function (segment) {
log.debug({
title: 'STATEMENT TEXT',
details: segment.value
});
return true;
});
}
}
});
//SOURCE: https://system.netsuite.com/app/help/helpcenter.nl?fid=section_4205693274.html