Microsoft Power Apps からPower Automate へ値を送るテスト

# 今回行いたいこと：
1. Power Apps の「テキスト入力」コンポーネントに入力した値（今回はテキストと数値の2種）を、「ボタン」コンポーネントを介してPower Automate へ送る手順を把握
1. Power Automate のメーカーポータルの「実行履歴」で値を受け取れたことを確認

# キャンバスアプリ及びフローの作成と確認の流れ

まずは以下のスクリーンショットのように、「テキスト入力」（書式はテキスト）と「ボタン」を作成。

![03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/b8b0cef1-33da-bc2e-72d3-af86ecd330b6.png)

Power Automate のフローを新規作成します。以下のスクリーンショットのように、画面左側の三点リーダーより「Power Automate」をクリック。

![04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/6160c209-6a84-58c1-a8b8-fcf04a28faed.png)

「フローを新規作成する」ボタンをクリックし、

![05.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/670af939-776d-1f56-4738-aef02eefe576.png)

表示された画面左上にある「一から作成」ボタンをクリック。

![06.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/4174020c-4c28-ec12-b6a5-5ad8f478c522.png)

まっさらなフローが表示されるので、

![07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/b577828e-0ce2-6ce3-8c66-1f3106e6da12.png)

「Power Apps (V2)」で「テキスト」を選択し、

![08.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/6fe0d167-83ea-882f-7aac-508da08d2a08.png)

左側の狭いテキストフィールドで変数名（？）、右側でその説明文を入力するのですが、今回はそのままにします。

![09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/01092de0-0b2b-d1bc-66e0-3359c8bb39cd.png)

「新しいステップ」をクリックし、今回は「終了」のアクションを入れておきます。

![10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/7519a835-3d2b-f6d0-94ab-aec618fc10f2.png)

Power Automate メーカーポータルで見つけやすいようにフローに名前を付けておきます。

![11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/fe7ae9d6-9dba-585e-b6c9-73e1fd8d07fb.png)

フローの作成が完了するとPower Apps 側に反映されます。

![13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/0d4b0df4-763f-700b-e2be-10c8e2e5c89f.png)

ボタンの「OnSelect」プロパティに、`フロー名.Run()` を入れ、テキスト入力コンポーネントの値を引数とします。

![14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/994d6223-ccf2-52de-99ce-c9c2feacc649.png)

ブラウザの別タブでPower Automate のメーカーポータルを開いておきます。

![15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/b9e934ee-34af-0180-d0b5-d127f4a52e35.png)

Power Apps でテスト実行。

![16_test.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/6e2a20f1-484f-dc93-9269-f3b15e2de2fe.png)

Power Automate のメーカーポータルの実行履歴に成功のログが出たのでそれをクリックし、

![17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/e64da817-913d-ec2e-d422-46be9c8ae613.png)

出力欄の値をのぞいてみます。Power Apps で入力した文字列がちゃんと送られたようです。

![18b.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/e250cfa1-debc-866e-2093-34bc31b172d9.png)

さて次はテキストと数値の両方をPower Automate へ送ってみようと思います。
ボタンのOnSelectプロパティのコードに対してカンマ区切りで第2引数を入れられるようだったので、「TextInput2.Value」を加えてみます。2つ目のテキスト入力の書式を数値としたので、プロパティを.Valueにしてみたのですがきっと違う...。

![19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/1171d2f7-4626-e43f-e2fd-3cb62829abd9.png)

エラーが出てしまいました。
まずプロパティの.Valueは認識できないので.Textにする必要があることと、Power Apps 側の引数の数とPower Automate 側の受け手？の数にミスマッチが生じているようです。

![20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/99707ec6-5b98-e92a-754a-90006e081be5.png)

Power Automate 側を見るとテキストの入力項目しかないので、「入力の追加」をクリックして、

![21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/31012acf-02a3-a099-e653-e0fb025ba536.png)

「数」を選択します。

![22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/6527bbeb-1f4c-0a43-2005-d5fabf3a67c1.png)

例によって変数名（？）とその説明文はそのままにします。

![23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/30914863-f394-caf1-2126-e2d8843ad370.png)

Power Automate 側でフローを編集したので、Power Apps で「最新の情報に更新」を行います。

![24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/15a34e00-7e04-e835-9069-bf30253755e6.png)

Power Apps でテストを実行してみます。

![27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/3ab6d402-a986-4992-1ecc-cd08f5bffd54.png)

Power Automate の実行履歴から値が正常に取得できたことを確認できました。

![28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/34f7da67-630a-8258-1bcc-c6ce7d9903df.png)

# Power Apps 側の引数の順番とPower Automate 側の入力の順番は連動している。

試しに引数の順番を逆にしてみたところ、

![30.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/c3be9fd2-0507-76f8-76b4-cafc71fdd918.png)

テスト時に型エラーがでてしまいました。

![31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2629955/459abfec-fc74-e350-a2b8-1a6614335577.png)

Power Apps のテキストをPower Automate の数値入力に送ろうとしたために型エラーが出てしまったようです。従って、Power Apps 側の引数の順番とPower Automate 側の入力の順番は連動しているようです。



# 参考
[Power Automate フローをトリガーできるキャンバス アプリを作成する（Microsoft Learn）](https://learn.microsoft.com/ja-jp/power-apps/maker/canvas-apps/how-to/trigger-flow?source=recommendations)
[Power Automate ペインを使用する（Microsoft Learn）](https://learn.microsoft.com/ja-jp/power-apps/maker/canvas-apps/working-with-flows)