簡體   English   中英

Dynamics CRM 2011自定義實體:創建與我的SQL Server外鍵和主鍵關系匹配的模型

[英]Dynamics CRM 2011 Custom Entities: creating model that matches my SQL Server foreign and primary key relationships

我有一個很好的SQL Server數據庫設置,有2個表,一對多的關系。 像這樣的東西:

類型:

ID   Type
===========
1    mammal    
2    fish    
3    insect

寵物:

ID    Name   Foreign Key
=======================
1    Paris   1 (mammal)    
2    Michael 2 (fish)    
3    Mardy   1 (mammal)

我如何在CRM中重新創建這個? 我知道CRM喜歡創建自己的主鍵GUID和關系字段。 我希望保持表格關系的完整性,特別是由於我將定期通過腳本導入大量數據(1百萬+記錄),而不是通過crm gui創建記錄和關系。 謝謝。

在相同的情況下,我創建了兩個帶有附加字段的實體 - 整數ID。 關系是CRM的默認關系。 如果您想在“寵物”表單上“保留”“類型”實體的ID,您可以在“寵物”表單上添加其他隱藏字段(整數 - 類型ID)。 並在類型更改上更新此更新。

我認為如果您只在腳本中使用這些實體,則不需要這個隱藏的Type_ID。 也許查詢性能不太理想,但是這樣可行:)

編輯:還有一件事,如果您需要在CRM中生成ID,您必須創建用於生成唯一ID的插件,並且將在實體創建時執行。

希望能幫助到你

由於CRM將其PK存儲為GUID,因此您只能通過這些GUID定義FK。

正如lazarus所說,創建Pets和PetTypes實體包括ExternalID int字段。

您的導入腳本需要為要導入的每個記錄查找兩個GUID:

read record
lookup PetTypes Guid for PetTypes.ExternalID = [pettype.id from record]
create if not exists
lookup Pets Guid for Pets.ExternalID = [id from record]
create if not exists
set Pets.PetTypes = new EntityReference() with PetTypes.ID (=guid)
save crm record

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM