私が管理しているある団体のWebサイトで、Googleフォームを使用しています。
フォームには、入力完了後に入力内容を整形し私のGMailアカウント宛にメールが届くようなスクリプトが書かれています。
このフォームは、かれこれ2年ほど使用しているのですが、数日前から急にエラー通知が届くようになりました。
今回は、最初の簡単そうなエラーを解決した後に、謎のエラーが出て解決に時間がかかってしまいましたので、同じエラーで悩んでおられる方の参考になればと思って記事を書きました。
目次
最初は、メッセージを見ればわかるエラー
最初に来たエラー通知は、下記のようなものです。
起動 | 関数 | エラー メッセージ | トリガー | End |
16/11/08 21:00 | submitForm | その操作を実行するには承認が必要です。 | formSubmit | 16/11/08 21:00 |
エラーメッセージから、スクリプトの実行に承認が必要になったということのようです。
これまで約2年間は承認なしで動作していましたから、最近になって必要になったのでしょうか?
関数の実行を承認する
Googleにログインし、Googleドライブからフォームを開きます。
「ツール」から「スクリプトエディタ」を開き、エラーが出ている関数「submitForm
」を選択します。
そして、おもむろに「▶(実行:右向きの黒い三角)」をクリックすると・・・
「承認が必要です」
というダイアログが表示されました。
「続行」して、「承認する」と進むと、次からは関数を実行しても承認を要求されることは無くなりました。
(フォームから実行していないので関数自体はエラーで止まりますが、今は問題ありません)
エラーメッセージと原因が、全然結びつかないエラー
さてこれで解決と思いきや・・・上記の作業を行った後にテストでフォーム入力を行うと、今度は次のようなエラー通知が来ました。
起動 | 関数 | エラー メッセージ | トリガー | End |
16/11/08 22:00 | submitForm |
TypeError: undefined のメソッド「getItemResponses」 |
formSubmit | 16/11/08 22:00 |
仕様が変わって「getItemResponses
」が使えなくなったということでしょうか?
いや、そんなことはないようです。
つい最近に書かれたと思われるGoogleフォームの記事を見つけたので確認したところ、getItemResponses
メソッドはしっかり使われていました。
しかも、私の使い方と、ほとんど同じです。
実はこちらも原因は同じ
エラーメッセージで検索をかけてみると、ドンピシャの記事を見つけました。
Google FormのGoogle Apps Scriptがエラーを吐く場合の対処 | TeraDas-テラダス
この記事によれば、「トリガー」が削除されているとこのエラーが出るそうです。
トリガーとは、スクリプトを実行するタイミングのことです。
このスクリプトは、フォームの内容が送信されたときに実行されるように設定されています。
このトリガーが、何らかのトラブルで消えてしまっているのが原因なのでしょうか?
そこで、「リソース」-「このプロジェクトのトリガー」から、トリガーを確認してみました。
ところが、トリガーは正しく設定されています。
実行 | イベント | |
submitForm | フォームから | フォーム送信時 |
そこで「もしや」と思い、一度このトリガーを削除して、再度、同じように設定をしてみました。
すると、
「承認が必要です」
というダイアログが表示されました。
私の記憶が正しければ、前回スクリプトを設定したときは、承認は要求されていません。
おそらく、これが原因です。
先ほどと同様に、ダイアログの説明に従ってトリガーも承認をします。
その後、フォーム入力を行うと、問題なくメールが送信されるようになりました。
トラブルに対応できたら情報を共有しましょう
Googleフォームに限らず、Googleのサービスは突然の仕様変更がよく起こります。
そのため、会社や組織で使用している場合は、その仕様変更によってサイトの機能が使えなくなることがないよう、常にチェックしておくことが必要だと思います。
Googleフォームは、スクリプトに問題が起きたときにすぐにアラートメールが送られるように設定できますので、障害が起きたことはすぐに把握できます。
問題はそのあとです。
エラーメッセージに従って対応することで問題が解決すればよいのですが、今回のようにエラーメッセージから本当の原因が想像できないような場合は、自分だけで考えていてもまったく解決できません。
そんなときに頼りになるのが、ネット上の情報です。
しかし、公式サイトやフォーラムでは解決しないことが、実際には多いです。
頼りになるのは、個人ブログのいわゆる「体験談」みたいな記事なのですよね。
今回も、そんな記事に助けられました。
そして、この記事で同じようなことに悩んでいる方の助けになれば幸いです。
この記事を書いた人
-
FAシステムメーカー、国内最大手印刷会社製版部、印刷・ウェブ制作会社を経て、家庭の事情で実家に帰省して独立
現在はフリーランスと制作会社シニアディレクターのマルチワーク
ウェブ制作のほぼ全般を見渡せるディレクター業務が主だが、デザイン・コーディングも好き
1997年ブログ開設
WordPressコミュニティには2011年から参加
WordCamp Kansai 2016 セッションスピーカー
WordCamp Tokyo 2023 パネルディスカッションパネラー
WordBench京都、WordBench神戸、WordPress Meetup八王子など登壇多数
最新の投稿
ご質問・ご相談などありましたら
お気軽にお問い合わせください
資料請求・お問い合わせにはメールアドレスが必要です
コメントを残す