Udemy 新コース: 作って学ぶPower Automate !

【D365+PowerApps】Power Automateで取得したデータをPower Appsに返す (Easy PO改善)

以前、Dynamics 365 Finance, Supply Chain Management  (旧称 Finance and Operations)の画面にPowerApps をかぶせて簡易発注画面を作る試みをしました。

今回はそのPower Apps を少しだけ改善してみましょうという試みです。

 

改善内容としては、採番された発注書番号を取得してPowerApps 画面に表示してみましょうというものです。

これが出来たら、確かに発注書が作成された&何番の発注書が作成されたか分かって便利です。

 

というわけで、簡単に実装できますので早速紹介して行きます。

 

PowerApps 関数の説明

Power Automateから取得した値を変数に保存します。用途によって、以下1〜2を使い分けます。

そのスクリーンでのみ利用する一時変数にFlowから取得した値を格納する場合

コード

UpdateContext({‘変数(ここで初めて宣言します)’: ‘Flow名’.Run()})

全スクリーンで利用可能なグローバル変数にFlowから取得した値を格納する

コード

Set(‘変数(ここで初めて宣言します)’, ‘Flow名’.Run())

 

では早速実装する

Power Automateで作成した変数にFOから取得した発注書番号を格納します。

以前作成したFlowにアクションを追加する

Power AppsコネクターのRespond to PowerApps アクションを利用します。

 

今回データ型はテキストである為、テキストを選択します。

 

変数に名前をつけ、作成した発注書番号を格納します。

ここで定義した変数名 (ここではCreatedPurchaseOrderNumber) は大文字が入っていたとしても、PowerApps で呼び出す際は全て小文字で記述する必要があることにご注意ください。

 

保存して終了します。

 

Power Automateの更新

PowerApps 側で、Flowの接続をもう一度行なって更新します。

 

Power Automateで取得したデータを利用する

PowerApps 側で、UpdateContextあるいはSet関数でFlowのデータを取得する関数を記述します。

今回はスクリーンをまたがるのでグローバル変数としました。データが残るのが気になる場合、完了のチェックボタンを押せば画面が戻るようにし、同時にグローバル変数もリセットされるようにすると良いでしょう。

 

成功スクリーンを編集してみると、こんな感じに使うことができます。

 

 

いかがでしたでしょうか。

ご参考になれば幸いです。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です