データ エンティティの概要

この記事は、データ エンティティを定義し、その概要について説明します。 これには、データ エンティティの機能、サポートされるシナリオ、およびそれらに使用されるカテゴリ、作成するメソッドに関する情報が含まれています。

概要

データ エンティティはデータベース テーブルの物理的な実装から抽象化したものです。 たとえば、正規化テーブルでは、各顧客の大量データが顧客テーブルに格納されており、残りは小さな一連の関連テーブル間で拡大している可能性があります。 この場合、顧客概念のデータ エンティティは非正規化ビューとして表示され、各行に顧客テーブルと関連するテーブルからのすべてのデータが含まれています。 データ エンティティは、開発と統合を簡単にする形式に、ビジネス コンセプトをカプセル化します。 データ エンティティには、抽象化された性質があるため、アプリケーションの開発とカスタマイズを簡略化できます。 その後、抽象化によってアプリケーション コードもバージョン間の物理テーブルの避けられないチャーンから隔離されます。 集計する: データ エンティティは重要なデータの概念および機能を表すための基礎となるテーブル スキーマの抽象化およびカプセル化 (非正規化ビュー) の概念を提供します。

処理能力

データ エンティティには次の機能があります。

  • AXD、データのインポート/エクスポート フレームワーク (DIXF) エンティティ、1 つの概念を持つ集計クエリの分岐して細分化された概念を置き換えます。
  • ビジネス ロジックをキャプチャして、インポート/エクスポート、統合、およびプログラマビリティなどのシナリオを有効にする 1 つのスタックを提供します。
  • これは、Application Lifecycle Management (ALM) およびデモ データ シナリオに関するデータ パッケージのエクスポートおよびインポートの主要なメカニズムとなります。
  • OData サービスとして公開して、表スタイルの同期統合シナリオと Microsoft Office 統合で使用できます。

データ エンティティ アーキテクチャ。

エンティティの例

コンシューマーは、顧客オブジェクトに関連付けられているデータにアクセスしようとしていますが、このデータは DirParty、CustTable、LogisticPostalAddress、LogisticElectronicAddress などの複数の正規化テーブルに分散されています。 したがって、顧客データを読み書きするプロセスは非常に手間がかかります。 代わりに、次の顧客エンティティは、1 つの非正規化ビューに基になる物理スキーマ全体をカプセル化するように設計できます。 これにより、より簡単な読み取り/書き込み操作が可能になり、テーブル間の内部相互作用の抽象化も可能になります。

非正規化テーブル。

正規化エンティティ。

サポートされているシナリオ

データ エンティティは、以下のすべてのシナリオをサポートします。 Dynamics 365 実装プロジェクトの構成データとデータ移行 で詳細をご覧ください。

統合シナリオ

同期サービス (OData)

データ エンティティは、エンティティ上の公開アプリケーション プログラミング インターフェイス (API) を公開して、同期サービスを可能にします。 同期サービスは、次の目的で使用されます。

  • Office 統合
  • サード パーティ モバイル アプリケーション
非同期の統合

データ エンティティは、データ管理パイプラインを介した非同期統合もサポートしています。 これにより、非同期かつ高性能のデータ挿入および抽出シナリオが可能になります。 次にいくつか例を挙げます。

  • 対話型ファイル ベースのインポート/エクスポート
  • 定期的な統合 (ファイル、キューなど)

ビジネス インテリジェンス

  • 集計データ
  • 標準化された主要業績評価指標 (KPI)

アプリケーション ライフサイクル管理

統合およびビジネス インテリジェンス (BI) のシナリオの他に、データ エンティティも最初は 2 つの重要な ALM シナリオをサポートしています。 ALM シナリオの次の 2 つのプログレッシブ レベルは、データ エンティティによるカバレッジの範囲を示しています。

エンティティおよびライフ サイクル管理。

コンフィギュレーション データのプロビジョニング

システムの実装担当者は、ガイド付きデータ収集ウィザードとバルク データ入力メカニズムの両方を使用して、Microsoft Dynamics Lifecycle Services (LCS) を介して、構成データで初期展開 (またはモジュール) をブートします。 コンフィギュレーションは、主に次のエンティティ カテゴリを対象としています。

  • すべてのパラメーター
  • 参照
  • システム パラメーター
  • 整理番号
  • 通貨
レガシ システムまたは外部システムからのデータ移行

最初の配置が立ち上がって動作した後、システム実装担当者は、アプリケーション、特に以下の資産に対して顧客の既存データ資産の移行を実行します。

  • マスター データ (たとえば、顧客および仕入先)
  • ドキュメント (たとえば、販売注文) のサブセット

組み込みエンティティ

データ エンティティを使用すると、データ移行やデータ統合のシナリオなど、Dynamics 365 プロジェクトでデータをインポートできます。 次の一覧は、Dynamics 365 ソリューションで最も頻繁に使用されるエンティティの一部を示しています。

エンティティのカテゴリ

エンティティは、それらの機能およびそれらが提供するデータのタイプに基づいて分類されます。 以下は、データ エンティティの 5 つのカテゴリです。

パラメーター

  • 機能的または行動のパラメーター。
  • 特定のビルドまたは顧客の展開またはモジュールを設定するために必要です。
  • 産業またはビジネスに固有のデータを含めることができます。 データは、より広範な顧客にも適用されます。
  • 列の設定の値になっている、1 つだけのレコードが含まれているテーブル。 このようなテーブルの例としては、買掛金勘定 (AP)、一般会計 (GL)、クライアント パフォーマンス オプション、ワークフローなどが存在します。

参照

  • 業務プロセスを操作するために必要な少量の簡易参照データです。
  • 産業または業務プロセスに固有のデータ。
  • 例には、単位、分析コード、および税コードが含まれます。

マスター

  • ビジネスのデータ資産。 一般に、これらはビジネスの「名詞」で、通常ユーザー、場所、および概念などのカテゴリに分類されます。
  • 大量の複雑な参照データ。 例には、顧客、仕入先、およびプロジェクトが含まれます。

書類

  • 後でトランザクションに変換されるワークシート データ。
  • 各ヘッダー レコードに対する複数の明細行品目のような複雑な構造体をもつドキュメント。 例には、販売注文、発注書、オープン残高、および仕訳帳が含まれます。
  • ビジネスの運用データ。

取引

  • ビジネスの運用トランザクション データ。
  • 転記済トランザクション。 これらは、転記済請求書や残高などの非冪等項目です。 通常、これらの項目は、コピーまたは移行されるデータ量を削減するために、データセット全体のコピー時に除外されます。 完了したトランザクションを移行すると、新しいシステムで関連データの参照整合性を維持しようとするなかで、複雑性が増す可能性もあります。 一般に、完了した業務プロセスからのトランザクションは、詳細ではなく要約して移行されます。
  • 例には保留中の請求書を含まれます。

エンティティの作成

エンティティを作成するには複数の方法があります。 たとえば、ウィザードを使用する、またはテーブルからのエンティティを構築できます。

ウィザードを使用したエンティティの構築

エンティティをビルドする最も簡単な方法は、ウィザードを使用することです。 このウィザードでは、ルート データ ソースを選択して他の関連するデー タソースに展開し、エンティティのフィールドを選択できます。 ウィザードを開始するには、データ エンティティ タイプの新しい項目をプロジェクトに追加します。 ウィザードを使用してエンティティを構築する手順については、 データ エンティティの構築と使用 を参照してください。 次のテーブルに、ウィザードでエンティティに設定したプロパティに関する情報を示します。

プロパティ 説明
プライマリ データ ソース エンティティを根ストラクトするために使用されるルート データ ソース (テーブルまたはビュー)。 このルート データ ソースに基づき、さらに関連データ ソースを追加することができます。
データ エンティティ名 エンティティの名前。
エンティティ カテゴリ エンティティのタイプ。 エンティティのカテゴリは、テーブルのテーブル グループに類似しています。 使用可能なカテゴリには、パラメーター参照マスタードキュメント、およびトランザクションがあります。
パブリック エンティティ名 エンティティのパブリック リソース名。
パブリック コレクション名 パブリック リソースは名前を設定します。
パブリック API の有効化 OData サービスのエンティティを有効にするには、このオプションを選択します。
データ管理能力の有効化 データのインポート/エクスポートおよびコネクタの統合など、エンティティで非同期統合を有効にするには、このオプションを使用します。
ステージング テーブル エンティティに対して生成されるステージング テーブルの名前。 ステージング テーブルは、非同期の統合および大規模なシナリオで使用されます。
データ ソースの追加

エンティティを作成するときは、ルート データ ソースから開始します。 ただし、他のデータ ソースを追加することができます。 手動で新しいデータ ソースを追加するか、ルート データ ソースで代理外部キー フィールドを選択して必要なデータ ソースを自動的に展開することができます。

出力

ウィザードを完了したら、次の項目が生成されます。

  • データ エンティティ
  • ステージング テーブル (データの管理が有効であった場合は省略可能)

テーブルからエンティティを作成する

テーブルからエンティティを素早く作成して、プロパティ、データ ソース、およびフィールドを後でカスタマイズすることができます。 テーブルを右クリックし、アドイン>データ エンティティの作成を選択します。

データ エンティティの作成。

エンティティ リストの更新

環境のエンティティは、次のガイドラインを使用して更新する必要があります。

  • 新しい環境が展開され、ユーザーがデータ管理ワークスペースに移動すると、エンティティ リストの更新が自動的に開始されます。
  • データ管理が既に使用されている環境にコード パッケージが展開されるとき、データ管理 > フレームワーク パラメーター > エンティティ設定 > エンティティ リストの更新 からエンティティ リストの更新はから手動で開始する必要があります。
  • コンフィギュレーション キーが変更されるとき、データ管理 > フレームワーク パラメーター > エンティティ設定 > 更新エンティティ リスト からエンティティ リストを手動で更新する必要があります。

エンティティ リストを更新すると、環境ですべてのエンティティを使用できるようになり、エンティティのメタデータが最新になります。

コンフィギュレーション キーおよびデータ エンティティ

データ エンティティを使用してデータをインポートまたはエクスポートする前に、使用を計画しているデータ エンティティでコンフィギュレーション キーの影響を最初に判断することをお勧めします。

コンフィギュレーション キーの詳細については、ライセンス コードとコンフィギュレーション キーのレポート を参照してください。

コンフィギュレーション キーの割り当て

コンフィギュレーション キーは、次のアーティファクトの 1 つまたはすべてに割り当てられます。

  • データ エンティティ
  • データ ソースとして使用されるテーブル
  • テーブル フィールド
  • データ エンティティ フィールド

次のテーブルは、オブジェクトの基になるさまざまなアーティファクトで、コンフィギュレーション キーの値がオブジェクトの予想される動作を変更する方法を集計したものです。

データ エンティティでコンフィギュレーション キーを設定する テーブルでコンフィギュレーション キーを設定する テーブル フィールドでコンフィギュレーション キーを設定する データ エンティティ フィールドのコンフィギュレーション キー 予想される動作
無効 未評価 未評価 未評価 データ エンティティのコンフィギュレーション キーが無効である場合、データ エンティティは機能しなくなります。 基になるテーブルやフィールド内でコンフィギュレーション キーが有効または無効かどうかは重要ではありません。
有効 無効 未評価 未評価 データ エンティティのコンフィギュレーション キーが有効である場合、データ管理フレームワークは基になるテーブルごとのコンフィギュレーション キーを確認します。 テーブルのコンフィギュレーション キーが無効である場合、テーブルは機能を使用するデータ エンティティで使用できなくなります。 テーブルのコンフィギュレーション キーが無効である場合、テーブルおよびデータ エンティティのコンフィギュレーション キー設定は評価されません。 エンティティの主テーブルでそのコンフィギュレーション キーが無効になっている場合、エンティティのコンフィギュレーション キーが無効にされたのと同じように、システムは実行されます。
有効 有効 無効 未評価 データ エンティティのコンフィギュレーション キーが有効で、基になるテーブルのコンフィギュレーション キーが有効である場合、データ管理フレームワークはコンフィギュレーション キーをテーブルのフィールドで確認します。 フィールドのコンフィギュレーション キーが無効である場合、対応するデータ エンティティ フィールドが有効なコンフィギュレーション キーを持っている場合でも、そのフィールドは使用する機能に対するデータ エンティティを使用できません。
有効 有効 有効 無効 他のすべてのレベルでコンフィギュレーション キーが有効であっても、そのエンティティ フィールドのコンフィギュレーション キーが有効でない場合、フィールドはデータ エンティティで使用不可能です。

メモ

エンティティが、データ ソースとして別のエンティティを持っている場合、上記のセマンティクスが再帰的な方法で適用されます。

エンティティ リストの更新

エンティティ リストが更新されると、データ管理フレームワークは、ランタイムに使用するコンフィギュレーション キー メタデータを構築します。 このメタデータは上記で説明されたロジックを使用して構築されます。 データ管理フレームワークのジョブおよびエンティティを使用する前に、エンティティ リストの更新の完了を待機することを強くお勧めします。 待機しない場合、コンフィギュレーション キー メタデータは最新でない場合があり、予期しない結果になる場合があります。 エンティティ リストが更新される場合、エンティティ リストのページに、次のメッセージが表示されます。

エンティティ リストの更新。

データ エンティティ リストのページ

データ管理ワークスペースのデータ エンティティ リストのページは、エンティティのコンフィギュレーション キー設定を示します。 データ エンティティのコンフィギュレーション キーの影響を理解するには、このページから開始します。

エンティティの更新中に構築されるメタデータを使用して、この情報が表示されます。 コンフィギュレーション キーの列で、データ エンティティに関連付けられているコンフィギュレーション キーの名前が表示されます。 この列が空白の場合は、データ エンティティに関連付けられているコンフィギュレーション キーがないことを意味します。 コンフィギュレーション キーの状態列は、コンフィギュレーション キーの状態を表示します。 チェックマークがある場合、キーが有効になっていることを意味します。 空白の場合、キーが無効であるか、または関連付けられているキーが存在しないかのいずれかであることを意味します。

エンティティ リストのページ。

ターゲット フィールド

次の手順は、テーブルおよびフィールドのコンフィギュレーション キーの影響を確認するため、データ エンティティにドリルダウンすることです。 データ エンティティのターゲット フィールド フォームは、データ エンティティで関連するテーブルおよびフィールドに対して、コンフィギュレーション キーおよびキーの状態情報を示します。 データ エンティティ自体そのコンフィギュレーション キーが無効になっている場合、このエンティティに対するターゲット フィールド フォームで、テーブルおよびフィールドがコンフィギュレーション キーの状態に関係なく使用できないことを通知する、警告メッセージが表示されます。

ターゲット フィールド。

子エンティティ

特定のエンティティはデータ ソースとして他のエンティティを持っているか、複合データ エンティティです: 子エンティティ フォームでこれらのエンティティに対するコンフィギュレーション キー情報が表示されます。 上記のエンティティ リスト ページと同じ方法で、このフォームを使用します。 子エンティティのターゲット フィールド フォームも、上記のように機能します。

子エンティティ。

コンフィギュレーション キーの実行時間の検証

エンティティ更新リストの中で検構築されたコンフィギュレーション キー メタデータを使用して、次の使用ケースで実行時間の検証が実行されます。

  • データ エンティティをジョブに追加するとき。
  • ユーザーがエンティティ リストで 検証 をクリックしたとき。
  • ユーザーがデータ プロジェクトにデータ パッケージを読み込む場合。
  • ユーザーがデータ プロジェクトにテンプレートを読み込む場合。
  • 既存のデータ プロジェクトが読み込まれるとき。
  • テンプレートがデータ プロジェクトに読み込まれたとき。
  • エクスポート/インポート ジョブが実行される前 (バッチ、非バッチ、反復、OData)。
  • ユーザーがマッピングを生成するとき。
  • ユーザーがマッピング UI のフィールドをマップする場合。
  • ユーザーが 'インポート可能フィールド' のみを追加するとき。

コンフィギュレーション キー変更の管理

エンティティ、テーブル、またはフィールド レベルでコンフィギュレーション キーを更新する時はいつでも、データ管理フレームワークのエンティティ リストを更新する必要があります。 このプロセスでは、フレームワークが、最新のコンフィギュレーション キー設定をピックアップすることが保証されます。 エンティティ リストが更新されるまで、エンティティ リストのページに、次の警告メッセージが表示されます。 更新されたコンフィギュレーション キーの変更は、エンティティ リストが更新されたすぐ後に、有効になります。 コンフィギュレーション キーの変更が有効になった後、期待どおりに動作するかどうかを確認するため、既存のデータ プロジェクトおよびジョブを検証することをお勧めします。

コンフィギュレーション キー。