Google drive api 谷歌脚本下载文件的形式提交

Google drive api 谷歌脚本下载文件的形式提交,google-drive-api,Google Drive Api,非常感谢你帮我做这件事。我几乎没有编码的经验,所以如果你能帮助,请尽可能具体 我按照一个教程制作了这个东西,当有人完成表单时运行。其思想只是用表单响应替换模板文档中的变量。在本教程中,表单提交时,模板文档保存为PDF格式,然后通过电子邮件发送 但是,我想将PDF下载到电脑的驱动器中,而不是通过电子邮件发送。这可能吗 这是我的密码: var docTemplate = "1JZnLGe5eqIIHe0R7YkN3fsoscoyeQ70k1a_aoYEXdzI"; var docName = "WV

非常感谢你帮我做这件事。我几乎没有编码的经验,所以如果你能帮助,请尽可能具体

我按照一个教程制作了这个东西,当有人完成表单时运行。其思想只是用表单响应替换模板文档中的变量。在本教程中,表单提交时,模板文档保存为PDF格式,然后通过电子邮件发送

但是,我想将PDF下载到电脑的驱动器中,而不是通过电子邮件发送。这可能吗

这是我的密码:

var docTemplate = "1JZnLGe5eqIIHe0R7YkN3fsoscoyeQ70k1a_aoYEXdzI";
var docName = "WV MR Request ";

function onFormSubmit(e) {

var facility_name = e.values[8];
var date = e.values[10];
var cli_first = e.values[2];
var cli_last = e.values[3];
var dob = e.values[4];
var last4 = e.values[5];
var date_range = e.values[6];
var adv_name = e.values[9];
var pronoun = e.values[7];
var email_address = Session.getActiveUser().getEmail();


var copyId = DriveApp.getFileById(docTemplate)
.makeCopy(docName+' for '+cli_last +last4)
.getId();

var copyDoc = DocumentApp.openById(copyId);  

var copyBody = copyDoc.getActiveSection();  

copyBody.replaceText('keyFacilityName', facility_name);
copyBody.replaceText('keyDate', date);
copyBody.replaceText('keyCliFName', cli_first);
copyBody.replaceText('keyCliLName', cli_last);
copyBody.replaceText('keyDOB', dob);
copyBody.replaceText('keyLast4',last4);
copyBody.replaceText('keyDateRange', date_range);
copyBody.replaceText('keyAdvName', adv_name);
copyBody.replaceText('keyPronoun', pronoun);

copyDoc.saveAndClose();

var pdf = DriveApp.getFileById(copyId).getAs("application/pdf");

var subject = "WV Rates Letter" +cli_last +last4;
var body = "See attached letter for " + cli_first + cli_last + "";
MailApp.sendEmail(email_address, subject, body, {htmlBody: body, attachments: pdf});

DriveApp.getFileById(copyId).setTrashed(true);  

}

谢谢你能提供的任何帮助。我真的认为这将是一项简单的任务,但我在谷歌或这个网站上找不到任何东西。

是的,这是可能的。到目前为止你尝试了什么?目前,问题是您找到的唯一代码,并要求修改它。许多示例和答案都提到使用应用程序脚本将文件保存到驱动器。我知道如何将文件保存到驱动器,这不是真正的问题。我想使用应用程序脚本将文件保存到本地计算机。我试图启用advanced drive并实现google在文档中给出的“下载文件”示例。但我要么出错,要么什么也没发生。在标准的google脚本中,我还没有发现一个类或方法提到将文件下载到机器上。我觉得Blob对象(?)可能是实现这一点的方法,但我也无法理解。这是不可能的,因为代码是在谷歌服务器上运行的,而不是在你的机器上。你需要让用户点击一个链接。这是谷歌内置的某种安全功能吗?如果没有更多的直接输入,脚本就不能开始下载?我觉得有点奇怪,他们不允许你开始下载谷歌文档,但他们会自动同步文件夹。一点也不。简单地说,你需要魔法将下载内容从谷歌服务器(脚本运行的地方)转移到你的机器上。是的,这是可能的。到目前为止你尝试了什么?目前,问题是您找到的唯一代码,并要求修改它。许多示例和答案都提到使用应用程序脚本将文件保存到驱动器。我知道如何将文件保存到驱动器,这不是真正的问题。我想使用应用程序脚本将文件保存到本地计算机。我试图启用advanced drive并实现google在文档中给出的“下载文件”示例。但我要么出错,要么什么也没发生。在标准的google脚本中,我还没有发现一个类或方法提到将文件下载到机器上。我觉得Blob对象(?)可能是实现这一点的方法,但我也无法理解。这是不可能的,因为代码是在谷歌服务器上运行的,而不是在你的机器上。你需要让用户点击一个链接。这是谷歌内置的某种安全功能吗?如果没有更多的直接输入,脚本就不能开始下载?我觉得有点奇怪,他们不允许你开始下载谷歌文档,但他们会自动同步文件夹。一点也不。简单地说,你需要魔法将下载内容从谷歌服务器(脚本运行的地方)转移到你的机器上。