Apps Script (Ошибка Exception: The document is inaccessible. Please try again later. Creator @ Код.gs:10)
Написал скрипт для автоматизированого создания и заполнения в файле нужних полей, но есть данная ошибка Ошибка Exception: The document is inaccessible. Please try again later. Creator @ Код.gs:10
Посмотрите пожалуйста на код, подскажите где я ошибся.
function Creator() {
const docFile = DriveApp.getFileById("1DhHBAd3ssYMgbbxJatK6_URxBPdoPk2K");
const tempFolder = DriveApp.getFolderById("16keE-_Dm0gglO42Lw0IphiPHYK-_TFXH");
const pdfFolder = DriveApp.getFolderById("1ZsmW9UPNaqgjt8kFh3y9h8tdBLAtj7gC");
var list = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var l=list.getLastRow();
for (var i=2; i <= l; i++) {
const tempFile = docFile.makeCopy(tempFolder);
const tempDocFile = DocumentApp.openById(tempFile.getId());
const body = tempDocFile.getBody();
var a1 = list.getRange(i, 3).getValue();
var a2 = list.getRange(i, 4).getValue();
body.replaceText("{firstname}", a1);
body.replaceText("{lastname}", a2);
tempDocFile.saveAndClose();
const pdfFile = tempDocFile.getAs(MimeType.PDF);
pdfFolder.createFile(pdfFile).setName(a1);
tempFolder.removeFile(tempFile);
}
}
Ответы (1 шт):
Автор решения: contributorpw
→ Ссылка
DocumentsApp общается не с самым быстрым сервисом. Он часто не находит новые файлы. Попробуйте вот так
const tempFile = docFile.makeCopy(tempFolder);
const tempId = tempFile.getId();
// Utilities.sleep(300);
const tempDocFile = DocumentApp.openById(tempId);
Если не получится, попробуйте убрать из комментариев третью строку и поправить время ожидания.