Power Apps の Plan designer が一般提供開始されたため改めて試してみた


# はじめに

以前以下の記事を書いた Power Apps の Plan designer、Microsoft Build にて一般提供開始されましたので、改めて検証をしてみます。

https://qiita.com/Takashi_Masumori/items/ee25a827a7c7b92ba43e

https://learn.microsoft.com/en-us/power-apps/maker/plan-designer/plan-designer

一旦、シナリオは前回と同じものにしてみます。今後も試して気づいたことが出てきたら追記します。

# シナリオ 1

前回と同様に、Power Appsや Power Automate のトレーニングを社内で実施する場合含め、何らかの社内トレーニングを実施する業務を効率化するシナリオで試してみます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/94ab5fdf-b108-47bf-ac2a-be48eea7511c.png)

全体的な流れについて、大きくは変わりませんが、今は、それぞれのコアな処理ごとに別々のエージェントが内部で動いていますね。プロセスエージェント以外は一般提供前から内部的には存在していた認識ですが、そのように再定義した感じですかね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/d7997b24-e24d-4237-a6b4-1ab34216f9a5.png)

プロセスは割といい感じです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/5cc14bfb-7668-4972-84a0-d06decb6dbc7.png)

データの部分もいい感じですが、今回のシナリオでは、受講者自体はテーブルで管理する必要はないため削除します。この辺もちゃんと動作します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/ae41bf96-21d2-4e50-82de-f041e1236166.png)

テーブルの編集、追加等も出来るようになりました。内部スキーマ名が微妙な名前になるので、こちらは、テーブルを Copilot で作成するときと同じように、英語で作成してもらうのが良さそうです。ただ、この辺はそもそも Dataverse を知らないと気づけないので、表示名は日本語、内部スキーマ名はいい感じの英語にしてくれると嬉しいですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/f2baa755-fd15-4fcb-a8c2-8f3a88879575.png)


アプリ、フローの候補も出てきました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/4a95880f-726d-4bf6-8263-81907cb8a6e1.png)

追加も出来ます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/efb1b3fb-5788-4be1-849b-c67c7187fd61.png)

作成してほしいフローも指示して追加します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/7895d220-9ca2-422f-b8d0-c4f7942453cf.png)

追加されました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/4e596b29-b736-42f4-9d71-afe1723ece66.png)

ただ、もう一個追加しようとしたら、前に追加したフローが消えました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/f4bba277-8bd5-426e-a6dd-869288a7540e.png)

あと、恐らく、「予約管理エージェント」なるもの、説明内容的にいらなさそうですが、どんなものか気になるので一応作ってみることにします。

ソリューションに保存します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/30fae0b9-7069-4803-a25e-a7fd40523003.png)

その後、それぞれのアプリ、フローごとに以下の方法で作成するようです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/7ab89a88-ff46-487a-af81-ee51d1b83e5c.png)

モデル駆動型アプリはいい感じです。モデル駆動型アプリはテーブルさえしっかり作れば出来るので AI が自動で作成する場合も安定していますね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/c55a3c6d-c77d-4a29-936f-01cb1e2d9a3f.png)

エージェントは、まあこの業務シナリオだったらいらないというか、少なくともこのシナリオではエージェントが最適とは思えないというか、無理にエージェントは入れなくていいかなと思います。強いて言えば、問い合わせを管理するようなシナリオで過去の問い合わせを基に回答をするようなクラシック型であれば入れてもいいですかね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/1634234d-b317-430e-9a92-49f47b21a992.png)

フローも自動で作成されるようになりました。これは嬉しいのですが、実際に作られようとしているものはちょっと微妙ですかね。
こちらは「予約レポートフロー」という名前が付けられているものですが、そもそも何？という感じでしたが、単にメール送信するだけのフローです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/fb583122-5ed9-46e0-9024-6229787365ee.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/7015415f-ea35-4236-864e-94ab84db06a0.png)

以下は予約締め切りフローです。そもそも予約締め切りは、開始日の〇日前になったら、アプリ内のロジックで、申し込み不可にする想定のため、フロー自体いらないですが、恐らくこちらでは、該当するトレーニングをフィルターをして、ステータスを変えようとしている感じでしょうかね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/f38b9df9-9123-437b-afa8-e5cf583daabe.png)

予約通知フローも単にメールするだけです。理想は、予約したトレーニングの日時を基に、カレンダーに予定を入れる感じが理想でしたが、単にメールするだけで、メール内容にも予約したトレーニングの情報は入っていないようです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/5e93642f-14c2-4f92-8dcf-7f673eabd693.png)

最後にキャンバスアプリです。こちらも、従来の Copilot でアプリを自動で作成する機能と大きく変わらず、トレーニング一覧は、現在申し込み可能なものだけ、また、予約可能人数の上限に達していないものだけ予約できる、もし同時に予約が発生した場合、重複排除の仕組みで予約失敗するなどの細かい要件のロジックは組み込まれていません。この辺は引き続き自前でロジック組む必要がありそうですね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/ac2759dd-d6ec-466e-87be-807eba1a1bcd.png)

# シナリオ 2

次は問い合わせ管理のシナリオです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/a607c58c-162c-4ee2-a11a-c0cccff1b242.png)

まずは要件を整理します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/235be9f1-fa48-431e-868a-e9b0157a017d.png)

テーブル案です。こちらも、問い合わせ者、担当者、管理者はテーブルで管理しなくていいですかね。当たり前ですが、あくまで案として参考にしつつ、自分でこの辺の判断する能力は必要になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/6e459b6d-9e6c-4f87-821c-bb92f7b96c48.png)

テーブルの編集、追加等はできるため、やはり、内部のスキーマ名などが「cr596_Column」といった感じで微妙な感じにならないよう英語で作成した方がいいです。

アプリ、フロー等の案です。問い合わせをするアプリが欲しかったのと、「問い合わせ管理エージェント」より、過去の問い合わせを基に回答をするエージェントを提案してくれた方が個人的には嬉しかったです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/6abbb82c-cee7-489a-b037-11efc1d0b9e6.png)

問い合わせ通知フローの作成を試みましたが、残念ながらフローの提案がありませんでした。こちら自体は Power Automate の Copilot がベースのようですが、今後これらの進化に期待ですかね。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/fa6172e6-7065-4fa5-9d69-542fe0bb9982.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/8b79441d-0daa-409f-8485-bbc567fe746b.png)

# まとめ

取り急ぎ、前回の記事で課題として挙げた点について、１ 点目と ２ 点目はできるようになりました。3 点目もフローの作成自体はできるようになりましたが、精度面はまだ課題があると思います。

* テーブルの列の編集ができるようになる
* 自前の Excel、CSV ファイル、既存のテーブルを追加できるようになる
* フローの作成ができるようになる (精度も重要)

もちろん、これからも進化していくと思いますし、継続的に試していこうと思っています。

今後どのような用途で活用するかについての個人的な考えは、前回お伝えした以下の内容から変わっていません。

=====
また、こちらを活用する方には、Power Apps や Power Automate の基礎知識に加えて、以下のようなスキルも求められると考えています。

* Dataverse テーブルに関する知識
* ソリューションに関する知識

これらを踏まえると、本格的に活用するためには、一定の前提知識が必要になると思います。しかし、「初学者向け」という観点では、現行業務を出発点として Power Apps や Power Automate を活用する際に、どのようなアプリ・テーブル・フローを作成すべきかを整理するアシスタントとして、十分に有効だと感じています。

たとえば、Power Apps や Power Automate の初学者向けトレーニングを受講した直後で、「自分の業務で何が改善できるのか、まだイメージが湧かない」といった段階でも、まずは現在の業務に関する情報を Plan designer に入力することで、具体的な改善のヒントを得られるかもしれません。さらに、Plan designer によって自動生成されたアプリやフローをたたき台として、不足している機能や変更したい箇所を洗い出していくことで、「本当に作りたいもの」や「必要な要件」を段階的に整理できると思います。

もちろん、100 点に近い成果物を一度で作成できるのが理想ですが、「100 点のものが作れないから使わない」という姿勢ではなく、市民開発を促進し、その生産性を向上させていくためにも、アシスタントをどのような観点で活用できるかという視点を持ち、柔軟に機能を使いこなしていくことが重要だと考えます。