Power Automateでユーザーを対象とした処理を含むフローを実行する時に退職などの理由でユーザーが削除されていてアクションが失敗し、フローがエラーになってしまった…ということはありませんか?
本記事では、ユーザーが削除されてしまった状況を考慮したエラーハンドリングの設定方法についてご紹介します!
想定シナリオ
今回は、以下のようなシナリオを想定してフローを構築します。
- SharePointリストの「ユーザーまたはグループ」列に登録されたユーザーに対してTeamsのチャットを送信する、という処理をフローで実行している
- SharePointリストに登録されていたユーザーが削除されてしまった
エラーハンドリング設定前のフローは下記のイメージです。
この状態で、SharePointリストの「ユーザーまたはグループ」列に削除されたユーザーが含まれていると、エラーが発生して処理が止まってしまいます。
次の手順でエラーハンドリングを追加することで、削除されたユーザーが含まれていても後続の処理を実行することができます。
また、管理者などの指定したユーザーに、削除されたユーザーが含まれていた旨を通知することもできます。
エラーハンドリング追加手順
- 「チャットまたはチャネルでメッセージを投稿する」アクションの下に「条件」アクションを追加します。
- 条件アクションを右クリックし、「この後に実行する」をクリックします。
- 画面左側に表示される設定ウィンドウ内のアクション名の横の右矢印アイコンをクリックします。
- 「成功しました」のチェックを外し、「失敗しました」にチェックを入れます。
本設定により、チャット送信アクションが失敗したときのみ条件アクションが実行されるようになります。 - 「パラーメーター」タブをクリックし、条件には以下を設定します。
「empty(項目の取得の動的コンテンツのユーザーEmailを選択)」「is equal to」 「true」 - 条件アクションの「偽」の中に「チャットまたはチャネルでメッセージを投稿する」アクションを追加します。本アクションを追加することで、削除されたユーザーが存在し処理を実行できなかった旨を、指定した管理者アカウントに通知することができます。
- 「チャットまたはチャネルでメッセージを投稿する」アクションには、削除されたユーザーが存在した際に通知する内容を設定します。以下設定例となります。
設定手順は以上です。
まとめ
「ユーザーまたはグループ」列を使用する際は、ユーザー削除時にエラーが発生する可能性があるため、こちらのエラーハンドリングを設定してみてください。
また、今回ご紹介した内容は、チャット送信アクション以外の様々なアクションにも応用することができますので、ぜひ活用してみて下さい。