函数不使用已定义的变量执行

时间:2017-08-15 12:17:37

标签: javascript google-apps-script

该项目的要点是:我有Google表单的答案,这些答案会在Google文档中填充,让我们将此文档称为模板。复制模板,所以我永远不会覆盖原始模板。该副本将转换为PDF,发送到电子邮件,并移动到我的驱动器上的特定文件夹。每个表单提交都会完美地执行此功能,并在提交时触发。我的下一个功能应该是将复制的文档发送到我的Google云打印,但是我在编写代码时遇到了问题。我已将它打印到表单提交上的文档,但我必须专门定义文档的ID。不幸的是,ID不是静态的,因为每次提交都会生成一个新的文档。这是我的完整代码减去任何敏感信息:

sched_setattr

1 个答案:

答案 0 :(得分:0)

从'createNewDoc(values);'返回新文档函数通过将其添加到createNewDoc()函数的末尾,在结束括号之前进行更改:

//Starting at the code here
// Move file to folder
var file = DriveApp.getFileById(copyId);
DriveApp.getFolderById("").addFile(file);
file.getParents().next().removeFile(file);

//Add this
var newDocName = docName + ' for ' + job_name;
return [file, newDocName];
//To this point

}

然后更改onFormSubmit()函数,如下所示:

// When Form Gets submitted
function onFormSubmit(e) {
  var values = e.values;
  var returnedDocValues = createNewDoc(values);
  var file = returnedDocValues[0];
  var docName= returnedDocValues[1];
  printGoogleDocument(file, docName);
}

如果有错误,请告诉我,因为我自己没有测试过此代码。