问题标签 [gs-installable-triggers]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
google-apps-script - 时间驱动触发器:是否可以为部署脚本应用程序/gmail 插件每分钟设置一个触发器?
我正在开发一个谷歌脚本应用程序以部署一个 gmail 插件。
我尝试每分钟设置一个触发器,它使用以下代码执行一个函数:
问题是,当我在谷歌开发者中心运行该功能时,它可以工作,创建时间触发器。
但是,当我将脚本部署为清单文件中的 gmail 插件并且我想在单击按钮时创建触发器时,会出现一个错误,告诉我两次事件之间的触发器范围必须至少每小时一次。
最奇怪的是,当我每小时设置一次触发器时,我可以在 g Suite 开发人员中心的触发器选项中将其更改为每分钟一次。为什么我能那样做?
我想知道是否可以在每分钟触发相同功能的 gmail 插件中创建触发器。或者,这绝对不可能吗?
javascript - 除了所有者之外,onOpen 不会对其他用户运行。如何解决这个问题?谷歌脚本气体
刷新共享电子表格后,onOpen 不会对同样具有访问权限的其他用户运行。
但是所有者能够运行代码和脚本。
代码.gs
已将访问电子表格和脚本共享给其他用户,但他们仍然看不到它正在工作。感谢您的帮助...谢谢!
javascript - 触发 onFormSubmit 时未运行完整脚本,但将使用 onEdit() 手动运行
我想要的结果是,当从谷歌表单将新的数据行添加到工作表“FormResponses1”时,上面的脚本就会运行。我已经创建了谷歌表单,当用户提交表单时,新数据会添加到工作表“FormResponses1”中。
如果我手动将新值添加到单元格,例如,如果我在工作表“FormResponses1”的单元格“B2”中写入“dll 463”,则上面的代码运行良好并且可以满足我的需要。
我已经为上面显示的 onEdit 函数设置了一个触发器“来自电子表格 - 表单提交”,使用 <> 脚本编辑器视图的工具栏中的 Edit - Current project's triggers。
触发器似乎确实触发了,如果我在从表单提交新响应后查看日志,我可以看到日志显示通过上面代码中的 Logger.log 行编辑的行和列。
我在上面的代码中添加了更多 Logger.log 行,以查看脚本在由“来自电子表格 - 提交表单”触发器触发时运行多远,但在行和列编辑日志之后没有显示其他日志。
这对我来说更奇怪的是,我昨天可以让触发器工作并运行代码。尽管如此,它只是在当前脚本末尾的 setFormula 行中编写,从那时起,我添加了大写列值,并将公式替换到脚本中。
我尝试过: - 删除并添加新触发器。- 创建一个新版本 - 删除表单响应 - 将函数从 onEdit() 更改为 onFormSubmit() - 取消电子表格的链接并添加一个新的电子表格(具有相同的工作表名称和数据),并将脚本复制到新的电子表格脚本编辑器和删除旧的电子表格。
google-apps-script - 未触发可安装触发器
我的电子表格中有可安装的触发器,但是当我编辑工作表时,触发器没有被触发
之前是我的触发器很好,我已经删除并添加了新触发器但仍然没有触发。
---已编辑---
这是我对每个触发器的配置
这是我要运行的代码
javascript - 每天 8:00、12:30、17:00 运行 Gmail Google Apps 脚本
我需要每天运行 3 次 Google Apps 脚本:分别在 8:00、12:30、17:00。
这个怎么做?
我已经看过了Triggers
,更具体地说Time driven
:
小时计时器,但是
Every hour
,Every 2 hours
,Every 4 hours
在这里不适用日计时器,但
8am to 9am
不是很精确,我更喜欢更精确的东西,而且 12:30 也是不可能的具体时间,但
YYYY-MM-DD HH:MM
不适合每天运行
From calendar
触发器似乎也不适应。
google-apps-script - Script.newTrigger() 返回错误“在对象上创建方法或属性时出现意外错误”
尝试创建基于时间的触发器时,出现此错误:
“在对象 ScriptApp.ClockTriggerBuilder 上创建方法或属性时出现意外错误。”
这是代码:
google-apps-script - 如何在执行后删除谷歌脚本ClockTrigger
我有一些代码需要基于每小时触发器执行一个函数,然后在第一个触发器后一小时执行另一个函数。像这样:
这工作正常。我只是注意到,触发器是在谷歌应用程序脚本控制台的“我的触发器”中建立的。执行后有什么方法可以删除触发器吗?