基于时间的触发器不能在具有绑定脚本的模板文档的副本上运行吗?

问题描述 投票:2回答:1

我有一个带有绑定脚本的模板文档,该模板执行一些基本的字段验证。除了菜单项外,我还在onOpen(e)中创建了一个基于时间的触发器,以便每分钟运行一次验证功能。当我打开模板文档时,所有这些都可以完美地工作(在出现提示时,我已授予访问文档的权限)。

ScriptApp.newTrigger(TRIGGER_FUNCTION_NAME)
  .timeBased()
  .everyMinutes(1)
  .create();

当我创建此模板文档的副本时,其他用户不会运行基于时间的触发器。从documentationhere中,我读取到安装的触发器将使用我的凭据运行,这没问题。但是我不明白为什么触发器不会在具有编辑权限(或提示输入权限)的另一个用户的复制文档中运行?

这种方法可行吗?附件每小时只能运行一次,因此我无法使用它,并且文档没有onEdit()触发器。为了使此功能有效,onOpen()是否也必须是已安装的触发器?

google-apps-script google-docs google-apps-script-simple-triggers
1个回答
1
投票

您的时间驱动触发器是可安装的触发器,但是我认为您的onOpen(e)触发器不是

所以是的,如果您的onOpen(e)函数用于安装时间驱动的触发器-这是一个需要授权的请求,因此无法在指定的onOpen(e)的简单here触发器内执行。

因此,不幸的是,您需要向模板的每个副本中手动添加可安装的onOpen触发器。

© www.soinside.com 2019 - 2024. All rights reserved.