MS_CRMPrimaryKeyField - NetDevInfraWGinOSSConsortium/NetDevInfraWiki GitHub Wiki
- TOP > Dynamics CRM > 共通的なレコード
CRM のエンティティの主キー列
一意の GUID が格納される。
これにより、
- 組織や環境をまたいでもキーが衝突しない
(ソリューションでの移送や、組織間のデータ移行が可能になる)。 - レコードの作成時にクライアント側で採番でき、
サーバへの往復なしに関連レコードを組み立てられる。 - URL やプラグイン・Web API で、レコードを一意に指し示せる。
移行メモ(補完): 元ページは「これにより、・・・。」で途切れていたため、
GUID を主キーにしたことの帰結を補った。
著者による本文が加筆された場合は置き換えること。
CRM のエンティティの主キー フィールドの名称は、
- 接頭辞_(エンティティ名)ID
となる。
補足(システム エンティティには接頭辞が付かない): 接頭辞が付くのは
カスタム エンティティ(発行元の接頭辞、既定ではnew_)で、
例えばnew_projectIdのようになる。
システム エンティティの主キーは接頭辞なしの
accountid/contactid/incidentidのような名称である。
補足(主キーとプライマリ フィールドは別物): 主キー フィールド(GUID)は
レコードの同一性を担うもので、画面には出てこない。
一方、検索フィールドやビューでレコードの「名前」として表示されるのは
プライマリ フィールド(テキスト型)であり、こちらは一意である必要がない。
両者の名称が似てしまうと高度な検索などで混乱するため、
プライマリ フィールドにエンティティ名を使わないよう推奨されている
(「CRM エンティティのカスタマイズ」を参照)。
補足(代替キー): CRM 2015 で**代替キー(Alternate Key)**が追加され、
業務上の一意キー(顧客コードなど)を宣言して
外部システムからの Upsert のキーに使えるようになった。
ただし内部の主キーは、その後も GUID のままである。
- 本 Wiki 内
Tags: Dynamics CRM