今回はワークフローが承認されたら申請→貸出にBPFが自動的に移動するフローを作成します。
目次
必要なBPFの情報をAPIから入手
まずは、進ませたい先のBPFのステージIDを取得します。そのため、その行IDを指定できるようにテーブルから情報をとっておきます。
BPFには、裏でBPFと同じ名前のテーブルが作成されています。作成者ポータル(https://make.powerapps.com/)からBPFのテーブルを探しましょう。
今回はBPFの名称が貸出管理BPFのため、テーブルよりその名称で検索します。
隠れているテーブル名と同じ名称のGUID列を表示させます。
移動させたい先のステージが設定されている貸出管理BPFの行のGUID値をコピーします。
コピーできている感覚もてないですが、選択してCntrl+Cでコピーできます。
私の環境では以下のGUID値でした。
移動先のステージ「貸出」である貸出管理BPFの行ID = f84edc65-a3ff-ee11-9f89-00224866b161
さらにこの行IDを利用して「貸出」のステージIDを取得します。ツールから「テーブル データへのAPIリンク」をクリックします。
拡張機能をインストールしていない場合、こちらの拡張機能をEdgeにインストールするとみやすくて便利です。
JSON Beautifier & Editor – Microsoft Edge Addons
先ほど入手したGUIDで一致させて行を検索します。
検索はショートカットキー「Ctrl+F」にて検索を行うことができます。皆様の環境で入手した、「貸出」ステージになっているID(私の環境では貸出管理BPFの行ID = f84edc65-a3ff-ee11-9f89-00224866b161
)を利用して検索します。
一致した行で見つけられる、_activestageid_value
をコピーします。これが「貸出」ステージのIDです。
私の環境では444953bf-02a8-41e1-b97b-3ea3a5a0692d
でした。
Power Automate フローを編集する
既存で作成しているPower Automate の承認ワークフローを編集します。フローの名前は「貸出管理ワークフロー」です。
Dataverseのレコードが作成されるとそれに伴い申請ワークフローが起動して承認されれば申請ステータスの列が更新されるワークフローです。
今回は承認された時にステージも進行させようと思います。そこで承認された際にアクションを追加します。
Dataverse のアクションを追加します。
貸出管理BPFの行を一覧にして取得して、貸出管理のGUIDでフィルターすることで、現在取り掛かっている貸出申請に関連付けられているBPFの行を1行取得します。
これは以下のようにフィルター条件に記載します。貸出管理IDのところはトリガーで使われている貸出管理の一意識別子の列を指定します。何も設定していなければ一位識別子の列名はテーブル名と同じになっているかもしれませんが、Udemyのコースではマニュアルで変更して貸出管理ID
という列名になっているかと思います。
_bpf_geek_kashidashi_kanriid_value eq 貸出管理ID
貸出管理IDのところは以下の画像のように動的なコンテンツから渡すようにしてください。
これによってフィルターされたプロセスを取得することができます。
取得する行数は1行としておきます。
次にステージを進めるアクションを追加します。
行を更新します。
BPFなどとして、貸出管理BPFのテーブルを検索します。
行IDには動的なコンテンツから貸出管理BPFというテーブル名と同じ列を指定します。
詳細オプションを表示します。
アクティブステージ (プロセスステージ)という列に最初に入手したIDを渡して、「貸出」ステージに更新します。ただちょっとクセがありますのでご注意ください。
先ほどまでにコピーしておいた、_activestageid_value
を利用します。
こちらの値ですね。ただしこれは皆様の環境ごとに異なる値ですので、先ほどの手順で各自取得するようにしてください。
この値をアクティブステージ
の値に、以下のように入力します。黄色の部分は皆様の環境に合わせて「貸出」ステージのIDを入れるようにしてください。
processstages(444953bf-02a8-41e1-b97b-3ea3a5a0692d)
これにより、アクティブステージを「貸出」に進めることができます。
ここまでできたらフローは完成です。保存して閉じます。
フローのテスト
テストを実行します。キャンバスアプリから新しく貸出申請をします。
Anker Speaker Pro を借りてみようと思います。
モデル駆動型アプリで確認すると、申請時点ではまだアクティブステージは「申請」になっていることがわかります。
Teams に承認依頼が来ていますのでTeams を開き、承認します。
モデル駆動型アプリを最新の情報に更新して、アクティブステージが移動したかを確認します。
自動的にステージが移動して「貸出」になりました。
以上ご参考になりましたら幸いです。