Сброс содержимого файла CSV в картотеке - PullRequest
0 голосов
/ 02 мая 2019

Я читаю содержимое файла CSV в картотеке с пользователем Event Suitelet, живущим по заказам на продажу, и пытаюсь сбросить содержимое файла в пустой CSV после того, как я закончу

Я могу успешно добавлять строки и читать содержимое, но ничего о сбросе содержимого в документации NetSuite нет.Я просто ищу способ сбросить файл в пустой CSV.

/**
 *
  @NApiVersion 2.x
  @NModuleScope SameAccount
  @NScriptType UserEventScript
  @appliedtorecord salesorder
 */

define(['N/file'], function(file) {
  function resetCSVFile(context) {
    var fileObj = file.load({ id: '104819' });

    var iterator = fileObj.lines.iterator();
    var idArrays = [];

    iterator.each(function(line) {
      idArrays.push(line.value);
      // the line below is my failed attempt at resetting the line
      line.value = ''
      return true;
    });

    log.audit({ title: 'idArrays', details: idArrays });

    fileObj.save();
    return true;
  }

  return {
    afterSubmit: resetCSVFile
  };
});

1 Ответ

1 голос
/ 02 мая 2019

После того, как вы закончите обработку файла, вы захотите использовать file.create() для создания нового файлового объекта с такими же значениями свойств name, fileType и folder.Установите для свойства contents этого объекта файла что-то (возможно, строку заголовка) и сохраните его.Это заменит существующий файл пустым файлом, но сохранит тот же внутренний идентификатор исходного файла .

Вот пример, который захватывает строку заголовка файла CSV и создает пустой файлс этой строкой заголовка.При создании объекта файла свойство содержимого не может иметь значение null или пустую строку.

var fileObj = file.load({ id: '5447' });
var currentLine = 0;
var headerRow = '';
fileObj.lines.iterator().each(function(line) {
  currentLine++;
  if (currentLine === 1) {
    headerRow = line.value + '\n';
  }
  log.debug({ title: 'header', details: line.value });
  return true;
});

var newFile = file.create({
  name: fileObj.name,
  fileType: file.Type.CSV,
  folder: fileObj.folder,
  contents: headerRow
});

newFile.save();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...