🚗

Power AppsのAPI呼び出しでエラーハンドリングする

2021/08/18に公開

Power Appsでカスタムコネクタとして読み込んだ外部のAPIを使用した際にエラーレスポンスが返ってきた場合にハンドリングする方法です。

前提

Power AppsにOpen API定義ファイルを読み込んでカスタムコネクタを作成しておきます。
具体的な方法は以下の記事が参考になります。
https://zenn.dev/okazuki/articles/azure-function-powerapps

手順

1.実験段階の機能をON

アプリの「ファイル」→「設定」→「近日公開の機能」→「実験段階」から「数式レベルのエラー管理」をONにします。

2.カスタムコネクタの読み込み

「データ」→「データの追加」をクリックして前提で作成したカスタムコネクタを読み込みます。

3.API呼び出し処理の実装

IfError関数を使用します。

IfError(
    AzureFunctionsOpenAPIExtension.Debug(200), // エラーを評価される処理
    UpdateContext({message:"error"}), // エラーの場合の処理
    UpdateContext({message:"success"}) // 正常に終了したときの処理
);

今回はテストとして、リクエストに欲しいレスポンスコードを渡すとそのレスポンスコードを返してくれるAPIを使用しています。

これでエラー時のハンドリングが実装できました。

参考

Power Appsには今回使用したIfError関数の他にもエラーをハンドリングできる関数が存在します。また、IfError関数にも様々なオプションがあり、より柔軟な処理を書くことができます。
https://docs.microsoft.com/ja-jp/powerapps/maker/canvas-apps/functions/function-iferror

GitHubで編集を提案
Microsoft (有志)

Discussion