仮想テーブルは、外部データ ソースからのデータを含む列を含む Microsoft Dataverse のカスタム テーブルです。 仮想テーブルは、通常のテーブル レコードとしてユーザーに表示されますが、Azure SQL Database などの外部データベースから取得されたデータが含まれています。 仮想テーブルに基づく行は、Dataverse Web サービスを使用して開発されたカスタム クライアントを含むすべてのクライアントで使用できます。
以前は、異種のデータ ソースを統合するには、データの移行またはユーザー定義のプラグインの開発のために、サーバー側またはクライアント側のいずれかに、コネクタを作成する必要がありました。 ただし、仮想テーブルでは、実行時に外部データ ソースに直接接続して、外部データ ソースの特定のデータを環境で使用できるようにし、データ レプリケーションを必要としません。
仮想テーブルは、 データ プロバイダー、データソース 行、 仮想テーブルの 3 つの主要コンポーネントで構成されます。 データ プロバイダーは、プラグインとデータ ソース テーブルで構成されます。 データ ソースは Dataverse のテーブル行であり、接続パラメーターのスキーマを表すメタデータが含まれます。 各仮想テーブルは、テーブル定義内のデータ ソースを参照します。
Dataverse には、OData データと、SQL Server、SharePoint、Fabric などの他のいくつかの仮想コネクタ プロバイダーが含まれており、これを使用して共通の外部データ ソースを接続できます。 詳細情報: OData v4 データ プロバイダーの構成、要件、ベスト プラクティス、および仮想コネクタ プロバイダーを使用した仮想テーブルの作成
また、開発者は、独自のデータ プロバイダーを作成できます。 データ プロバイダーは、環境にソリューションとしてインストールされます。 詳細情報: 開発者向けドキュメント: 仮想テーブルの概要
仮想テーブルの利点
- 開発者は、Dataverse Web サービスとプラグイン登録ツールを使用して、外部データの読み取り、更新、または削除を行うプラグインを実装できます。
- システム カスタマイザーは、Power Apps (make.powerapps.com) を使用して、コードを記述せずに外部データにアクセスするために使用される仮想テーブルを作成します。
- エンド ユーザーは、仮想テーブルによって作成された行を操作して、列、グリッド、検索結果、および XML ベースのレポートとダッシュボードのフェッチでデータを表示します。
仮想テーブルに使用するデータ ソースを追加する
開発者は、仮想テーブルのデータ プロバイダーとして使用するカスタム プラグインを作成します。 または、使用可能なプロバイダーのいずれかを使用できます。 詳細情報: 仮想コネクタ プロバイダーと OData v4 データ プロバイダーの構成、要件、ベスト プラクティスを使用して仮想テーブルを作成する
Power Apps にサインインし、 設定>Advanced 設定を選択します。
[ 管理>仮想エンティティ データ ソース] を選択します。
コマンド バーで、新規を選択します。
[ データ プロバイダーの選択 ] ダイアログ ボックスで、次のデータ ソースから選択し、[ OK] を選択します。
データ プロバイダー Description カスタム データ プロバイダー データ プロバイダー プラグインをインポートした場合は、データ プロバイダーはここに表示されます。 詳細情報 開発者向けドキュメント: 仮想テーブルの始め方 OData v4 データ プロバイダー Dataverse には、OData v4 Web サービスで使用できる OData データ プロバイダーが含まれています。 詳細情報 OData v4 データ プロバイダーの構成、要件、ベスト プラクティス
セキュリティで保護された列をデータ ソースに追加する
データ ソースの列は、他のテーブルと同じ方法で作成します。 暗号化または機密データの場合は、データ ソースのカスタム列で データ ソース シークレット 属性を有効にします。 たとえば、データベース接続文字列を含む列をセキュリティで保護します。
注
データ ソース シークレット属性は、データ ソース フォームに追加された列でのみ使用できます。
仮想テーブルを作成する
Dataverse の他のテーブルと同様に、仮想テーブルを作成します。ここに説明する属性をいくつか追加します。
ソリューションを開く
作成する仮想テーブルの名前の一部は、カスタマイズ プレフィックスです。 これは、作業中のソリューションの発行者に基づいて設定されます。 カスタマイズ プレフィックスにこだわりがある場合は、そのプレフィックスが仮想テーブルに適しているアンマネージド ソリューションで作業していることを確認してください。 詳細情報: ソリューションの発行元プレフィックスを変更する
アンマネージド ソリューションを開く
Power Apps で、左側のナビゲーション ウィンドウから [ソリューション] を選択し、ツール バーの [クラシックに切り替える] を選択します。 項目がサイド パネル ウィンドウに表示されない場合は、…さらに表示 を選択して、目的の項目を選択します。
[ すべてのソリューション ] の一覧で、目的のアンマネージド ソリューションを開きます。
仮想テーブルを作成する
- Power Apps (make.powerapps.com) で、新しいテーブルを作成します。 これを行うには、左側のナビゲーション ウィンドウで [テーブル ] を選択し、[ 新規>Table>Virtual テーブル] を選択します。
- コネクタを選択し、画面の指示に従って仮想テーブルを作成します。 詳細情報: 仮想コネクタ プロバイダーと OData v4 データ プロバイダーの構成、要件、ベスト プラクティスを使用して仮想テーブルを作成する
Important
Access Teams、キュー、クイック作成などのいくつかのオプションは、仮想テーブルでは使用できません。 詳細情報: 仮想テーブルを使用する場合の考慮事項
仮想テーブルを使用する場合の考慮事項
仮想テーブルには、これらの制限があります。
- 既存のテーブルを仮想テーブルに変換することはできません。
- 既定では、仮想テーブルには Name 列と Id 列のみが含まれます。 その他のシステム管理列 ([状態] や [作成日]/[変更日] など) はサポートされていません。
- 仮想テーブルでは、Currency、Image、または Customer データ型のカスタム列はサポートされていません。
- 仮想テーブルは監査をサポートしていません。
- 仮想テーブル列は、ロールアップまたは計算列では使用できません。
- 仮想テーブルをテーブルのアクティビティの種類にすることはできません。
- ダッシュボードとグラフは、仮想テーブルではサポートされていません。
- テーブル テーブルの行に影響する多くの機能は、仮想テーブルでは有効にできません。 たとえば、キュー、ナレッジ管理、SLA、重複検出、変更追跡、モバイル オフライン機能、列セキュリティ、Dataverse 検索、Power Pages ソリューションなどがあります。
- 仮想テーブルは組織が所有しており、行レベルの Dataverse セキュリティの概念はサポートされていません。 外部データ ソースには独自のセキュリティ モデルを実装することをお勧めします。
- 更新時に検証される列メタデータ プロパティは、仮想テーブルには適用されません。 たとえば、仮想テーブル列の整数列は、最小値が 0 に設定されている場合があります。 ただし、値は外部データ ソースから取得されるため、仮想テーブルから取得すると、クエリは 0 未満の値を返します。 クエリでは最小値のプロパティは示唆されていません。 0を超える値が望ましい場合は、値をそのようにフィルター処理する必要があります。
- 仮想テーブルは変更の追跡をサポートせず、Data Export Service や Azure Synapse Link for Dataverse などの Dataverse 機能を使用して同期することはできません。
- 含まれている OData v4 データ プロバイダーを使用する仮想テーブルは、送信ポート 443 で有効になります。
- ビジネス プロセス フローは、仮想テーブルではサポートされていません。 詳細: ユーザーがビジネス プロセス フローをアクティブ化したときに予期しないエラーが発生しました
ユーザーがビジネス プロセス フローをアクティブ化したときに予期しないエラーが発生しました
ユーザーがビジネス プロセス フローをアクティブ化しようとすると、「予期しないエラー」メッセージが表示される場合があります。 ログ ファイルを表示すると、次のログ エントリが表示されます。
ErrorCode: 0x80040216 メッセージ: System.Web.HttpUnhandledException: タイプ 'System.Web.HttpUnhandledException' の例外がスローされました。 ---> Microsoft.Crm.CrmException: ビジネス プロセス フローを仮想エンティティに対して有効にできません
この問題は、仮想テーブルが業務プロセス フローをサポートしていないために発生します。
こちらも参照ください
仮想コネクタ プロバイダーを使用して仮想テーブルを作成します
OData v4 データ プロバイダーの要件とベスト プラクティス
テーブルの作成と編集
Power Pages で仮想テーブルを構成する