Power AppsでPower Automateのフローを呼び出す方法

Power AppsでPower Automateのフローを呼び出す方法

Power AppsでPower Automateのフローを呼び出す方法

Power Appsでアプリを作成していると、複雑な処理などを追加したいと思うことがあると思います。
特に同じPower PlatformであるPower Automateと連携ができればMicrosoft製品の操作などもできるため、より幅広い機能実装ができるようになります。
そのため今回はPower AppsからPower Automateを呼び出す方法をまとめていきたいと思います。

アプリから値を渡してフローを起動する方法については、Power AppsからPower Automateに値を渡す方法で紹介しています。


Power Automateの準備

Power Appsから呼び出すためには、まずPower Automateのフローを作成しておく必要があります。
まずはPower Automateのフロー作成で重要な部分を記載していきます。

  1. 専用のトリガーを設定する
  2. Power Appsから呼び出すためには、専用のトリガーを設定しておく必要があります。
    そのトリガーはインスタントクラウドフローにある「PowerApps」です。

    これで、Power Apps側から呼び出すことが可能になります。

  3. Power Apps側でフロー処理を待つようにする
  4. トリガーを設定するだけでPower Appsから呼び出しができるようになります。それだけでも問題はないのですが、このトリガーだけですとPower Apps側はフローを呼び出してもフローの終了を待たないのです。
    そのため「フロー処理が終わったら○○」のような実装はできず、フローと平行してPower Apps側の処理が動いてしまうのです。これを回避するには専用のステップを追加してあげる必要があります。

    「新しいステップ」から「PowerApps」で検索し、「PowerAppsまたはFlowに応答する」を追加します。

    これにより、このステップが呼び出されるまでの間は、Power Apps側の処理が行われなくなります。(正確にはフロー呼び出し以降に記載している処理が行われなくなる)
    「出力追加」は特段設定しなくても大丈夫です。

Power Automate側の用意は異常です。上記の設定を行えばそれ以外のステップは自由に追加して問題ないです。
今回は起動したことがわかるように下記の様なメールを送付するフローで実験します。


Power Appsの準備

フローの作成ができたら、Power Appsから呼び出す設定を行います。
今回は画面のようにボタンだけを配置したシンプルなアプリで実験します。

  1. アプリにフローを登録する
  2. 編集画面上部の「アクション」タブに移動、Power Automateを選択します。すると画面のように連携しているPower Automateのフローが表示されます。すでに登録済みのフローもここに表示されます。

    「+フローの追加」を選択すると作成済みのフローが表示されるので、先程作成した「PowerAutomate起動サンプル」を選択します。

  3. ボタンにフローを連携する
  4. フローを起動起動させたいコントロール(今回はボタン)のOnSelectメソッドを選択し、「フロー名.Run()」と記述します。
    今回の場合は「PowerAutomate起動サンプル.Run()」となります。

これでフローの登録から連携までが完了しました。


実際に動かしてみる

フローの連携ができたらアプリを起動させ、ボタンを押下します。
するとフローが呼び出され、処理が行われます。

確認のためPower Automateの画面を開き、「Power Automate起動サンプル」のフローが起動されているかを見ておきます。

画面のように起動されたことが確認できます。
念の為、フローの処理でメールを送るようにしていたのでメールBoxを確認してみます。
ちゃんと送付されています。


さいごに

Power AppsからPower Automateのフローを呼び出すことに成功しました。フロー側のトリガーに気をつけるだけで簡単に呼び出せるようになります。
フローを連携することでPower Appsだけでは実装できない処理なども取り入れることができるので、ぜひ組み合わせて作成していきましょう。
次回はフローの呼び出しの際に、アプリ側から値を渡す方法をご紹介します。今回はこのへんで、ではまた。

コメント

このブログの人気の投稿

PowerAppsで座席表を作成する

Power AutomateでTeamsのキーワードをトリガーにする

Power Automateで文字列抽出