Google应用脚本:创建新文档并使用Gmail发送

时间:2014-06-26 23:12:13

标签: google-apps-script

我想创建一个文档,然后使用Gmail发送它。这是我的代码:

function myFunction() {
var doc = DocumentApp.create('My document');
doc.getBody().appendParagraph('This is the file that i want to receive');
var file = DriveApp.getFileById(doc.getId());
GmailApp.sendEmail('address@gmail.com', 'Attachment example', 'Please see the attached        file.', {attachments: [file.getAs(MimeType.PDF)],name: 'Automatic Emailer Script'
 });
}

该文件是在我的Google云端硬盘中创建的,附带的段落,doc.getId()中的文件ID是正确的(使用Logger.log()函数)。问题是我总是收到空白的pdf 。我只能在更改代码时手动输入文件ID,才能获得正确的pdf文件: file = DriveApp.getFileById('1b-XpCUmmn020Vav6psp4aZnenyzyVCm6tcj1-TlvWyU');

我在代码中做错了什么?非常感谢您的回复!

1 个答案:

答案 0 :(得分:2)

发送前保存文件。 docDriveApp.getFileById(doc.getId())实际上也指同一件事。

function myFunction() {
  var doc = DocumentApp.create('My document');
  doc.getBody().appendParagraph('This is the file that i want to receive');
  doc.saveAndClose();
  GmailApp.sendEmail('address@gmail.com', 'Attachment example', 'Please see the attached        file.', {attachments: [doc.getAs(MimeType.PDF)],name: 'Automatic Emailer Script' });
}