概要:GoogleWorkspaceだけで申請承認フローを構築したい
コード:GoogleWorkspaceだけで申請承認フローを構築したときのコード
では、構成です。
- Google Forms
アンケート形式で申請できるように、申請書をFormsのフォーマットに落とします。
紙の申請書の代わりです。 - Google Spreadsheet
Formsの回答先です。設定は、Formsの回答をスプレッドシートと連携にしておけばOKです。
シート構成は、「フォームの回答1」「社員承認」「役員承認」「承認済一覧」「社員マスタ」の5シートです。 - Google Apps Script
Formsの回答先になっているスプレッドシートのコンテナバインドスクリプトである必要があります。(2.のスプレッドシートのツール→スクリプトエディタ からGASを書く。)
Formsから落ちてきた回答に対して実行される関数、Webアプリにアクセスされたときに実行される関数を書きます。もう少し具体的に言うと、Formsに回答があったとき(トリガー設定)に「フォームの回答1」の最終行を「社員承認」シートにコピーし、関係者にパラメータ付きwebアプリへのリンクがついたメール通知を送る関数、Webアプリにアクセスがあったとき(doGet関数)パラメータをみて承認されたか却下されたかを判断する関数です。(もちろん細かい関数はほかにもありますよ。) - Gmail
GASから送られてくるメールを開きます。まあGmailじゃなくてもHTMLで受けられるメーラーなら何でもいいです。
大事なのはForms→スプレッドシート→GASがすべて連携されていることです。
スプレッドシートの細かい構成はこうなっています。
- 「フォームの回答1」
連携しているFormsの回答内容が自動的にたまっていくシートです。
GASのトリガー:”スプレッドシートから – フォームから送信時” を設定します。このトリガーによって申請フローが流れ始めます。 - 「社員承認」
社員承認にあがってきた申請の申請ID、承認者、承認状況を記録します。 - 「役員承認」
上長承認にあがってきた申請の申請ID、承認者、承認状況を記録します。 - 「承認済一覧」
役員承認で承認済みになった申請を結果リストとしてためておくシートです。総務が事務処理に参照する想定のシートです。 - 「社員マスタ」
2.のスプレッドシートとは別のスプレッドシートに社員リスト(社員の名前メールアドレス)とその社員に対応する初期承認フェーズ、承認者を記載します。2.のスプレッドシートでは、そのスプレッドシートをimportrange関数で参照する方法で利用します。
いよいよ次回はコードです。
コメント