2011-05-25 95 views
1

我有一個想要自定義導入程序的客戶端。數據源是一個xls文件,數據是潛在客戶和相關調用的組合。喜歡的東西:SugarCRM自定義導入程序 - 我應該擴展還是從頭開始?

Name | Phone Number |  email | date last called | call notes 
    Joe | 555-555-5555 | [email protected] |  2011-01-01 | Sounded interested. 

所以,在過去的兩個數據導入,我添加了一個名爲「IMPORT_ID」與隨機GUID字段,將文件保存爲CSV,使用引線進口商進口的引線,出口引線所以我可以使用Sugar GUID,使用Excel將import_id與Sugar GUID進行匹配,然後使用相關主角ID導入調用。

現在客戶想要通過用戶界面執行某些操作。我不確定是否應該從頭開始模擬糖進口模塊,或者如果我應該嘗試創建擴展導入模塊的定製導入器。

如果我從頭開始去的缺點是:

  1. 我在導入模塊意見已經重複了很多代碼(具體的實地測繪和重複檢查/合併)。

  2. 我必須從頭開始。

如果我儘量延長導入模塊,我有這些問題:

  1. 我不得不應對缺乏XLS導入支持。

  2. 由於我導入到兩個不同的模塊,一些庫存參數(返回模塊等)我不清楚。

  3. 我不確定它是否與從頭開始幾乎相同,因爲我幾乎在每一步都會擴展導入器。

基本上,我不知道如果導入模塊的真正含義進行擴展/定製,如果這是一個典型的自定義的範圍之內,如果導入兩個模塊從一個進口商的想法是比它的價值更麻煩。

創建一個入口點會很容易,這個入口點只是逐行進行創建,然後通過Bean創建前導和相關的調用,但源數據頭文件不是一致的文件,所以我想使用導入模塊的字段映射(步驟3)。

任何意見或警告,非常感謝。

回答

1

最大的問題是需要xls支持,這需要對導入模塊進行大量更改以添加。如果您可以讓它們將文件保存爲CSV,那麼您可以使用開箱即用的庫存導入工具,並將相關模塊中的字段作爲非db字段添加,然後添加一個bean方法beforeImportSave()以創建相關模塊中所需的字段。

你可能也想看看Talend的工具,因爲他們很容易處理這個問題,但由於你的問題很簡單,我認爲你可以構建一個自定義視圖來直接處理導入文件。

+0

因此,如果我在領導模塊中將字段添加爲非db數據,它們可以保持隱藏在所有標準佈局/視圖中,並且數據本身在導入時不會存儲在任何位置?基本上它是創建相關記錄的lead bean中的數據的佔位符? – Anthony 2011-05-25 21:36:13

+0

我最終用一個after_save邏輯鉤去檢查兩個自定義字段。唯一的問題是,如果他們選擇在步驟4中取消導入,它將不會刪除相關注釋。 – Anthony 2011-05-26 20:28:48

+0

我剛剛找到UsersLastImport bean。它不僅允許相關注釋被取消導入,還可以使相關注釋顯示導入成功結果。 – Anthony 2011-05-27 14:26:17

相關問題