Я пытаюсь создать скрипт, который будет конвертировать документы xls в папке в версии листов, а затем удалять версии xls. Сценарий работает, но, поскольку у меня в папке много файлов xls, я считаю, что он истекает из-за истечения срока действия: «Извините, произошла ошибка сервера. Пожалуйста, подождите немного и попробуйте снова» (строка 6,Ошибка файла "Convert XLS") через некоторое время после запуска. Есть ли способ выполнить это без тайм-аута сервера или что-то?
function convertXLS() {
var folder = DriveApp.getFolderById('File_ID');
var files = folder.getFilesByType(MimeType.MICROSOFT_EXCEL_LEGACY);
while (files.hasNext()) {
var file = files.next();
Drive.Files.copy({}, file.getId(), {convert: true});
}
// while (files.hasNext()) {
// Drive.Files.remove( file.getId());
//}
}
Обновление:
Итак, я перенастроил код так:
function importXLS(){
var folder = DriveApp.getFolderById('File_ID');// you can also use a folder as starting point and get the files in that folder... use only DriveApp method here.
var files = folder.getFilesByType(MimeType.MICROSOFT_EXCEL_LEGACY);
while(files.hasNext()){
var xFile = files.next();
var name = xFile.getName();
if (name.indexOf('.xls')>-1){ // this check is not necessaey here because I get the files with a search but I left it in case you get the files differently...
var ID = xFile.getId();
var xBlob = xFile.getBlob();
var newFile = { title : name+'_converted',
key : ID,
'parents':[{"id":"File_ID"}]
}
file = Drive.Files.insert(newFile, xBlob, {
convert: true,
});
}
}
}
Но теперь он выдает мне эту ошибку - вызов API для drive.files. вставка не удалась с ошибкой: Внутренняя ошибка (строка 14, файл "Преобразовать XLS") "примерно через две минуты после запуска. Я не знаю, что делать: (