onFormSubmit触发器间歇性失败

时间:2015-02-26 16:56:55

标签: forms triggers

我们是一个小型学区,我为教师编写了一份简单的表格来报告纪律问题。目标电子表格有一个绑定到它的脚本,并设置了onFormSubmit触发器。

脚本使用来自onFormSubmit()函数的事件对象e使用表单数据,在Google Docs中创建报告,向相关人员发送电子邮件通知并执行一些维护任务。代码Link

直到最近触发器偶尔无法触发时,它一直工作正常。没有错误信息;表单数据已提交。今天早上,两名不同事件的教师进入表格,触发失败;第三个人进入表格并且有效。

表单和表格由Dean of Students帐户“拥有”,用户可以在网络上匿名访问表单(不在Google帐户中)。对于任何有链接的人,表单都具有VIEW权限;工作表没有特权,只有所有者。

我完全不知道为什么这有时会起作用而不是其他人。线索?

1 个答案:

答案 0 :(得分:1)

我最近开发了一个包含多张工作表的Google电子表格,其中包含4种不同形式的数据。当表单数据进入时,我有脚本运行多个计算和格式化该数据,因此onFormSubmit触发器对我来说至关重要。我遇到了你现在遇到的完全相同的问题。

起初我以为我的代码出了问题,我一遍又一遍地检查它。然后,我在网上搜索了为什么我的触发器在大约10%到20%的时间内失败的答案。我在Google论坛上发现的很多内容与谷歌方面的问题有关。我发现tons of people遇到了同样的问题,但没有一个有明确的解决方法。

我最终的解决方案是创建另一个每8小时触发一次的触发器。这会运行我的其他触发器再次运行的所有内容,只是为了确保我想要做的一切都已完成。当然,触发器也可能失败。但到目前为止,我一直在检查表单(大约每6个小时左右就会出现一次新数据)而且我没有必要解决任何问题,而在此之前,我不得不每天重新运行脚本。

也许对于您的情况,您可以拥有一个功能,并发送以前错误触发器无法发送的电子邮件。然后让这个功能每隔几个小时就会激活。

这可能不是一个非常令人满意的答案,但它是我能做的最好的。祝好运!