GoogleWorkspaceだけで申請承認フローを構築したときの構成

GAS

概要:GoogleWorkspaceだけで申請承認フローを構築したい
コード:GoogleWorkspaceだけで申請承認フローを構築したときのコード

では、構成です。

  1. Google Forms
    アンケート形式で申請できるように、申請書をFormsのフォーマットに落とします。
    紙の申請書の代わりです。
  2. Google Spreadsheet
    Formsの回答先です。設定は、Formsの回答をスプレッドシートと連携にしておけばOKです。
    シート構成は、「フォームの回答1」「社員承認」「役員承認」「承認済一覧」「社員マスタ」の5シートです。
  3. Google Apps Script
    Formsの回答先になっているスプレッドシートのコンテナバインドスクリプトである必要があります。(2.のスプレッドシートのツール→スクリプトエディタ からGASを書く。)
    Formsから落ちてきた回答に対して実行される関数、Webアプリにアクセスされたときに実行される関数を書きます。もう少し具体的に言うと、Formsに回答があったとき(トリガー設定)に「フォームの回答1」の最終行を「社員承認」シートにコピーし、関係者にパラメータ付きwebアプリへのリンクがついたメール通知を送る関数、Webアプリにアクセスがあったとき(doGet関数)パラメータをみて承認されたか却下されたかを判断する関数です。(もちろん細かい関数はほかにもありますよ。)
  4. Gmail
    GASから送られてくるメールを開きます。まあGmailじゃなくてもHTMLで受けられるメーラーなら何でもいいです。
Google Formsとスプレッドシートの連携はここをクリックするだけでできちゃう

大事なのはForms→スプレッドシート→GASがすべて連携されていることです。

スプレッドシートの細かい構成はこうなっています。

  • 「フォームの回答1」
    連携しているFormsの回答内容が自動的にたまっていくシートです。
    GASのトリガー:”スプレッドシートから – フォームから送信時” を設定します。このトリガーによって申請フローが流れ始めます。
  • 「社員承認」
    社員承認にあがってきた申請の申請ID、承認者、承認状況を記録します。
  • 「役員承認」
    上長承認にあがってきた申請の申請ID、承認者、承認状況を記録します。
  • 「承認済一覧」
    役員承認で承認済みになった申請を結果リストとしてためておくシートです。総務が事務処理に参照する想定のシートです。
  • 「社員マスタ」
    2.のスプレッドシートとは別のスプレッドシートに社員リスト(社員の名前メールアドレス)とその社員に対応する初期承認フェーズ、承認者を記載します。2.のスプレッドシートでは、そのスプレッドシートをimportrange関数で参照する方法で利用します。
フォームと連携しているので、フォームの回答がここにたまっていく。
フォームの回答先から行がここにコピーされる
社員承認またはフォームの回答先から行がここにコピーされる
すべての承認が通ると行がここにコピーされる
誰からの申請だったら誰に承認依頼する、というのを判断する材料として活用する

いよいよ次回はコードです。

スポンサーリンク

コメント

タイトルとURLをコピーしました