Я довольно новичок в программировании на javascript и пытаюсь написать скрипт, который находит последний CSV-файл в папке на Google Диске и копирует содержимое на существующий лист под последней строкой данных.
Я получаю сообщение об ошибке:
TypeError: Невозможно найти функцию hasNext в объекте. Пт 10 мая 2019 16:42:55 GMT + 1000 (AEST). (строка 11, файл «Код»)
Любая помощь будет высоко ценится!
КОД:
function getCSV() {
var fSource = DriveApp.getFolderById('1mwVqOXikSBh4mcr4iowzJTa4ZvNnzO12'); // reports_folder_id = id of folder where csv reports are saved
var fi = fSource.getFilesByType('text/csv');// latest report file
let lastUpdatedFile = null;
while(fi.hasNext()){
if(!lastUpdatedFile){ //Checks if we didn't assign anything to lastUpdatedFile
lastUpdatedFile = fi.next();
}else{
var currentFile = fi.next();
//lastUpdatedFile is older than the current file
//set lastUpdatedFile to the current file
if(lastUpdatedFile.getLastUpdated() < currentFile.getLastUpdated()){
lastUpdatedFile = currentFile;
}
}
}
var ss =SpreadsheetApp.openById('1W2-83TlLONomkcKtaH6f0Zcm4G9jJ1DdWn9BXBhKo2s'); // data_sheet_id = id of spreadsheet that holds the data to be updated with new report data
var sd = SpreadsheetApp.getActiveSpreadsheet();
var s = SpreadsheetApp.getActiveSheet();
var target = new Array()
var sSheet = SpreadsheetApp.getActiveSpreadsheet();
sheet = SpreadsheetApp.setActiveSheet(sSheet.getSheets()[0]);
if ( fi.hasNext()) {
var file = fi.next();
var csvData = Utilities.parseCsv(file.getBlob().getDataAsString());
var sheet = ss.getSheets()[0];
var lastrow = s.getLastRow();
s.getRange(lastrow + 1, 1, csvData.length, csvData[0].length).setValues(csvData);
s.getRange(+1, 1, csvData.length, csvData[5].length).setValues(csvData);
}
}