簡體   English   中英

與Salesforce雙向同步(Java)

[英]Two-way sync with salesforce (java)

我們想開始使用salesforce來管理銷售聯系人,但是我們希望保留在當前系統中的一些與聯系人有關的業務功能。

據我所知,這意味着我們需要雙向同步嗎? 即,當Salesforce發生任何變化時,我們需要在系統上進行更新,反之亦然。

我建議使用某種消息傳遞產品,該消息傳遞產品可以放在中間,然后重試失敗的消息,因為我感覺如果沒有這種感覺,事情將會變得很混亂? 例如,當一項或其他服務中斷時。

該項目的經理希望保持簡單,並認為使用消息而不是實時的點對點呼叫是過大的,但是我覺得如果沒有它,我們將陷入一個痛苦的世界。

是否有人有嘗試進行雙向同步的經驗(實際上單向也遭受我認為相同的風險?)

非常感謝您的見解。

我無法代表您的系統,但是從Salesforce API的角度來看,這是專為數據復制而設計的getUpdated()getDeleted()調用。 SOAP API文檔的詳細介紹了如何有效使用它們。

我們使用Jitterbit在Salesforce和計費系統之間實現雙向同步。 Salesforce有一個最后修改的字段,我們的Biling系統也有(最后一個修改的字段)(您的系統應該有一個,如果沒有,則將時間戳字段添加到其SQL存儲中的表中)。 唯一重要的事情是選擇一個密鑰作為主密鑰(SF_ID或其他系統的密鑰),然后在另一個系統中創建該密鑰字段,因為它將用於解決沖突。 該過程很簡單且分多個步驟,將所有已修改的SF數據加載到平面文件中,將所有已修改的輔助系統數據加載到另一個平面文件中,通過在公共鍵字段上比較兩個文件來查找沖突,在發生沖突時通知管理員(如果有),並傳播對另一個系統的所有無沖突的更改。 我們每10分鍾運行一次此過程,並在兩次循環運行之間將最后一個時間戳存儲在兩個系統上,以便我們僅記錄在兩個循環之間修改的記錄。

如果兩個用戶同時進行編輯,您將遇到沖突並手動解決它,或者您將獲得“最后保存的勝利”結果。

您還必須迎合新規定,在SF方面,使用upsert而不是進行更新(取決於外部選擇,使用外部密鑰或SF密鑰),而在另一端,則取決於系統。

暫無
暫無

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

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