Я создаю скрипт приложения Google, который генерирует счета на основе данных в электронной таблице. Для каждого счета-фактуры скрипт должен скопировать шаблон файла do c, добавить соответствующие данные и вывести pdf.
Когда я пытаюсь экспортировать измененный файл do c в pdf, он создает PDF на основе исходного файла шаблона. Ни одно из правок не было учтено.
Тем не менее, в моей функции convertToPDF
идентификатор файла правильный, а do c, на который он указывает, был правильно изменен. Я пытался дозвониться до convertToPDF
извне GenInvoice
, но без особого успеха.
Мое понимание ГАЗА ограничено, я просто пытаюсь продвигаться вперед методом проб и ошибок. Здесь я ничего не понимаю.
Вот минимальный пример, который воспроизводит мою проблему:
function GenInvoice(folder, month, restaurant, adresse, forfait, invoiceNr){
// copy template
var templateid = "1kDDBHiwUikKHRtywJ_Tfig4Nf_wNbdy814_5SvLerkw"
var template = DriveApp.getFileById(templateid);
var newfile = template.makeCopy(template.getName() + "_edited" );
// Open invoice in docs
var docId = newfile.getId()
var doc = DocumentApp.openById(docId);
var body = doc.getBody();
// Remplacing place-holders
body.replaceText("%TemplateText%", "%ModifiedText%");
// Final print
body.appendParagraph('Great work! Keep your flow!');
// convert to PDF
convertToPDF(docId)
}
function convertToPDF(theId){
console.log(theId)
var doc = DriveApp.getFileById(theId);
/* Add the PDF extension */
docblob = doc.getAs('application/pdf');
docblob.setName("Modified_template.pdf"); // doc.getName() + ".pdf")
var file = DriveApp.createFile(docblob);
}