モデル駆動型アプリのコンポーネント
適切に設計されたモデル駆動型アプリは、いくつかのコンポーネントで構成されます。コンポーネントを使用して、最終的なアプリの外観と機能を構築できます。 作成者がアプリを作成するために使用するコンポーネントとコンポーネント プロパティは、アプリのメタデータと呼ばれるものになります。
前のユニットの概念を基に、これらの各コンポーネントがアプリ設計にどのように関連しているかをより深く理解するため、コンポーネントを次の 4 つのカテゴリに分類できます。
- データ
- ユーザー インターフェイス (UI)
- ロジック
- ビジュアル化コンポーネント
これらの各コンポーネントについて詳しく見てみましょう。
データ コンポーネント
データ コンポーネントは、アプリケーションでデータを管理するために使用される要素を指します。 データ コンポーネントは、それに続く他のすべての項目に影響を与えるため、重要です。
テーブル
Microsoft Dataverse では、テーブルに、取引先担当者テーブルや取引先企業テーブルなど、追跡するプロパティを持つレコードが含まれています。 Excel のワークシートを考えてみましょう。行はレコードを表します。 Dataverse では多くの標準テーブルが使用可能であり、多くのテーブル (システム標準以外のテーブル) はカスタマイズできます。 また、カスタム テーブルを一から作成することもできます。
列
列は、テーブルに関連付けられているプロパティです。 たとえば、取引先担当者テーブルでは、メール アドレスが列になります。 取引先担当者テーブルの各レコード (行) では、メール列に独自のエントリを含めることができます。 各列には定義されたデータ型 (テキスト、数値、日付と時刻、通貨、参照など) があります。 書式設定オプションはデータ型によって異なります。 たとえば、メール列では、メール形式のテキスト データ型が使用され、アプリ内でクリック可能になります。 通常、列はフォーム、ビュー、検索で使用されます。
リレーションシップ
テーブル リレーションシップによって、テーブルを互いに関連付ける方法が定義されます。 Dataverse で操作する主な 2 つのリレーションシップは次のとおりです。
- 1:N (1 対多)
- N:N (多対多)
1 対多のリレーションシップとは、主テーブル内の 1 つのレコードを子テーブル内の複数のレコードに関連付けることができることを意味します。 たとえば、不動産物件テーブルについて考えてみましょう。 各物件は、複数の潜在顧客に見せる可能性があります。 各内見は、内見テーブルに格納されます。 物件リストから、関連付けられたすべての物件を表示できます。 テーブルにルックアップ列を追加すると、2 つのテーブルの間に新しい 1:N のリレーションシップが作成され、その列 ("ルックアップ" 列) で情報を参照することができます。
多対多のリレーションシップでは、1 つのテーブル内の複数のレコードが別のテーブル内の複数のレコードに関連付けられます。たとえば、クラスのテーブルと生徒のテーブルについて想像してみましょう。 生徒 1 人が複数のクラスを受講でき、各クラスには複数の生徒が参加できます。 その場合のクラスと生徒のテーブルのリレーションシップは多対多になります。
選択肢列
選択列は、あらかじめ決定された一連のオプション (ドロップダウン メニューなどです) をアプリ ユーザーに提供する特別な種類の列です。 各オプションには値とラベルがシステムで割り当てられます。 フォームに追加すると、この列にはユーザーがオプションを選択できるコントロールが表示されます。
UI コンポーネント
アプリケーションを構築する際は、UI コンポーネントを使用して、ユーザーがアプリとどのように対話するかを決定します。 たとえば、ユーザーがアプリ内の物件一覧ページに移動したとき、物件一覧がどのように表示されるかを定義できます。
主な UI 要素は次のとおりです。
- アプリ: アプリにはコンポーネント、プロパティ、クライアント タイプ、URL など、アプリの基本的な設定が含まれます。
- サイト マップ: サイト マップではアプリのナビゲーションを設定します。
- フォーム: フォームには、特定のテーブルにデータを入力する複数の列を定義します。 たとえば、ユーザーが関連情報を入力して顧客の注文を追跡するフォームを作成できます。 ユーザーがフォームに入力した情報によって、そのテーブルの行および列への入力が行われます。
- ビュー: ビューでは、特定のテーブルのレコードの一覧がアプリで表示される方法が定義されます。 ビューによって、表示される列、各列の幅、並べ替えの動作、既定のフィルター処理が定義されます。
- カスタム ページ: このページは、より柔軟なレイアウト、ローコード Fx 関数、および Power Apps コネクタ データを可能にする、特殊なキャンバス アプリ ベースのページです。
ロジック コンポーネント
これらのコンポーネントによって、アプリに含まれるビジネス プロセス、ルール、オートメーションが決定されます。 Power Apps の作成者は、プロセスまたはルールの種類に固有のデザイナーを使用します。 一部のコンポーネントは、モデル駆動型アプリケーションの外部に構築される場合があります。
一般的なロジックの種類は次のとおりです。
- ビジネス プロセス フロー: ユーザーが標準のビジネス プロセスをステップ バイ ステップで進むオンライン プロセスです。 たとえば、誰でも同じ方法で顧客サービス要求を処理できるようにしたり、受注を送信する前に請求書の承認を受けることをスタッフに求めるために、ビジネス プロセス フローを使用します。
- ビジネス ルール: 列に要件 (列にデータが必要かどうかなど) を設定する、列を非表示にする、データを検証するなどのロジックを、フォームに適用するために使用されます。 アプリ デザイナーでは、シンプルなインターフェイスでルールの変更にすばやく対応したり、よく使用するルールを管理したりできます。
- Power Automate フロー: アプリやサービスの間のワークフローを自動化し、通知の受信、ファイルの同期、データの収集などを可能にするクラウド ベースのサービス。
ビジュアル化
モデル駆動型アプリケーションに必要な最後の要素はビジュアル化です。 ビジュアル化は、アプリケーションの情報を表示するために使用します。 アプリに必要なデータのビジュアル化とレポートの種類を決定する際には、よく検討する必要があります。
モデル駆動型アプリケーションで使用される一般的なビジュアル化は次のとおりです。
- グラフ: ビュー内、フォーム上に表示するか、ダッシュボードに追加できる 1 つのグラフィカルなビジュアル化 (棒グラフや円グラフなど)。
- ダッシュボード: アクションにつながるビジネス データの概要を提供する 1 つ以上のグラフィカルなビジュアル化のパレットです。
- 埋め込み Power BI: 埋め込み型の Power BI タイルとダッシュボードをアプリに追加できます。 Power BI は、ビジネス インテリジェンスの分析情報を提供するクラウドベースのサービスです。