2016-08-22 124 views
2

我試圖在資格事件插件中創建一個帳戶。如果我使用名稱與現有帳戶的名稱完全匹配的帳戶創建帳戶,我的重複檢測規則將啓動並引發異常。在插件中創建帳戶時忽略CRM中的重複交易規則

這是我的理解,重複檢測規則總是警告,而不是錯誤,並且默認情況下,從插件/ SDK調用運行時不會出現任何錯誤或甚至通知這是CRM的新變化嗎?有沒有辦法忽略插件中的重複檢測規則?

回答

2

這樣做的目的,並根據MSDN文檔Run duplicate detection(2011年CRM列爲早)顯然是長期行爲。

通過將一個值的參數的createRequest和UpdateRequest消息請求的 屬性Pass重複檢測可選參數 SuppressDuplicateDetection。該 SuppressDuplicateDetection參數值確定是否 創建或可以完成更新操作:

  • 真 - 創建或更新記錄,如果重複被發現。
  • false - 如果發現重複,請不要創建或更新記錄。

假設false是默認值,它是一個布爾值。

如果發現重複檢測可選參數設置爲false和 重複,將拋出一個異常,並記錄不是 創建或更新。

3

顯然你必須設置在創建請求「SupressDuplicateDetection」屬性:

Entity target = new Entity("account"); 
target["name"] = "I am a clone"; 
CreateRequest req = new CreateRequest(); 
req.Target = target; 
req["SuppressDuplicateDetection"] = true; 
CreateResponse response = (CreateResponse)_service.Execute(req);