Power Apps モデル駆動型アプリで「ねこ管理アプリ」を作ってみる|第5回 ワークフローとフローステップ

2024/5/18:UIを最新版に更新

モデル駆動型アプリを使って「ねこ管理アプリ」を作ってみたシリーズ第5回。

今回は前回作ったビジネスプロセスフローに「ワークフロー」と「Power Automateのフロー(フローステップ)」を実装してみる。

スポンサーリンク

ワークフロー

前回の記事でも少し触れたけど、ワークフローはPower Automateのフローとは別物で、もともとはDynamics365の機能。

フローステップ(プレビュー)

フローステップはプレビュー機能で、ビジネスプロセスフローのステージでPower Automateで作ったフローを呼び出す機能。

ワークフローとフローステップの実装

今回アプリに実装する機能はこちらの2つ。

  • ワークフロー:1回目のワクチンステージが完了したら、2回目のワクチン予定日を自動で設定
  • フローステップ:1回目と2回目のワクチンを接種したことをTeamsで通知

ワークフロー実装

まずはワークフローの作成から。

モデル駆動型アプリを編集で開いて、[自動化]タブからビジネスプロセスフローを選択して、[新しいタブで編集する]をクリック。
そしたら「2回目ワクチンス接種」ステージにワークフローをドラッグドロップで追加する。
トリガーを[ステージの開始]に設定して、フローの「新規」を押す。
プロセスの作成で「プロセス名」を設定して、カテゴリは「ワークフロー」、エンティティに「ねこ」を選び、「空のプロセスの新規作成」を選択して[OK]を押す。
ビジネスプロセスフローで使うワークフローは「オンデマンド(同期実行)」である必要があるので、「オンデマンドプロセスとして」にチェックを入れる。
続いて「ステップの追加」→「レコードの更新」を選び、

※オンデマンドアクションである必要がある旨は公式リファレンスに記載あり

「プロパティの設定」を押す。
今回は「1回目のワクチン接種日の1カ月後を2回目のワクチン接種予定日に設定」するので、フォームアシスタントを以下の図のように設定して、
「2回目ワクチン接種予定日」列にOKボタンで代入して、保存して閉じる。
そしたら「保存」して「アクティブ化」を押し、
アクティブ化が無事完了したらワークフロー編集画面を閉じる。
業務プロセスフローの画面に戻ると作成したワークフローが表示されるので、作成したフローを選択し「適用」を押す。
[更新]ボタンからビジネスプロセスフローを保存。

これでワークフローの実装は完了。

ワークフロー動作確認

モデル駆動型アプリを再生して、新しいねこを追加する。
ねこのプロセスを進めていって、1回目のワクチン接種日を設定して[次のステージ]を押すと、
ワークフローが実行され「2回目ワクチン接種予定日」が設定される。
※ビジネスプロセスフローに表示するには「ctrl+F5」で画面を更新する必要あり。

このように、ワークフローではプロパティの自動設定などの処理を定義することができる。

フローステップの実装

続いてフローステップを実装していく。

※フローステップの公式はこちら
https://docs.microsoft.com/ja-jp/business-applications-release-notes/april19/microsoft-flow/instant-steps-business-process-flows

まずはフローステップで実行するPower Automateフローを作成する。フローステップで使用するフローはビジネスプロセスフローと同じソリューションで作る必要があるので、[ソリューション]タブからビジネスプロセスフローがあるソリューションを選択。
※今回はサンプルなので既定のソリューションに作るけど、本番はプロダクト用にソリューションを作ってそこにフローを作成することになるかと。
[新規]→[自動化]→[クラウドフロー]→[すぐに]を選択し、
「ビジネスプロセスフローからフローステップが実行された場合」トリガーを選んで[作成]を押す。
[IDで行を取得する]アクションを追加し、[BPF フローステージのテーブル行ID]を使い、フローステップが実行されたレコードの情報を取得。
最後にTeamsのアクションで接種した旨を伝えるチャットを送信したら、Power Automateのフローの構築は完了。
そしたら「業務プロセスフロー」画面へ戻り、「フローステップ」をドラッグして「1回目ワクチン接種」ステージに入れる。
フローの選択で先ほど作成したPower Automateフローを選んで、
画像のように設定して保存すれば、フローステップの実装は完了。

フローステップ動作確認

モデル駆動型アプリを起動して任意のねこレコードを表示する。そして「1回目のワクチン接種」ステージを開くと[フローの実行]ボタンが表示される。
実行ボタンを押すとPower Automateフローが実行されて、
Teamsにメッセージが届く。

ビジネスプロセスフローで定義した業務の流れの中で、自動または手動で何かしらの処理を実行したい場合は「ワークフロー」や「フローステップ」を使用して実現することができる。

※現在は自動で実行したい処理についても「ワークフロー」を使用せず、Power Automateの自動トリガーを使用して処理を実現することが推奨されている。

コメント

タイトルとURLをコピーしました