分享方式:


實體關聯行為

 

發佈日期: 2016年11月

適用對象: Dynamics CRM 2015

當一對多實體關聯存在時,會有可設定的串聯行為,以保留資料完整性和自動化商務流程。 本主題將說明一些重要概念,並描述如何設定這些的串聯行為。

在描述如何設定實體關聯行為之前,先思考它如何應用至您的業務會非常實用。 有三個重要概念:

  • 保留資料完整性

  • 自動化商物程序

  • 串聯行為

本主題內容

保留資料完整性

自動化商物程序

串聯行為

設定實體關聯行為

保留資料完整性

每個實體可擁有定義有效記錄的規則。 例如,Microsoft Dynamics 365 商機記錄必須包含潛在客戶的參考。 使用者無法建立新商機記錄,如果未新增現有客戶或建立新客戶記錄的話。

但是,如果刪除了代表客戶的帳戶或連絡人,該怎麼辦? 在這種情況下,可能的替代方式為:

  • 限制任何刪除有關聯商機的客戶記錄的嘗試。

  • 當對應的客戶記錄刪除時,串聯刪除動作,這樣就會自動刪除所有相關的商機記錄。

在 Microsoft Dynamics 365 中針對將商機與客戶產生關聯的一對多關係,例如 Opportunity.opportunity_customer_accountsContact.opportunity_customer_contacts,此行為是串聯刪除動作。

當您建立要在 Microsoft Dynamics 365 中使用的資料時,也會決定要如何保留資料完整性。

自動化商物程序

商務程序可能需要您對擁有相關記錄的記錄執行動作。 例如,您可能需要將客戶指派給新的銷售人員。 如果該客戶記錄有任何商機記錄,有些選項如下:

  • **不執行任何動作。**商機應該繼續由進行處理的個人擁有。

  • **指派所有商機給新的銷售人員。**身為此客戶記錄的新負責人,銷售人員現在會負責所有與該客戶相關的商機。

  • **僅指派現有商機給新的銷售人員。**保留任何非使用中商機記錄的負責人,做為報告用途。

  • 僅將先前客戶負責人擁有的商機指派給新的銷售人員。 這會允許新的銷售人員取代先前的負責人。

這些選項是您可在 Microsoft Dynamics 365 中使用實體關聯行為設定的常用選項。 如果您需要不同的行為,請考慮購買包含您所需行為的解決方案,或開發外掛程式來提供額外的選項。

串聯行為

這些設定選項稱為串聯行為,因為它們會向下串聯整個相關實體的階層。 例如,如果刪除客戶會造成刪除相關商機,那麼與商機相關聯的活動呢? 在 Microsoft Dynamics 365 中,每個實體關聯中針對活動類型實體定義的行為會是一併刪除。

不過,並非所有實體都會這樣處理。 例如,訂單和發票包含重要的商務資料,因此不應該意外刪除。 它們的實體關聯行為會設定為限制與其相關聯的客戶或商機記錄。 您必須先刪除訂單或發票,才能刪除有相關訂單或發票記錄的客戶或商機。

在您透過自訂實體或使用現有 Microsoft Dynamics 365 系統實體建立商務資料時,請考量您需要的行為以及對整個相關實體階層的影響。

上層實體關聯

每一個有資格擁有 1:N 關聯的實體配對之間都可以擁有多個 1:N 關聯。 但是,只有其中一項關聯可視為「上層」(Parental) 實體關聯。 如需所有可自訂上層實體關聯的清單,請參閱 TechNet:可自訂的上層實體關聯

上層實體關聯是指,在下表的上層欄中的其中一個串聯選項 (定義於 CascadeType) 為 true 的任何 1:N 實體關聯。

動作​​

上層

非上層

Delete

Cascade

RemoveLink
Restrict

共用​​

Cascade
UserOwned
Active

NoCascade

不共用

Cascade
UserOwned
Active

NoCascade

指派​​

Cascade
UserOwned
Active

NoCascade

重設上層

Cascade
UserOwned
Active

NoCascade

1:N 實體關聯中,每個參考的實體都有一個其中的關聯可視為上層關聯的參考屬性。

例如,如果您建立新的自訂實體並新增 1:N 實體關聯,其中客戶實體中您的自訂實體是參考實體,您就可以為該實體關聯設定動作,以使用上層欄中的選項。 如果您稍後新增另一個他 1:N 實體關聯,其中您的自訂實體為參考實體,那麼您只能設定動作來使用非上層欄中的選項。

通常這表示每個實體配對只有一個上層關聯。 在某些情況下,參考上的參考屬性可能包含多個實體類型的參考。

例如,Opportunity 實體擁有稱為 customerid 的參考屬性,其中可能儲存連絡人或客戶記錄的參考。 此情況下會有兩個不同的上層 1:N 實體關聯。

任何活動實體 (例如工作、傳真、通話等) 都有一組類似的上層實體關聯用於實體,可以使用 regardingobjectid 參考屬性產生關聯。

設定實體關聯行為

當您使用 CreateOneToManyRequestUpdateRelationshipRequest 時,您會在要求主體中包含 OneToManyRelationshipMetadata 類別的執行個體。 在該類別的 CascadeConfiguration 屬性中,使用 CascadeConfiguration 類別。

CascadeConfiguration 類別包含屬性,代表可在一對多實體關聯中對參考的實體執行的動作。 每個屬性都可以擁有指派的其中一個 CascadeType 列舉的值。

應用程式標籤

描述

使用中

串聯使用中

在所有與參考的實體記錄相關聯的使用中參考實體記錄上執行動作。

串聯

串聯全部

在所有與參考的實體記錄相關聯的參考實體記錄上執行動作。

NoCascade

不串聯

不執行任何動作。

RemoveLink

移除連結

移除與參考的實體記錄相關聯的所有參考實體記錄的參考屬性值。

限制

限制

當參考實體存在時,避免參考的實體記錄遭到刪除。

UserOwned

串聯使用者擁有的

對參考的實體記錄相同使用者所擁有的所有參考實體記錄執行動作。

CascadeConfiguration 類別包含下列屬性,代表可在一對多實體關聯中對參考的實體執行的動作。

動作​​

描述

有效的選項

Assign

參考的實體記錄負責人已變更。

Active
Cascade
NoCascade
UserOwned

Delete

參考的實體記錄已刪除。

備註

此動作的選項有所限制。

Cascade
RemoveLink
Restrict

Merge

此記錄已與另一筆記錄合併。

備註

對於可以合併的參考實體,串聯是唯一有效的選項。 在其他情況下,請使用 NoCascade。

Cascade
NoCascade

Reparent

請參閱下面的 關於上層動作。

Active
Cascade
NoCascade
UserOwned

Share

當參考的實體記錄與另一位使用者共用時。

Active
Cascade
NoCascade
UserOwned

Unshare

當參考的實體記錄共用移除時。

Active
Cascade
NoCascade
UserOwned

關於上層動作

重設上層動作類似共用動作,差別在於它會處理繼承的讀取存取權限,而不是明確讀取存取權限。

備註

如需繼承的存取權限的詳細資訊,請參閱記錄型安全性如何用於控制 Microsoft Dynamics CRM 2015 記錄的存取,特別是共用和繼承一節。

重設上層動作是在您變更上層關聯中參考屬性的值時執行。 發生重設上層動作時,對於相關實體所需的繼承讀取存取權限範圍可能會變更。 與重設上層相關的串聯動作是指,變更對實體記錄與任何與其相關的實體記錄的讀取存取權限。 如需如何將實體關聯設定為上層的詳細資訊,請參閱上層實體關聯。

例如,商機和客戶之間會有依據 CustomerId 參考屬性的上層關聯。 如果您是客戶負責人,而且該客戶有相關聯的商機,則您會繼承該商機以及任何與其相關聯之記錄的讀取存取權限。 如果商機的 CustomerId 參考屬性值變更為參考不同的客戶,則該客戶的負責人會繼承該商機的讀取存取權限 (如果重設上層動做為「串聯」)。 如果您將重設上層動作設為 NoCascade,就可以停用這個自動繼承讀取存取權限的動作。 您可以使用 Active 或 UserOwned 選項指定篩選,篩選出存取權限變更時會影響的記錄。 對於任何透過上層關聯與商機相關的記錄,重設上層動作會向下串聯這些實體關聯,並且依據重設上層動作的篩選設定繼承讀取存取權限。

另請參閱

一對多關聯
擴充中繼資料模型
自訂實體中繼資料
自訂實體屬性中繼資料
自訂實體關聯中繼資料
自訂實體和屬性對應
自訂索引標籤支援多種語言
記錄型安全性如何用於控制 Microsoft Dynamics CRM 2015 記錄的存取
範例:建立並擷取實體關聯

© 2017 Microsoft. 著作權所有,並保留一切權利。 著作權