2015-02-26 4 views
0

Мы небольшой школьный округ, и я написал простую форму для учителей сообщать о дисциплинарных проблемах. В таблице назначения есть связанный с ней сценарий, и установлен триггер onFormSubmit.Прерывистый сбой onFormSubmit trigger

Сценарий использует данные формы, используя объект события e из функции onFormSubmit(), создает отчет в Документах Google, отправляет уведомления по электронной почте соответствующим людям и выполняет несколько задач обслуживания. Link.

Он работал нормально до недавнего времени, когда триггер иногда не срабатывает. Нет сообщения об ошибке; данные формы передаются. Сегодня утром два учителя в отдельных инцидентах вступили в форму, и триггер потерпел неудачу; третий вступил в форму, и она сработала.

Форма и лист «принадлежат» учетной записью «Декан студентов», и пользователи получают доступ к форме анонимно в сети (не в учетной записи Google). Форма устанавливается с привилегией VIEW для всех, у кого есть ссылка; лист не имеет привилегий, только владелец.

Я полностью в тупике, почему это будет работать иногда, а не другие. Улики?

+0

Возможно, вы должны включить свой код в вопрос или столько, сколько необходимо для воспроизведения или расследования вашей проблемы. Вы, как автор, можете «редактировать» сообщение. –

ответ

1

Недавно я разработал электронную таблицу Google с несколькими листами, которые берут данные из 4 разных форм. Когда данные формы поступают, у меня есть сценарии, которые запускают несколько вычислений и форматирование по этим данным, поэтому триггер onFormSubmit имеет решающее значение для меня. Я столкнулся с той же проблемой, с которой вы сейчас сталкиваетесь.

Сначала я думал, что с моим кодом что-то не так, и я проверил его снова и снова. Затем я просмотрел веб-страницы для ответов на вопрос, почему мои триггеры не выдержали от 10 до 20% времени. Многое из того, что я нашел на форумах Google, связано с проблемами со стороны Google. Я обнаружил, что tons of people столкнулся с той же проблемой, что и у меня, но ни у кого из них не было окончательного решения.

Моим возможным решением было создать еще один триггер, который срабатывает каждые 8 ​​часов. Это запускает все мои другие триггеры, которые запускаются снова, только чтобы убедиться, что все, что я хотел сделать, сделано. Конечно, этот триггер тоже может потерпеть неудачу. Но до сих пор я проверял лист (новые данные поступают примерно каждые 6 часов или около того), и мне не приходилось исправлять какие-либо проблемы, тогда как раньше мне приходилось ежедневно перезапускать скрипты.

Возможно, для вашего случая у вас может быть функция, которая проходит и отправляет письма, которые не удалось отправить предыдущим ошибочным триггерам. Затем выполняйте эту функцию каждый раз, сколько вы предпочитаете.

Это, вероятно, не очень удовлетворительный ответ, но это лучшее, что я могу сделать. Удачи!

Смежные вопросы