SugarCRM的自定义导入程序 - 我应该从头开始扩展还是从头开始?

时间:2011-05-25 20:56:57

标签: php model-view-controller sugarcrm

我有一个想要自定义导入程序的客户端。数据源是xls文件,数据是潜在客户和相关呼叫的组合。类似的东西:

Name  |  Phone Number  |        email  |  date last called |  call notes
  Joe |   555-555-5555 | blah@blah.com |        2011-01-01 | Sounded interested.

因此,对于最后两个数据导入,我添加了一个名为“import_id”的字段,其中包含一个随机guid,将该文件保存为csv,使用lead importer导入了潜在客户,导出了潜在客户以便我可以使用Sugar guid ,使用Excel将import_id与Sugar GUID匹配,然后使用相关的潜在客户ID导入调用。

现在客户想要通过用户界面做些什么。我不确定我是否应该从头开始创建模拟糖导入模块的东西,或者我是否应该尝试创建一个扩展Import模块的自定义导入器。

如果我从头开始做一些事情的缺点是:

  1. 我在导入模块视图中重复了很多代码(特别是字段映射和重复检查/合并)。

  2. 我必须从头开始。

  3. 如果我尝试扩展Import模块,我会遇到以下问题:

    1. 我必须处理缺少xls导入支持。

    2. 由于我导入了两个不同的模块,因此我不清楚某些库存参数(返回模块等)。

    3. 我不确定它是否几乎与从头开始一样,因为我几乎每一步都会扩展进口商。

    4. 基本上,我不确定导入模块是否真的要扩展/自定义,如果这属于典型定制的范围,如果从一个导入器导入两个模块的想法比它的更麻烦值得。

      创建一个逐行进入的入口点并通过Bean创建前导然后相关的调用会更容易,但源数据头不是文件到文件的一致,所以我想制作使用导入模块的字段映射(步骤3)。

      非常感谢任何建议或警告。

1 个答案:

答案 0 :(得分:1)

最大的问题是需要xls支持,这需要对要添加的导入模块进行大量更改。如果你可以让它们将文件保存为CSV,你可以使用开箱即用的库存导入工具,并将相关模块中的字段作为非db字段添加,然后在beforeImportSave()之前添加一个bean方法来创建相关模块中的必填字段。

你可能也希望看看Talend的工具,因为它们很容易处理这个问题,但是由于你的问题非常简单,我认为你可以构建一个自定义视图来直接处理导入文件。