クラウド版Power Automateにおいて、フロー内のエラー制御をどのように実装していますか?「スコープ」アクションを活用すれば、Javaプログラムでよく用いられる「try-catch-finally」構文のようなエラー制御の構文を再現できます。本コラムでは、「スコープ」アクションを用いたエラー制御の実装方法について、具体例を交えて紹介します。
■try-catch-finallyとは?
Java、C#、C++などのプログラミング言語で提供されているエラー(例外)制御を行うための代表的な構文です。

- tryブロック:エラーが発生する可能性のある処理を記述
- catch ブロック:エラー発生時の処理を記述
- finally ブロック:エラーの有無にかかわらず、最後に必ず実行したい処理を記述
たとえば、Java では try ブロックでファイルを開き、finally ブロックでファイルを確実に閉じるというパターンが一般的です。これにより、リソースの適切な解放が保証されます。
■Power Automate での再現方法:「スコープ」アクションを使う
クラウド版Power Automateで「スコープ」アクションを使ったtry-catch-finallyを実装してみます。

- スコープアクションを3つ配置
各スコープに分かりやすい名前「try」「catch」「finally」を付けます。
- スコープの実行条件を設定
catch:失敗したとき、タイムアウトしたときに実行されるように設定
finally:常に実行されるように設定
- 各スコープの役割に応じた処理を実装
try:通常の処理(例:データ取得など)
catch:エラーメッセージの取得やログ記録
finally:チャット通知やクリーンアップ処理
たとえば、try 内でエラーが発生した場合は catch でエラー内容をログ化し、finally で チャットツールに「処理終了」の通知を行うことができます。これにより、正常終了と異常終了の両方で適切なフィードバックが得られます。
クラウド版Power Automateではデスクトップ版Power Automateのような専用のエラー制御アクションが存在しないためエラー制御に工夫が求められます。今回紹介した「スコープ」アクションを使った実装は、視覚的にも分かりやすく、メンテナンス性にも優れた構成です。ぜひ、業務フローの安定稼働を目指して導入してみてください。

技術とノウハウでデジタルシフトをサポート
中小企業の頼れるパートナー
執筆者: 村瀬 俊昭(株式会社クロスディーズ システム技術統括エンジニア)
前職では社内システムの運用、サーバーの監視、システム運用業務の構築、システム開発業務といった業務に幅広く携わる。2021年より株式会社佐々木総研にてロボットの設計・開発、社内SEとして従事している。釣りが趣味で、大のビール好き。