在CRM 4.0 里用导入向导功能更新数据

很多人在问:怎样用CRM4.0的导入向导功能(Import Data)更新数据,而不是导入新的数据。

具体做法有2种方式如下:
第一种利用GUID的方式,比较麻烦做起来,也不通用:
1. 从CRM导出数据到[动态工作表] .xls



2. 用Excel打开这个xls文件,在最后一列和空白列之间可以看到有一列被“隐藏”了,比如下图,列E就是最后一列,跟着就是列G,我们可以知道列F被“隐藏了”。选中列EG,右击鼠标,选择“显示”(Unhide)



3. 这个时候列F就显示出来了,可以看到是对应行记录GUID,我们要做的是把这一列cut/insert到表的首列



4. 保存xls文件成csv文件,用导入向导功能导入的时候,就会出现更新选项。导入后,即完成了数据的更新,见下图的第一行:"Enrich data by updating existing records rather than creating new records."



5. 顺便说一句,很多人问这个自动匹配(Automatic)是怎么出来的?其实在CSV文件里,列名必须和Attributes的显示名称(Display Name)一样,就可以达到这个功能。比如,在CSV文件里是如下格式:

Account,Account Name
90B2C520-FE6D-DD11-A656-0003FF884968,Account1
91B2C520-FE6D-DD11-A656-0003FF884968,Account2
60019928-FE6D-DD11-A656-0003FF884968,Account3
61019928-FE6D-DD11-A656-0003FF884968,Account4
D01CBE2F-FE6D-DD11-A656-0003FF884968,Account5

我们可以看到:Account对应的是Guid,在attributeaccountid显示名称里就叫做Account;而Account Name也是name的显示名称。所以,如果这样设计导入文件,在执行到导入步骤的时候,系统就会自动辨认出这个文件是和实体Account相对应的,也就不用再作匹配了。

第二种方法就是用plugin的方式:

我这里就不写demo程序了,如果有人需要,可以留言给我.

我说一下大概思路

具体做法为:第一步:确认该实体中是否有用来标识为记录唯一性的字段,比如流水号啊,记录ID等等.

           第二步:编写plugin程序(怎么写我就不多说了,如果有人不会,可以留言给我,也可以去戈雅论坛提问);

                  将编写好的dll注册为precreate;

                  然后制作你的CSV格式文件,注意一定要包含记录唯一性的字段,

                  然后通过向导导入就可以了(最好能用automaping导,这样方便,不用做映射)

 

posted @ 2009-03-20 13:03  Eric's Yang  阅读(674)  评论(1编辑  收藏  举报