実例から見るPower Platformの活用方法 Power Apps×Power Automate×Power Pages
-
TAG
Power Apps Power Automate Power Platform RPA -
UPDATE
2023/08/17
目次
はじめに
こんにちは。
今回はPower Platformというサービスでどのようなことができるのかについてご紹介していきたいと思います。
Power Platformのサービスを使用してできることは多岐にわたるのですが、今回は弊社が導入をお手伝いさせていただいた事例を例に挙げてご紹介します。
1. Power Platformとは?
はじめに、Power Platformについての説明をさせていただきます。
Power Platformとは、Microsoft社が提供するビジネスプラットフォームであり、「Power Apps」「Power Automate」「Power BI」「Power Pages」「Power Virtual Agents」の5つのサービスで構成されています。
それぞれのサービスは異なる機能を有しており、単体でも活かせますが各サービスを組み合わせることで多種多様な業務効率化が実現できます。
以下でそれぞれのサービスと、各サービスと連携するデータベースである「Dataverse」について簡単に紹介します。
機能面や実際に使用した過程について詳細に掲載している記事もありますので、詳しくは関連記事をご覧ください。
Dataverse
Power Platformにおけるデータベースです。
データベースであり、5つのサービスには含まれません。
SQLなどを使用せず、画面上での設定、操作のみでテーブルの作成やデータの管理が可能です。
また、データへのアクセス許可の制御などセキュリティ面の対策についても簡単かつ安全に行うことができます。
Power Apps
ローコード・ノーコードで作成できる、アプリ作成のためのプラットフォームです。
ドラッグアンドドロップ操作でWeb用、モバイル用のアプリケーション画面を作成できます。
また、Microsoft 系のサービス以外にも接続が可能であり、利用者の業務に即した様々なサービスと連携が可能です。
「キャンバスアプリ」と「モデル駆動型アプリ」という2種類のうちから選択して作成します。
・キャンバスアプリ
- デザインの自由度が高く、直感的な操作が可能
- ユーザーが情報や作業の結果を入力するといった、現場向けの作業を行う場合に推奨される
・モデル駆動型アプリ
- デザインはシンプルだがその分迅速な開発が可能
- 使用端末の画面サイズに応じて適切な表示になるよう自動で調整される
- 用意されているデータにへの確認や更新といった、管理寄りの作業を行う場合に推奨される
例)経費報告書の提出から承認までを管理するアプリケーション
【できること】
・簡単なアプリケーションの作成
→テンプレートからの作成や、ドラッグアンドドロップによる直感的な画面の構築が可能です。
・会社等決められた組織内のユーザーによるデータの入力・閲覧・更新
→接続したデータを表示・更新する、あるいは入力してデータを追加するといった機能を持たせることが一般的です。組織内メンバーの所属や役割に応じて閲覧・更新の権限を細かく設定可能です。
・様々なデータとの接続
→OneDriveやSharePoint、ExcelなどMicrosoftのサービスはもちろん、AWS、やMySQLなど様々なデータとの接続が可能です。
【向いていないこと】
・複雑な機能やレイアウトを備えたアプリケーションの作成
→簡易な作成手順、直感的な操作が魅力であり、複雑な機能を埋め込む、条件の細かいレイアウトで作成するといったことには不向きです。また、複数人で1つのアプリケーションを開発できない点からも複雑な実装は不向きといえます。
・不特定多数のユーザーによる運用
→アプリケーションは組織内のユーザーで運用する前提になっています。組織外のメンバーにアクセス権を付与して利用してもらうことも可能ですが、セキュリティ上のリスクを考えると推奨されません。また、利用ユーザーには有料のライセンスを割り当てる必要があるため、費用面を考えても不特定多数のユーザーが利用する運用は避けたほうがよいです。
Power Automate
業務プロセスを自動で実行するフローを作成するプラットフォームです。
こちらもPower Apps同様、ローコード・ノーコードで作成が可能であり、様々なサービスと接続して使用することができます。
例)メールを受信した際に添付ファイルがあったら、指定のクラウドストレージサービスに格納する
【できること】
・簡単な自動化フローの作成
→コードの組み込みをせずに、トリガー(どういう条件で開始するか)とアクション(どのような処理を行うか)を順番に配置し、必要な値を設定していくことで自動化フローを作成します。また、多数のテンプレートが用意されており、単純な作業であればテンプレートの選択と設定値の入力のみで作成することも可能です。
・様々なサービスとの連携
→Microsoft社製品をはじめ、様々なアプリケーションとの連携が可能です。1つのフローで複数のアプリケーションと連携することもできます。
【向いていないこと】
・ブラウザやデスクトップへの操作
→アプリケーションとの連携はできますが、ブラウザに対しての操作や、アプリケーションにおいてもデスクトップ上での操作はできません。
(類似のPower Automate Desktopというサービスでは可能ですが、そちらはアプリケーションとの連携が比較的充実していません)
Power Pages
ローコード・ノーコードでWeb サイトを簡単・迅速に設計、構成、公開できます。
テンプレートを選択して編集画面で必要なコンポーネントを選択、配置することで、コードを1行も書かずに完成させることも可能です。
反対に、JavaScriptやLiquidなどの言語やWebAPIとの連携を用いて、より高度な機能を有したWebサイトを作成することも可能です。
【できること】
・簡単なWebサイトの作成
→テンプレートを選択し、Webページ上にパーツを配置するような感覚でサイトを作成していくことが可能です。
・不特定多数のユーザーが使用するページの作成
→公開されるWebサイトを作成するため、不特定多数のユーザーが利用可能です。また、特定のユーザーのみがアクセスできるよう、ページごとにアクセスの制御をすることも可能です。
【向いていないこと】
・複雑な機能を備えたWebサイトの作成
→簡単な構成のページを作成することに向いている反面、複雑な機能やデザインを実装することには向いていません。作成したページにコーディングを施してカスタマイズすることが可能ですが、機能やデザインを求めすぎると必要なコードも増え、Power Pagesを使用している意味がなくなってしまいます。
Power BI
様々なデータソースで蓄積したデータの統合・分析および図表を用いたそれらの可視化を簡単に行うことができるサービスです。
また、傾向や予測を行うことも可能で、事業部門のユーザーが自らの部門でデータ解析を行えるようになることが期待できます。
※この後の導入事例の中には登場しません。
【できること】
・様々なデータベース、ファイルなどからデータを取得できる
→SQL Server、MySQLなどのデータベース、.xlsx形式や.JSON形式などのファイル、Active Directory、Salesforceなどのサービス、他にもWebページ内のテーブルなど、様々なデータを取り込むことが可能です。
・コーディングなしでデータの分析ができる
→Power BIではプログラミングや複雑なツールの設定をせずにデータの分析・可視化を行うことが可能です。
Power Virtual Agents
自然言語処理や機械学習などの知識を保持せずに、チャットボット(自動で会話を行うプログラム)を作成できるサービスです。
また、会話だけでなく、会話をトリガーとしてデータの取得やアプリケーション・サービスの自動操作を行うことも可能です。
※この後の導入事例の中には登場しません。
【できること】
・自動対話を行うチャットボットを直感的に作成
→キーフレーズの設定や、対話の流れなどをフロー上に組み込んでいき、直感的にチャットボットを作成することが可能です。
2. 導入事例その1
ここからは実際にPower Platformに含まれる複数のサービスを組み合わせて導入した実例を紹介します。
【対象案件】求人サービスの構築
【対象業務】ユーザーデータ登録
【業務概要】サービスの利用ユーザーに必要情報を登録してもらい、運営者側で内容の確認を行う。確認後、ユーザーに確認結果を通知し、問題があれば修正を依頼する。
①利用者の情報登録(Power Pages・Dataverse)
まずは利用者がPower Pagesで作成したサイトにアクセスし、
・アカウント登録
・ユーザー情報登録
を行います。
登録されたユーザー情報はDataverseに追加されます。
また、アカウント登録ページで登録されたアカウントについてはAzureで管理を行っています。
このように他サービスと連携を行うことも可能です。
登録作業が完了すると、それをトリガーにPower Automateのフローが起動して確認担当者へ確認依頼を通知します。
②ユーザーが登録した内容の確認(Power Apps)
確認担当者は①の通知を受け取った後、内容の確認を行います。
内容の確認はPower Appsで作成したアプリケーション上で行います。
データの確認・更新を行うためのアプリケーションなので、「キャンバスアプリ」ではなく「モデル駆動型アプリ」を採用しています。
確認担当者のみが閲覧・操作できるアプリケーション上に、確認が必要なデータの一覧が表示されているので選択します。
すると選択したデータの詳細が表示されるので、担当者が内容の確認を行います。
データは利用者が①で登録したものをDataverseから参照しています。
確認が完了したら、確認結果の入力欄が存在しているので結果を入力してデータを更新します。
更新はDataverseに反映されます。
ユーザー情報登録は不特定多数の利用者が行うためPower Pagesで作成したWebページを採用しているのに対し、内容の確認は運営組織内で権限を割り当てて行うため、Power Appsで作成したアプリケーションを採用しています。
③確認結果の通知(Power Automate)
登録内容の確認結果が入力されると、Power Automateのフローが起動してユーザーへ確認結果を自動で通知します。
Power Automateは確認結果の登録がされることを起動条件としているため、確認担当者は自分の確認作業を行えば、通知はPower Automateのフローによって送られるようになっています。
通知の結果によって通知内容が変わり、問題がなければ確認がされた旨を、問題があれば修正依頼と問題個所が通知されます。
3. 導入事例その2
【対象案件】申請書の電子申請業務
【対象業務】申請業務
【業務概要】利用者が申請内容に応じた入力ページにて申請を行う。申請された内容を職員が確認し結果を通達する。
※導入事例1と業務の構成が似通っているため、業務フロー図は割愛しております。
①申請内容の記入(Power Pages・Power Automate)
Power Pagesで作成したWebサイト上に種別ごとに申請ページが存在しているため、利用者は申請したい内容に応じたページで内容入力を行い申請します。
申請されたデータはDataverseに追加されます。
その際、以前に記入した内容を転用したい場合は、前回の申請内容を記入するボタンを押すことで以前入力した内容の複製ができます。
自動入力は、ボタンを押すことで起動するPower AutomateのフローがDataverseからデータを持ってきて行っています。
②申請した内容を職員が確認(Power Apps)
申請された内容を職員が確認します。
確認するデータは①で登録したものをDataverseから参照し、Power Appsで作成したアプリケーション上で表示されます。
データの確認・更新を行うためのアプリケーションなので、「キャンバスアプリ」ではなく「モデル駆動型アプリ」を採用しています。
アプリケーションはそれぞれの担当職員のみが確認できる制御を設定しています。
確認が完了したら結果を記入してデータを更新します。
更新はDataverseに反映されます。
③申請結果の通知(Power Automate)
申請結果が入力されると、Power Automateのフローが起動して申請者へ確認結果を通知します。
このフローは確認結果の入力がされること(正確には確認結果入力によりデータが特定の状態になること)を起動条件としています。
通知の結果によって通知内容が変わり、問題がなければ承認された旨を、問題があれば修正依頼と問題個所が通知されます。
導入事例2は導入事例1と類似の業務手順が多く存在していました。
このように導入済み事例に類似業務が存在している場合は、導入済み事例のソースを転用してより迅速な展開が可能になります。
おわりに
ここまでお読みいただきありがとうございます。
Power Platformを用いてどのようなことができるか、少しでもイメージを付けていただけましたら幸いです。
弊社のRPAコラムではPower Platformに関連した記事を数多く公開しておりますので、興味を持たれた方はぜひ他の記事もご覧ください。
また、弊社にはPower Platformをはじめ多くのソリューションに精通したコンサルタント・エンジニアが在籍しており、お客様のご要望に即したソリューションの選定から開発・運用まで一気通貫でご提供しております。
業務改善・業務効率化についてご興味がございましたら、こちらからぜひお問い合わせくださいませ。
最新情報をお届けします!
RPAに関する最新コラムやイベント情報をメールで配信中です。
RPA領域でお仕事されている方に役立つナレッジになりますので、ぜび登録してください!
- December 2024 (1)
- November 2024 (2)
- October 2024 (3)
- September 2024 (2)
- August 2024 (4)
- July 2024 (1)
- June 2024 (2)
- May 2024 (3)
- April 2024 (1)
- March 2024 (1)
- February 2024 (1)
- January 2024 (1)