尝试将编辑器添加到Google文档时,Google Apps脚本服务器出错

时间:2017-10-03 14:38:20

标签: google-apps-script

我有一些看起来像这样的代码

  var folder = DriveApp.getFolderById(/* destination folder id */);
  var doc = DriveApp.getFileById(/* document file id */);

  var id = doc.makeCopy(folder).setName(/* name of copy */).getId();
  var new_doc = DocumentApp.openById(id);
  new_doc.addEditor(/* some email address */);

运行此命令会导致脚本停在最后一行并抛出此错误:

  

很抱歉,发生了服务器错误。请稍等一下再试一次。

如果我注释掉该行,那么脚本运行正常。 如果new_docFile而不是Document,那么最后一行也可以。仅当new_docDocument类型时才会出现错误。显然,它对Document类型也不起作用。虽然我得到的错误与File

的错误不同
  

无法在Team Drive项目上使用此操作。

非常奇怪,因为这在一段时间之前就已经开始了。

此脚本中使用的所有资源(脚本,目标文件夹,复制的文件,副本等)都在Team Drive中。

我很困惑这个错误是如何或为何发生的,我正在寻找帮助来解决这个问题。

1 个答案:

答案 0 :(得分:0)

通过DriveApp添加编辑器而不是DocumentApp。

使用Team Drive文件时,DocumentApp,SpreadsheetApp和FormApp似乎存在错误。

var folder = DriveApp.getFolderById(/* destination folder id */);
var doc = DriveApp.getFileById(/* document file id */);

var id = doc.makeCopy(folder).setName(/* name of copy */).getId();
var new_doc = DriveApp.getFileById(id); //updated this from DocumentApp to DriveApp.
new_doc.addEditor(/* some email address */);