在我的Google电子表格文件中,我有许多自定义功能,可以对我的服务器执行请求并下载一些数据。我需要自动将其导出为PDF,然后发送特定的电子邮件。
我是这样写的:function sendPDF() {
var pdf = DriveApp.getFileById(SpreadsheetApp.getActive().getId()).getAs('application/pdf').getBytes();
var attach = {fileName:'MyPDF.pdf',content:pdf, mimeType:'application/pdf'};
MailApp.sendEmail("example@email.com", "PDF test", "test", {attachments:[attach]});
}
按时添加触发器,每小时执行一次此功能。问题是,使用一个电子表格我得到的PDF没有下载数据,而另一个电子表格我得到We're sorry, a server error occurred. Please wait a bit and try again. (line 44, file "Code")
错误。
如何强制google电子表格等到下载数据后再下载后发送给我最终PDF?
答案 0 :(得分:0)
可悲的是,如果没有所需的声誉,我无法在上面发表评论。
为什么不像现在这样将它作为一个单独的函数,只需调用main函数中的函数来获取url并下载数据。
您甚至可以将下载的数据写在单独的电子表格中,并插入IF函数,当单元格不为空时,执行pdf脚本!执行脚本clear()并在必要时循环。