次の方法で共有


エンティティ フィールド間のマッピングを作成または編集する

このトピックは、Dynamics 365 Customer Engagement (on-premises) に適用されます。 このトピックの Power Apps バージョンについては、以下を参照してください。 テーブル列をマッピングする

エンティティ関係を持つエンティティ間で属性をマップできます。 これにより、別のレコードのコンテキストで作成されたレコードの既定値を設定できます。 特定のアカウントに従事している従業員の新しい連絡先レコードを追加したいとします。 これには、次の 2 つの方法があります。

アプリ内を移動するだけで、新しい連絡先レコードを最初から作成できます。 ただし、その後、親アカウントを設定し、親アカウントと同じと思われるいくつかの情報項目(住所や電話情報など)を入力する必要があります。 これは時間がかかる場合があり、エラーが発生する可能性があります。

より簡単な方法は、取引先企業エンティティから開始し、フォームの 取引先担当者 サブグリッドを使用して、取引先担当者を追加する + を選択することです。 最初に、誤って重複するレコードを作成しないように、既存の関連する連絡先を検索するようにガイドします。 既存のレコードが見つからない場合は、 新規 を選択して新しい取引先担当者レコードを作成できます。 違いは、取引先企業レコードの特定のデータ項目が新しい連絡先フォームにコピーされ、保存する前に編集できる特定の既定値が設定されることです。 これにより、データを入力する際の時間を大幅に節約でき、エラーを減らすことができます。

これらのマッピングは、ワークフローまたはダイアログ プロセスを使用して作成された関連レコードには適用されません。 コードを使用して作成された新しいレコードには自動的には適用されませんが、開発者は InitializeFrom という特別なメッセージを使用して、使用可能なマッピングを使用して新しいレコードを作成できます。

これらのマッピングは、レコードが保存される前にデフォルト値を設定するだけです。 ユーザーは保存する前に値を編集できます。 転送されるデータは、その時点でのデータです。 同期されていません。 主エンティティ レコードの情報が変更されても、作成時に転送された関連エンティティ レコードのデータは変更されません。

リストから新しいレコードを作成するときに設定される既定値は、実際にはエンティティの関連付け内では定義されませんが、関連付けのユーザー インターフェイスで公開されます。 すべての 1:N エンティティ関係にそれらがあるわけではありません。 エンティティの 1:N (または N:1) エンティティの関連付けの一覧を表示すると、表示される関連付けを種類でフィルター処理できます。 [すべて]、[カスタム]、[カスタマイズ可能]、または [マップ可能] のいずれかを選択できます。 マップ可能なエンティティ関係は、エンティティ フィールドのマッピングを許可するためのアクセス権を提供します。

次のルールは、マップできるデータの種類を示しています。

  • 両方のフィールドが同じタイプで、同じ形式である必要があります。

  • ターゲット・フィールドの長さは、ソース・フィールドの長さ以上でなければなりません。

  • ターゲット フィールドをまだ別のフィールドにマップすることはできません。

  • ソースフィールドは、フォームに表示されている必要があります。

  • 対象フィールドは、ユーザーがデータを入力できるフィールドである必要があります。

  • フィールドがオプション セットの場合、各オプションの整数値は同一である必要があります。

  • 住所 ID の値をマッピングすることはできません。

オプション セット フィールドをマップする必要がある場合は、両方のフィールドが同じグローバル オプション セットを使用するように構成することをお勧めします。 そうしないと、2 つの別々のオプション セットを手動で同期させることが難しくなる可能性があります。 各オプションの整数値が正しくマッピングされていない場合、データに問題が発生する可能性があります。 詳細: グローバル オプション セットの作成および編集

フィールドマッピングの作成または編集

  1. ソリューション エクスプローラーを開きます。

  2. コンポーネントで、エンティティを展開し、目的のエンティティを展開します。

  3. [1:N の関連付け] または [N:1 の関連付け] を選択します。

  4. メイン ウィンドウの [種類 ] ボックスの一覧で、[ マップ可能] を選択します。

  5. マッピング可能な関係を選択します。 次に、[アクション] ツールバーで [アクション] を選択し、[ 編集] を選択します。

  6. 関連 で、マッピング を選択します。

  7. 新しいマッピングごとに、[ アクション ] ツールバーで [新規] を選択します。

  8. [Create Field Mapping] ダイアログボックスで、[Source Entity Fields] からソースフィールドを選択します。 [ターゲット エンティティ フィールド] からターゲット フィールドを選択します。

  9. [OK] を選択.

  10. [保存して閉じる] を選択して [関連付け] フォームを閉じます。

  11. カスタマイズが完了したら、公開します

  • カスタマイズを公開すると、これらのマッピングはすべてのユーザーが使用できるようになります。 カスタマイズを公開する前にインターネット インフォメーション サービス (IIS) をリセットすると、他のカスタマイズは使用できなくなりますが、これらのマッピングはすべてのユーザーが使用できます。
  • フォームに表示されていないフィールドにマップする場合、またはフォームに表示されていないフィールドからマップする場合、フィールドがフォームに追加されるまでマッピングは行われません。

フィールドマッピングの自動生成

マッピングを自動的に生成することもできますが、システムエンティティでこれを行う場合は注意が必要です。 これは、ユーザー定義エンティティを作成し、マッピングを活用する場合に使用します。 マッピングのリストを表示しているときに、「 他のアクション 」メニューで 「マッピングの生成」を選択します。 これにより、既存のマッピングが削除され、類似した名前とデータ型を持つフィールドのみに基づく推奨マッピングに置き換えられます。 これをシステムエンティティで使用すると、予期されるマッピングの一部が失われる可能性があります。 ユーザー定義エンティティの場合、不要なマッピングをより簡単に削除し、マッピングの生成アクションで作成されなかった他のマッピングを追加できるため、時間を節約できます。

1:N (1 対多) または N:1 (多対 1) の関連付けを作成する
N:N (多対多) の関連付けを作成する