OData v4 データ プロバイダーの構成、要件、ベスト プラクティス
このトピックは、Dynamics 365 Customer Engagement (on-premises) に適用されます。 このトピックの Power Apps バージョンについては、以下を参照してください。 OData v4 データ プロバイダーの構成
このトピックでは、OData v4 データ プロバイダーの構成方法、および OData v4 データ プロバイダーを使用して OData v4 Webサービスに接続するための要件と推奨されるベスト プラクティスについて説明します。
OData v4 データ プロバイダー ベスト プラクティス
インスタンスでは、すべてのエンティティに ID 属性が必要です。 この ID は、一意の識別子として知られ、値を guid にする必要があります。 ID フィールドは、EDM.Guid データ型の外部フィールドにのみマップできます。 EDM.Int32 データ型を uniqueidentifer データ型フィールドのマップすることはできません。
NULL 値が許容されるプロパティを使用する OData エンティティは、仮想エンティティにマップされたフィールドに一致するよう設定する必要があります。 たとえば、Nullable=False の OData エンティティ プロパティは、フィールド要件属性のマップされたフィールドを必須項目に設定する必要があります。
グリッドにデータをロードするなど複数のクエリを取得する場合、クエリ パラメーターの選択とフィルターを使用して、外部データ ソースから返されるデータセットのサイズを制御します。
システム管理者は、既に有効にされていない場合はプラグイン トレースを有効にしてください。 有効にすると、OData エンドポイントからのすべてのエラーがプラグイン トレース ログでキャプチャされます。 詳細: [システム設定] ダイアログ ボックス - [カスタマイズ] タブ
データの種類のマッピング
次の表は、適切なデータ型での OData エンティティ データ モデル (EDM) データ型マッピングの一覧を示しています。
OData データ型 | [データの種類] |
---|---|
Edm.Boolean | 2 つのオプション |
Edm.DateTime | 日付と時間 |
Edm.DateTimeOffset | 日付と時間 |
Edm.Decimal | 少数または通貨 |
Edm.Double | 浮動小数点数 |
Edm.Guid | 一意識別子 |
Edm.Int32 | 整数 |
Edm.Int64 | 整数 |
Edm.String | 単一行のテキストまたは複数行のテキスト |
仮想エンティティのマップをサポートしない OData EDM データ型
Edm.Binary
Edm.Time
Edm.Float
Edm.Single
Edm.Int16
Edm.Byte
Edm.SByte
OData v4 データ プロバイダーを使用してデータ ソースを追加する
この手順では、仮想エンティティ データ ソースとして使用する標準の OData データ プロバイダーを使用する方法を示します。
設定>管理>仮想エンティティのデータ ソースの順に移動します。
[操作] ツール バーで、新規を選択します。
データ プロバイダーの選択ダイアログ ボックスで、次のデータ ソースから選択してから、OK を選択します。
OData v4 データ プロバイダー。 ユーザーの環境には、OData v4 オープン標準をサポートするデータ ソースへの接続に使用できる、Odata v4 データ プロバイダーが含まれています。
カスタム データ プロバイダー。 データ プロバイダー プラグインをインポートした場合は、データ プロバイダーはここに表示されます。 詳細: 仮想エンティティで開始
[新規データ ソースのプロパティ] ページで、以下のフィールドに入力してから、レコードを保存します。
名前. データ ソースを説明する名前を入力します。
URI。 OData データ プロバイダーを使用する場合、OData Web サービスの URI を入力します。 たとえば、OData プロバイダーを使用して Azure でホストされている Web サービスに接続する場合、URI は
https://contosodataservice.azurewebsites.net/odata/
のようになりますタイムアウト (秒)。 データ リクエストがタイムアウトする前に Web サービスからの応答を待機する時間を秒数で入力します。たとえば、タイムアウトが発生する前に最大 30 秒待つには、30 を入力します。
改ページ モード。 クエリの結果のページングを制御するために、クライアント側またはサーバー側のページングを使用するかどうかを選択します。 既定値は、クライアント側のページングです。 サーバー側のページングでは、クエリ文字列に追加される $skiptoken パラメーターを使用して結果のページングを制御します。 詳細情報: スキップ トークン システム クエリ オプション ($skiptoken)
- インライン カウントを返す。 結果セットの総レコード数を返します。 この設定は、グリッドにデータを返す際に次のページの機能を有効にするために使用します。 OData エンドポイントが OData $inclinecount パラメーターをサポートしない場合は false の値を使用します。 既定値は false です。
要求パラメーター。 必要に応じて、外部 Web サービスへの認証パラメーターなど、OData Web サービスへの接続に使用されるユーザー定義の見出しやクエリ文字列パラメーターを追加できます。 クエリ文字列選択すると、ヘッダーとクエリ文字列パラメーターおよび値との間で切り替わります。 最大 10 個のヘッダーまたはクエリ文字列を追加できます。
参照
外部データ ソースからのデータを格納する仮想エンティティの作成および編集
TechNet ブログ: 新しい仮想エンティティを使った外部システムからのデータとの対話