Google Doc .makeCopy() 的脚本没有复制评论?
Script for a Google Doc .makeCopy() the comments aren't copied?
你好,在复制 Google Doc 文档时也可以复制 "copy doc." 中的注释,因为我已经在 TEMPLATE_DOC_ID 中尝试过,它有很多注释,但我不知道在"copy"中找到评论。我漏掉了什么?这是另一种方法吗?谢谢!
//Make a copy of the template file
var documentId = DriveApp.getFileById(TEMPLATE_DOC_ID).makeCopy().getId();
不幸的是,makeCopy()
复制的 Google 文档不包含注释。因此,在复制文件后,需要将评论和回复插入到复制的文件中。为了实现这一点,请在高级 Google 服务和 API 控制台启用驱动器 API。
在高级 Google 服务中启用驱动器 API v2
- 在脚本编辑器上
- 资源 -> 高级 Google 服务
- 打开驱动器 API v2
Enable Drive API at API console
关于驱动器 API,在您的环境中,这可能已经启用。
- 在脚本编辑器上
- 资源 -> 云平台项目
- 查看API控制台
- 在开始时,单击启用 APIs 并获取密钥等凭据。
- 在左侧,单击“库”。
- 在搜索 API 和服务时,输入 "Drive"。然后单击驱动器 API。
- 单击“启用”按钮。
- 如果API已经启用,请不要关闭。
示例脚本:
var documentId = DriveApp.getFileById(TEMPLATE_DOC_ID).makeCopy().getId();
// Added script
var commentList = Drive.Comments.list(TEMPLATE_DOC_ID);
commentList.items.forEach(function(item) {
var replies = item.replies;
delete item.replies;
var commentId = Drive.Comments.insert(item, documentId).commentId;
replies.forEach(function(reply) {
Drive.Replies.insert(reply, documentId, commentId).replyId;
});
});
注:
- 很遗憾,创建时间和修改时间无法更新。所以日期变成了创建日期。
参考资料:
如果这不是你想要的,我很抱歉。
你好,在复制 Google Doc 文档时也可以复制 "copy doc." 中的注释,因为我已经在 TEMPLATE_DOC_ID 中尝试过,它有很多注释,但我不知道在"copy"中找到评论。我漏掉了什么?这是另一种方法吗?谢谢!
//Make a copy of the template file
var documentId = DriveApp.getFileById(TEMPLATE_DOC_ID).makeCopy().getId();
不幸的是,makeCopy()
复制的 Google 文档不包含注释。因此,在复制文件后,需要将评论和回复插入到复制的文件中。为了实现这一点,请在高级 Google 服务和 API 控制台启用驱动器 API。
在高级 Google 服务中启用驱动器 API v2
- 在脚本编辑器上
- 资源 -> 高级 Google 服务
- 打开驱动器 API v2
Enable Drive API at API console
关于驱动器 API,在您的环境中,这可能已经启用。
- 在脚本编辑器上
- 资源 -> 云平台项目
- 查看API控制台
- 在开始时,单击启用 APIs 并获取密钥等凭据。
- 在左侧,单击“库”。
- 在搜索 API 和服务时,输入 "Drive"。然后单击驱动器 API。
- 单击“启用”按钮。
- 如果API已经启用,请不要关闭。
示例脚本:
var documentId = DriveApp.getFileById(TEMPLATE_DOC_ID).makeCopy().getId();
// Added script
var commentList = Drive.Comments.list(TEMPLATE_DOC_ID);
commentList.items.forEach(function(item) {
var replies = item.replies;
delete item.replies;
var commentId = Drive.Comments.insert(item, documentId).commentId;
replies.forEach(function(reply) {
Drive.Replies.insert(reply, documentId, commentId).replyId;
});
});
注:
- 很遗憾,创建时间和修改时间无法更新。所以日期变成了创建日期。
参考资料:
如果这不是你想要的,我很抱歉。