はじめに
Microsoft Teams と連携して業務効率化を図るとき、Power Apps は、コードを書かずに、直感的な操作で業務に特化したアプリを開発できる強力なツールです。
Power Apps でアプリを開発する上で、データソースの選択は非常に重要です。今回は、Teams と連携し、Power Apps でよく利用されるデータソースである Dataverse for Teams(以下、Dataverse)とSharePointリストを比較し、アプリ開発に最適なデータソースを選ぶためのヒントを紹介します。
例えば、専門の相談機関で利用者情報を一元管理し、相談内容をチーム内で共有したいとしましょう。 このような場合、どのデータソースを選ぶべきでしょうか?この記事では、このような具体的なケースを踏まえ、それぞれのデータソースの特徴やメリット・デメリットを詳しく解説していきます。
利用者情報を安全かつ効率的に管理することは、多くの企業や施設にとって重要な課題です。Power Apps は、ローコードでカスタムアプリを開発できるため、利用者の情報管理システムの構築に最適なツールです。本記事では、Power Apps で利用者相談情報管理アプリを開発する際に、Dataverse と SharePointリストという2つの主要なデータソースを比較し、それぞれのメリット・デメリット、そして最適な使い分けについて紹介します。
なお、この記事は、Power Apps を起動してアプリを作成し、スクリーン上にコントロールを配置するなど、ある程度Power Apps の基本操作ができる方を対象にしています。Power Apps の基本操作から学びたい方は、別途関連サイトや書籍を参考にしていただくことをおすすめします。
Power Apps が動作する環境:Microsoft 365
Power Apps は、Microsoft365 というクラウドサービスの一部です。Microsoft 365 は、Word、Excel、PowerPoint などのOffice アプリに加え、OneDrive、Teams など、ビジネスに必要な様々なツールが統合されたサービスです。Power Apps は、これらのツールと連携することで、より高度なビジネスアプリケーションを構築することができます。
本記事では、Teams で提供されるPower Apps を利用して、チームで共有するアプリを開発することを想定します。Teams とPower Apps を連携させることで、以下のようなメリットが得られます。
- チーム内での情報共有の円滑化:同じアプリを共有し、データを効率的に管理・共有。
- 業務プロセスの自動化:承認フローやデータ入力の自動化など、ルーティンワークを効率化。
- モバイル環境での利用:Teams モバイルアプリから、いつでもどこでもアクセス可能。
Microsoft365 のプランには家庭向け、一般法人向け、大企業向け、教育機関向けがあり、Teams が使えるプランの詳細は、公式サイトなどを参照してください。
Dataverse:柔軟なデータ管理を実現
Dataverse は、Teams と深く連携し、データモデルを柔軟に構築できるデータベースです。Power Apps との連携もスムーズに行え、チーム内のデータ共有に最適です。
メリット
- Teams とのシームレスな連携:Teams のメンバーシップに基づいてアクセス権が自動的に設定されます。
- ローコードで柔軟なデータモデルを作成可能:カスタムオブジェクトやリレーションシップを自由に定義できます。
- Power Apps との連携が簡単:Power Apps から簡単にデータにアクセスし、操作できます。
- アクセス許可の柔軟な設定:フィールドレベルのセキュリティやユーザーごとのアクセス権設定が可能で、細かいアクセス制御ができます。
デメリット
- 容量制限:1環境あたり、2GBまたは100万行のデータまで格納可能です。大規模なデータには不向きな場合があります。
SharePointリスト: Excel のようなデータ管理
SharePointリストは、SharePoint Online 上に作成できる表形式のデータストアです。Excel のような感覚でデータを入力・管理できるため、直感的に操作できます。
メリット
- シンプルなデータ構造:表形式でデータを管理できるため、直感的に理解できます。
- Excel との親和性が高い:Excel のデータをインポート・エクスポートできます。
- 基本的な機能が豊富:リストのビュー、フィルター、ソートなどの基本的な機能が豊富です。
- 大規模なデータに対応:大量のデータを格納できます。
- Teams のセキュリティ機能を活用: Teams のセキュリティ設定が適用されるため、データの安全性が高いです。
デメリット
- データモデルの柔軟性が制限される:カスタムオブジェクトの作成や複雑なリレーションシップの定義は難しい場合があります。
- Teams との連携が限定的:Teams との連携は、主にデータの共有に限定されます。
Dataverse と SharePointリストの比較
項目 | Dataverse for Teams | SharePointリスト |
---|---|---|
目的 | 個人情報を含む詳細なデータの管理、複雑なビジネスロジックの実装 | シンプルなデータの共有、Excel のような操作性 |
セキュリティ | Teams のセキュリティ機能を継承、きめ細かいアクセス権設定が可能 | SharePoint の権限設定による管理 |
データモデル | 柔軟なデータモデルを構築可能 | 比較的シンプルなデータ構造 |
連携 | Teams との連携がシームレス、Power Automate との連携が強力 | SharePoint との連携がスムーズ、Excel との親和性が高い |
容量 | 2GBまたは100万行の制限 | ライセンスプランによって異なる |
データソース選択の具体例:利用者情報管理アプリ
例えば、相談機関の利用者情報を管理するアプリでは、利用者の基本情報と個人情報を含む詳細な相談内容の2つの側面を考慮する必要があります。Dataverse と SharePointリストを使い分けることで、セキュリティと効率を両立させることができます。
個人情報と相談内容の管理
利用者の個人情報やセンシティブな相談内容は、Dataverse で管理するのが適切です。Dataverse はセキュリティロールを用いて、サインインユーザーごとにレコードのアクセス権を設定できるため、担当する利用者の情報のみを編集・閲覧できます。これにより、個人情報を保護し、情報漏洩のリスクを最小限に抑えられます。ただし、Dataverse は容量が限られているため、すべての情報を Dataverse に保存するのではなく、容量が大きくなる基本情報などは他のデータソースを検討する必要があります。
利用者の基本情報とチーム全体での共有
利用者の基本情報(名前、連絡先など)は、SharePointリストが適しています。SharePointリストは、チーム全体で情報を共有しやすく、ユーザーが手軽にアクセスできる特徴があります。また、容量が大きくなる情報を管理するのにも適しています。
ユーザーアカウントとアクセス制御
アプリ内でサインイン中のユーザーアカウントを取得し、それをレコードに記録することで、疑似的にユーザーごとのアクセス制御を実現できます。これにより、登録されたユーザーだけがデータを管理・閲覧・編集できるアプリを構築可能です。ただし、SharePointリストはチーム全体で共有されるため、アプリ外からもデータにアクセスされる可能性があります。個人情報やセンシティブなデータを扱う際は、Dataverse の利用を検討すべきです。
Dataverse と SharePointリストの連携
Dataverse と SharePointリストを連携させることで、両者の長所を活かした情報管理が可能です。例えば、利用者の詳細な相談内容は Dataverseで、基本情報は SharePointリストで管理することで、データの整合性を保ちながら効率的に業務を進められます。Power Automate を使って、SharePointリストの情報を Dataverse に同期させることで、データの一貫性を維持できます。
スタッフ間の情報共有とフラグ設定
利用者の相談内容のうち、スタッフ間で共有すべき情報には共有フラグを設定し、スタッフ全員がその情報を閲覧できるようにしたいケースがあります。相談担当スタッフがアプリで情報を記録する際、この情報を共有するか否かのフラグを設定し、他のスタッフと共有するかどうかを選択できるようにします。
このように、情報を適切に分類しアクセス制御を行うことで、業務の効率化と情報のセキュリティを両立させることができます。具体的には、Dataverse 内にアクセス許可を設定するテーブルと設定しないテーブルを用意し、フラグの有無によって書き込むデータソースを選択する方法が考えられます。
まとめ
Teams と連携したPower Apps 開発において、データソースの選択は、アプリの機能や使い勝手、そしてチーム全体の生産性に大きな影響を与えます。
Dataverse は、Teams とのシームレスな連携と柔軟なデータモデルが魅力です。一方、SharePointリストは、シンプルで直感的な操作が可能です。
個人情報を管理する際は、Dataverse と SharePointリストをうまく使い分けることで、セキュリティと共有をバランスよく保つことができます。秘匿すべき個人情報については Dataverse を活用し、チーム全体で共有すべき基本情報は SharePointリストで効率よく管理することで、業務の円滑化と情報セキュリティの確保が実現できます。
本記事では、Dataverse と SharePointリストに焦点を当てましたが、Excel Online、SQL Server など他にもさまざまなデータソースを Power Apps で利用できます。
ご自身の要件に合わせて、最適なデータソースを選択し、Power Apps で効率的なアプリ開発を行ってください。