Modules

filter

 

Objects/Functions

module (N/file)

SuiteScript 2.0

Main Examples

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