【Power Automate】「スコープ」アクションを組み合わせたエラー制御について

クラウド版Power Automateにおいて、フロー内のエラー制御をどのように実装していますか?「スコープ」アクションを活用すれば、Javaプログラムでよく用いられる「try-catch-finally」構文のようなエラー制御の構文を再現できます。本コラムでは、「スコープ」アクションを用いたエラー制御の実装方法について、具体例を交えて紹介します。

■try-catch-finallyとは?

Java、C#、C++などのプログラミング言語で提供されているエラー(例外)制御を行うための代表的な構文です。

図1:try-catch-finally概念図
  • tryブロック:エラーが発生する可能性のある処理を記述
  • catch ブロック:エラー発生時の処理を記述
  • finally ブロック:エラーの有無にかかわらず、最後に必ず実行したい処理を記述

 たとえば、Java では try ブロックでファイルを開き、finally ブロックでファイルを確実に閉じるというパターンが一般的です。これにより、リソースの適切な解放が保証されます。

■Power Automate での再現方法:「スコープ」アクションを使う

クラウド版Power Automateで「スコープ」アクションを使ったtry-catch-finallyを実装してみます。

図2:左図「スコープ」アクションの配置/右図実行タイミングの設定
  1. スコープアクションを3つ配置
    各スコープに分かりやすい名前「try」「catch」「finally」を付けます。
  1. スコープの実行条件を設定
    catch:失敗したとき、タイムアウトしたときに実行されるように設定
    finally:常に実行されるように設定
  1. 各スコープの役割に応じた処理を実装
    try:通常の処理(例:データ取得など)
    catch:エラーメッセージの取得やログ記録
    finally:チャット通知やクリーンアップ処理

たとえば、try 内でエラーが発生した場合は catch でエラー内容をログ化し、finally で チャットツールに「処理終了」の通知を行うことができます。これにより、正常終了と異常終了の両方で適切なフィードバックが得られます。

クラウド版Power Automateではデスクトップ版Power Automateのような専用のエラー制御アクションが存在しないためエラー制御に工夫が求められます。今回紹介した「スコープ」アクションを使った実装は、視覚的にも分かりやすく、メンテナンス性にも優れた構成です。ぜひ、業務フローの安定稼働を目指して導入してみてください。

cropped-logo-1.png

技術とノウハウでデジタルシフトをサポート
中小企業の頼れるパートナー

執筆者: 村瀬 俊昭(株式会社クロスディーズ システム技術統括エンジニア)

前職では社内システムの運用、サーバーの監視、システム運用業務の構築、システム開発業務といった業務に幅広く携わる。2021年より株式会社佐々木総研にてロボットの設計・開発、社内SEとして従事している。釣りが趣味で、大のビール好き。