次の方法で共有


仮想テーブルに関する入門情報 (エンティティ)

仮想テーブル仮想エンティティ とも呼ばれ、外部システムにあるデータとの統合を可能にします Microsoft Dataverse。 この統合により、データの複製やカスタム コーディングなしで、外部データが Dataverse のテーブルとしてシームレスに表現されます。

仮想テーブルは、カスタマイズされたコードが必要で、多くの制限があった、外部データを統合するための従来のクライアント側およびサーバー側のアプローチに代わるものです。 これらの制限には、不完全な統合、データの重複、または開発リソースの広範な投入が含まれます。 さらに、管理者およびシステム カスタマイザーにとって、仮想テーブルの使用により管理および構成が大幅に単純化されます。

注意

このセクションでは、開発者にとっての仮想テーブルの意味について説明します。 ユーザー インターフェイスから仮想テーブルを管理する方法の詳細については、外部データ ソースからのデータを格納する仮想テーブルの作成および編集 を参照してください。

仮想テーブル、データプロバイダー、データソース

仮想テーブル には、データベース内のレコード保存用に関連付けられた物理テーブルのないテーブルの定義が含まれます。 Dataverse Dataverse 実行時にレコードが必要な場合、その状態は関連付けられている外部システムから動的に取得されます。 各仮想テーブルの種類は、 仮想テーブルのデータ プロバイダー および (オプションで) 関連付けられた 仮想テーブルのデータ ソース からの何らかの構成情報に関連付けられます。

次のデータ プロバイダーは Dataverse に付属します。

  • OData v4 プロバイダーがサービスに含まれており、既定でインストールされます。 このプロバイダーは、作成、読み取り (取得、複数取得)、更新、削除 (CRUD) 操作をサポートします。
  • Azure Cosmos DB (以前の Microsoft ドキュメント DB) プロバイダーは AppSource から入手できます。

外部の データ ソース 用の データ プロバイダー が見つからない場合は、 カスタム 仮想テーブル データ プロバイダー を開発できます。 詳細情報: 仮想テーブル データプロバイダー

カスタム仮想テーブルのデータ プロバイダーで完全な CRUD 操作がサポートされるようになりました。 開発者は、仮想テーブル をサポートする各CRUD操作に対してプラグインを実装し、プラグイン登録ツールを使用して登録できます。

仮想テーブルの作成およびマッピング

最初は、仮想テーブル を定義することは、カスタム テーブルを定義することと同じです。 新しい 仮想テーブル タイプのテーブル、列、および リレーションシップ を指定します。 次に、仮想テーブル を データ プロバイダー に 接続 して、データ操作を管理します。

ユーザー定義テーブルの種類と列は、外部データ ソースの対応するデータにマップする必要があります。 たとえば、仮想テーブルは外部リレーショナル データベースの行として表現され、それぞれの列はその行の列に対応する場合があります。 これらの外部データ名は、対応する 仮想テーブル 名とは異なる場合があります。 エンティティIDフィールドには特定の必須の マッピング が発生します。データ プロバイダー はこのGUIDを提供し、このレコードを表す外部レコードに関連付けることができる必要があります。 この結果を達成する最も直接的な方法は、実際に外部の データ ソース でGUIDを主キーとして使用することです。

この例では、外部データベースにユーザー情報と接続情報を提供するために、対応する仮想テーブルのデータ ソースも提供されます。

仮想テーブルの制限

考慮すべき仮想テーブルの制限は次のとおりです。

  • 組織が所有するテーブルのみサポートされます。 ユーザー所有のテーブルに適用されるセキュリティ フィルタリングはサポートされていません。 個々のユーザーの仮想テーブル データへのアクセスは、セキュリティ ロールに基づいて有効または無効を切り替えることができます。 フィールドレベルのセキュリティはサポートされていません。
  • Dataverseテーブルとして外部データをモデル化することが可能で ある必要があります。 つまり、次のようになります。
    • 外部データ ソースのすべてのテーブルは、関連付けられた GUID 主キーが必要です。
    • すべてのテーブルのプロパティは、Dataverse テーブルの列として表現する必要があります。 テキスト、数値、選択肢、日付、画像、および検索を表す単純型を使用できます。
    • Dataverse ですべてのテーブルの関係性をモデル化できる必要があります。
    • 仮想テーブル の列は計算またはロールアップできません。  目的の計算は、場合によってはデータ プロバイダー内か、またはデータ プロバイダーによって指示されて、外部側で行われる必要があります。
    • 仮想テーブル 列を グリッド またはその他のUIビューのルックアップとして追加することはできますが、この 仮想テーブル ルックアップ列に基づいてフィルタリングまたは並べ替えを行うことはできません。
  • 監査はサポートされていません。
  • 仮想テーブルではデータが保持されないため、検索機能はサポートされません。
  • 仮想テーブルではチャートとダッシュボードはサポートされていません。
  • キューに対して仮想テーブルを有効にすることはできません。
  • 仮想テーブルでは値のオフライン キャッシュはサポートされていません。
  • 仮想テーブル はアクティビティを表すことができず、ビジネス プロセス フローをサポートしません。
  • 仮想テーブル は、一度作成すると、標準 (非仮想) テーブルに変更することはできません。 逆もまた真なりですが、標準テーブルは 仮想テーブル に変換できません。
  • RetrieveおよびRetrieveMultipleクエリで属性を選択しても、すべての属性が返されるため適用されません。

これらの制限が Dataverse API に反映される方法の詳細ついては、仮想テーブルの API に関する考慮事項を参照してください。

関連項目

OData v4 データ プロバイダーを使用してテーブル チュートリアルを仮想
仮想テーブルの API に関する考慮事項
カスタム仮想テーブル データ プロバイダー
サンプル: 汎用仮想テーブル データ プロバイダー プラグイン

注意

ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)

この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。