新しいプロジェクト。
Googleフォームの送信をトリガにして関数を起動する。
フォームが1つなら問題ないのだけど、複数のフォームを1つのスプレッドシートに紐づけると、関数を別に作っていても、おのおのの送信で両方の関数が呼ばれる。
どうしたもんかとネットを見ると、流石Google先生。
こうすればいいと回答が出ていた。
受信したフォームのオブジェクトから質問の文字列を拾ってきてどのフォームかを特定して、対応した関数を呼べばいいというもの。
e.namedValues.hasOwnProperty('ほにゃらら')
で、'ほにゃらら'があればtrue、なければfalseが返ってくると書いてある。
ためしてみたところ、上手く行かない。
別の質問(の文字列)にすると上手く行ったので、なんでだろうとログを取ってみると、最初の質問、受け取るスプレッドシートのタイトル(列名)を質問の文字列とちょっと変えていたのだけど、変えた方の文字列が返ってきていた。
フォームの文字列と比較していたので、見つからなくて当然だ。
でもさあ、もとのオブジェクトってフォームからやってくるんだから、いくらスプレッドシートと紐づいているとはいえ、フォームの質問の文字列が返ってこないのは、ボク的には納得いかないんだけどね。
まあ、上手く行ったので問題は解決しましたとさ。
■
13日のツーリングにむけて、仕事が終わってから洗車に行ってきた。
当日は、朝が早いので、あすは、早めにやすみたかったので...。
■
瀬戸内寂聴氏死去。享年99歳。
--
No comments:
Post a Comment