ゆたんぷろぐ器用貧乏なエンジニアがいろんなことに挑戦し、その結果を忘備録的にブログとして残してます。写真・アクセサリ作成メインで、音楽ネタ、ガジェット・デバイスについても適当に書いてます。今はただのwebエンジニアです。忘れない内に忘備録としてまとめようかなと思います。ちなみに私は今週末夏休みなのでこれからダラダラさせていただきますが(笑)どうもyutampです。諸事情があってサーバー立てたりドメイン取るのがめんどくさくて、でもそんなパフォーマンス期待してないよ、どうせ中の人達だけだし。Scriptについてのお話。Drive上で作ることができる代物。CalenderとかGoogle関連のサービスなら連携できるちょっとした優れもの。Scriptになったわけです。ちなみに通称はGASで通ってるみたいみたいですがガスと紛らわしくて検索全然でてこない。ハマったこと1.SpreadSheetの閲覧/編集権限を制限できないたぶんプログラム作成者のアカウントでデータ追加するようにすれば良いのかもしれないけど、そうすると変更履歴が全部自分になってしまってなりすましで入力されたら誰かわからなくなってしまいしょうがなくログインアカウントでデータ追加するオプションで設定。2.GoogleDrive上に作成したScriptがでないことがあるGoogleDriveより新規作成したものはフォルダ内にScriptが作成されるが、SpreadSheetのスクリプトエディタから作成すると、おそらくSpreadSheet内にデータが入ってしまうためGoogleDrive上ででてこない。複数SpeadSheetに対して参照するプログラムを作る際はGoogleDrive上から作ったほうが後々わかりがいいかも。3.エラーがわかりづらいテストとしてアクセスした時にうまく表示されなくてその日は諦めて帰ったら次の日にメールが送られてきて、エラーログを特定時間に配信する設定がデフォルトのよう。できればすぐに送って、特定時間に設定するのはオプションにしてほしい。4.アクセスが遅いExcelのVBA感覚で作るとあまりの遅さにイライラしてしまうかもしれない。SpreadSheetの内容を全部読み込んでキャッシュすることもできるのだが「ある程度」リアルタイム性を求めるならば、データのコンフリクトを避けるために何らかの対応が必要になってくる。似たようなデータを生成するテストfunctionを作成して、それを呼び出すことでデバッグした。トリガがうまく動かない時とかは確認のしようがないのでどうしようもない。とまあいくつか挙げてみたわけだが、開発スピード優先という意味でかつ簡易的でよければ、いろいろなことができる可能性を秘めたツールになっているので候補としてあげてみるのは良いかと思う。Slack連携なども外部ライブラリで実装してあるので4行程度のプログラムでpostできてしまうのでwebcron的なこともできて結構助かる面もある。今回はSpreadSheetGoogleFormの連携については試したが次はGoogleCalenderとかともやってみたいなー。