【SharePoint×Teams連携】PowerAutomateを使って複数人の承認フローを作る方法

Share point
スポンサーリンク

SharePoint×Teamsで承認回覧ワークフローを自作しました。

ワークフローで重視したことは「リストに登録されたことを通知し期限を自動フォローできること」、また「承認回覧を自動化しTeamsで投稿できること」の2点です。

Microsoft365のアプリのひとつであるPower Automateを使って構築しています。

それでは早速作り方について解説していきます。

※PowerAutomateの詳細な設定を書いており、記事全体が長くなりましたので各Partごとにページを区切っています。

ワークフローの導入・維持コストを抑えたいがための貧乏性が発揮されましたw

スポンサーリンク

使用するアプリケーション一覧

この承認フローでは以下の4つのアプリを使用します。

Teams
SharePoint
Power Automate
Planner

ワークフローの動作

今回作ったワークフローは以下の動作が行えます。

Part1~4に分割して順に解説していきます。

尚、Part3の部分は1名に回覧するような図になっていますが、実際は2段階承認(審査者→承認者)に回るように設定しています。

このフローはリストの「動作」列が更新された時に動作する仕組みです。

SharePointの設定

それでは自動で承認回覧するワークフローを作っていきます。

初期のリストは以下のような設定としています。

リスト(ドロップダウン)選択する列は予めリストを作っておきましょう。

今回は「動作」の列が変更された時に承認回覧フローが機能する仕組みになっています。

ID担当者報告期限分類状態件名優先度区分詳細資料起案日回覧日審査日承認日動作
名前またはメールアドレス日付と時刻一行テキスト リスト一行テキストリストリスト複数行テキストハイパーリンク日付と時刻 日付と時刻 日付と時刻 日付と時刻リスト

例)リストの設定

状態:作成中|審査中|承認中|完了|差戻し
優先度:高|中|低
区分:A|B
動作:ー|回覧|回覧1|回覧2

SharePointのリスト登録を通知させる自動フローはこちらで解説しています。

リストの初期設定も載せています。

PowerAutomateの設定

それではPowerAutomateの設定を行っていきます。

回覧する人数が多いほど長いフローになります。

今回は2名の上司に回覧するフローを作っています。

項目の修正~条件分岐1まで(Part1)

まずはSharePointリストの項目が更新された時に承認回覧フローを行うかどうかの条件分岐まで作りましょう。

アイテムまたは項目が修正されたときーSharePoint
  • SharePointリストのアイテムが新規作成された時や列が修正されて保存された時をトリガーとします。
サイトのアドレスSharePointリストのアドレス(選択式)
リストやライブラリの名前SharePointリストの名前(選択式)
フォルダー空欄でOK
ビュー毎の列の制限空欄でOK

SharePointにHTTP要求を送信しますーSharePoint
  • SharePointリストの変更前後の状態を取得します。
*サイトのアドレスSharePointリストのアドレス(選択式)
*方法GET
*URI_api/web/Lists/getbytitle(‘リスト名‘)/Items(ID)
ヘッダー空欄でOK
ボディ空欄でOK
アイテムやファイルの変更を取得するーSharePoint
  • SharePointリストの列に変更があるかどうかを[true(変更あり)]、[false(変更なし)]で返します。
*サイトのアドレス SharePointリストのアドレス(選択式)
*リストやライブラリの名前 SharePointリストの名前(選択式)
*IDID
*以降ウィンドウ開始のトークントリガー
期限空欄でOK
マイナーバージョンを含める空欄でOK
ビューごとの列制限空欄でOK
変数を初期化する
  • この変数にはメールアドレスを入力します。
  • フローの自動回覧先の設定やTeamsの投稿で@メンションする際に必要になります。
  • それぞれのブロックでひとつずつ定義すると後で人が変わった時に大変なので変数で定義します。
  • 必要な数だけ変数を設定しましょう。順番は回覧させる順序でなくてもOKです。
*名前任意の値でOK
*種類文字列
メールアドレスを入力します
条件
  • この条件分岐では回覧するかしないかを判定します。
  • 判定方法はアイテムやファイルの変更を取得する(SharePoint)で「変更があったか、なかったか」です。
  • 「はい(変更がある)の場合」は承認回覧をフローを継続します。
  • 「いいえ(変更がない)の場合」はフロー終了です。

条件分岐1~状態の更新(審査中)まで(Part2)

次に条件分岐1で「はいの場合」となったフローを作っていきます。

「いいえの場合」の方は空欄、もしくは通知が欲しければ通知を行うフローを作りましょう(本記事では割愛)。

条件:はいの場合

現在の時刻1
  • 現在の時刻を取得します。
  • ここでは審査に回った日時です。
項目の更新するーSharePoint
  • 「状態」の列を[作成中]から[審査中]に変更します。
  • 「回覧日」の列を[現在の時刻]に変更します。
*サイトのアドレス SharePointリストのアドレス(選択式)
*リスト名任意のリスト(選択式)
*IDID
ビューによる列の制限空欄でOK
*タイトルタイトル
*詳細詳細
状態審査中
回覧日現在の時刻
その他、列空欄でOK
※変更したい列があれば変更
条件2
  • この条件分岐では回覧先をどちらにするか決定します。
  • 判定方法は「区分」が[A]か、そうでないかを判定します。
  • 「はい(A)の場合」は、Aの承認フローに進みます。
  • 「いいえ(B)の場合」は、Bの承認フローに進みます。
    ※ここではAもBも同じ内容のフローになるためBは省略します。

コメント

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