2012-03-23 58 views
1

這是一個簡單的要求:我想向Dynamics 2011中的帳戶添加一組字符串。該字符串是其他系統的外部ID。所有的字符串應該是唯一的跨所有實體。如何將一組字符串添加到實體?

我能看到做到這一點的唯一方法是將字符串定義爲實體(稱爲'ExternalCode'),並在Account和ExternalCode之間建立1:N的關係,但這看起來令人難以置信的超重。另外,作爲一個實體的定義堅持認爲,我給了'ExternalCode'一個名字,它顯然沒有。

實現此目的的最佳方式是什麼?

謝謝

瑞安

回答

2

它可能看起來超重,但考慮實體就好像它是表。你會在MS SQL中創建第二個表嗎?如果是這樣,那麼你應該創建另一個實體。客戶關係管理非常優化,所以我不會擔心這種額外開銷。

或者,您可以隨時在其他系統中攜帶GUID。

0

是如何進入你的CRM系統這些獨特的引用。你是從每個外部系統導入數據嗎?如果是這樣,我認爲這些參考在外部系統中是唯一的?一旦導入,你想確保任何這些引用不重複?

此外,我們在這裏談論了多少個字符串?如果它是一個很小的數字,那麼只需定義屬性來管理它們並使用以下方法之一檢查重複項是有意義的: -

1)某些javascript可用於進行oData查詢以確認'記錄提交之前,您的外部參考號的唯一性。 (但是,這是不夠的,記錄將在系統中以編程方式創建)。

2)在預先創建時觸發的插件再次向系統查詢匹配相同唯一參考數字的其他記錄並相應地處理匹配事件。

但是,如果它們中有很多,那麼定義一個單獨的實體可能更有意義,因爲您可以通過插件將新的「參考記錄」與實體相關聯,但是又如上所述,檢查記錄是否已經存在,然後處理異常或者僅僅與現有記錄相關聯(如果適當的話)。

我認爲他們的關鍵是你想要做什麼,如果你發現重複以及這些記錄將如何在系統中創建(例如通過UI或編程或可能兩者)。

如果您有更多的細節,歡迎提供一些更多的幫助。