自昨晚以来,我的脚本无法正常运行,因为onFormSubmit触发器无效。由于它之前正在工作并突然停止,我猜这是谷歌的一个问题,但我一直在改变很多事情,并且想确保我不会错过我做错的事情。
以下是创建表单并设置触发器的函数:
function newForm(ss)
{
var scriptProperties, form, id, url;
scriptProperties = PropertiesService.getScriptProperties();
form = FormApp.create('Form');
form.setConfirmationMessage('Thanks!');
form.setDestination(FormApp.DestinationType.SPREADSHEET, ss);
form.setShowLinkToRespondAgain(false);
form.addTextItem().setTitle('Name').setRequired(true);
form.addTextItem().setTitle('Email').setRequired(true);
id = form.getId();
url = form.getPublishedUrl();
scriptProperties.setProperty('FORM_ID', id);
scriptProperties.setProperty('FORM_URL', url);
ScriptApp.newTrigger('bookSlot')
.forForm(id)
.onFormSubmit()
.create();
return id;
}
这是应该在onFormSubmit上运行的函数:
function bookSlot(e)
{
Logger.log('this');
var scriptProperties, itemResponses, response, name, email, formChoice, index;
scriptProperties = PropertiesService.getScriptProperties();
itemResponses = e.response.getItemResponses();
response = itemResponses[2].getResponse();
name = itemResponses[0].getResponse();
email = itemResponses[1].getResponse();
formChoice = JSON.parse(scriptProperties.getProperty('FORM_CHOICE'));
index = formChoice.indexOf(response);
Logger.log('index is ' + index);
}
触发器本身是在我检查项目的触发器时创建的,好像一切都应该就位,但是当我提交表单时什么也没发生。我开始使用formSubmit触发器获取bookSlot()的'超出最大执行时间'错误的'失败摘要'电子邮件。
答案 0 :(得分:0)
如果超出配额,脚本将停止工作。您可以在此链接中找到所有配额:https://developers.google.com/apps-script/guides/services/quotas