表单上的Google表格提交事件 - 在下次提交之前完成代码

时间:2015-07-14 15:03:20

标签: google-apps-script

我在我创建的Google表格中使用On Form Submission触发器。我遇到的问题是表单有可能比执行代码更快地提交,因此第一次提交被中断。

理想情况下,我希望它能够完成第一次提交的执行,并且一旦完成,就从第二次提交开始。这可能吗?

1 个答案:

答案 0 :(得分:0)

祝你好运,一年多来我一直在争取一个好的解决方案(使用我的Choice Eliminator附件)。问题是Google在提交表单后处理您的脚本,因此没有真正的方法可以防止重叠提交。

这是我找到的。

  1. 你可以暂时关闭表单接受答案:这实际上是我找到的最好的方式,但它往往会混淆最终用户,他们也可能会丢失他们填写的信息提交并关闭。我还发现,如果onFormSubmit函数中有任何打嗝,表单将保持关闭,直到所有者重新打开它。

  2. 的LockService。我对此进行了测试,它确实没有做任何事情来帮助重叠提交。它阻止我的代码运行两次,但后来我的代码没有在第二次提交时运行。

  3. 我个人选择删除所有内容并使脚本尽可能快地运行。除了一个例外,我抓住了脚本开始和结束的时间,然后显示了脚本所有者的差异,因此他们至少知道提交之间需要多长时间没有错误。