简体   繁体   English

使用MSCRM 4.0导入和导出(同步)数据的最佳实践

[英]Best practices for import and export (synchronization) of data with MSCRM 4.0

what are the recommended ways to synchronize data between an external system and MSCRM 4.0? 在外部系统和MSCRM 4.0之间同步数据的推荐方法是什么? By synchronization I mean periodically importing/exporting data (contacts, activities and some other entities) to/from MSCRM. 同步是指定期向MSCRM导入/导出数据(联系人,活动和一些其他实体)。 The interface to the external system is CSV or ODBC. 外部系统的接口是CSV或ODBC。

I read about several methods. 我读了几种方法。 Currently I am favouring 目前我很喜欢

  • using Microsoft CRM SDK for importing data to MSCRM 使用Microsoft CRM SDK将数据导入MSCRM
  • using the database views for exporting (ie pulling) data from MSCRM 使用数据库视图从MSCRM中导出(即提取)数据

Are there better methods for import/export? 是否有更好的导入/导出方法?

Some other methots I came accross which do not seem to be suitable: 我遇到的其他一些小方法似乎不合适:

  • Import as CSV (Bulk Import Wizard): How to map references? 导入为CSV(批量导入向导):如何映射参考? (MSCRM primary keys vs. primary keys of external system); (MSCRM主键与外部系统的主键); It is not possible to specify the owner of the imported entity per entity. 无法为每个实体指定导入实体的所有者。
  • Import/export as XML: The interface to the external system is table based (csv or odbc), not XML based. 作为XML导入/导出:到外部系统的接口基于表(csv或odbc),而不是基于XML。 So XML is inconvenient. 因此XML不方便。
  • CRM Data Migration Framework/CDF: I am not sure whether this method supports updates. CRM数据迁移框架/ CDF:我不确定此方法是否支持更新。 It seems to be designed for one-time data migration. 它似乎是为一次性数据迁移而设计的。
  • Bulk Data Export Tool ( http://www.codeplex.com/mscrmbulkdataexport ). 批量数据导出工具( http://www.codeplex.com/mscrmbulkdataexport )。 Does anybody have experience with this tool? 有人有使用此工具的经验吗?

EDITED: I forgot to mention that I am not looking for commercial 3rd party products. 编辑:我忘了提到我不是在寻找商业第三者产品。 Currently I am using MS CRM SDK for both import and export. 目前,我正在使用MS CRM SDK进行导入和导出。 I do not yet know about performance, however this approach looks promising. 我还不了解性能,但是这种方法看起来很有希望。

In more detail: I use XrmDataContext for LINQ-based access to MS CRM. 详细信息:我将XrmDataContext用于基于LINQ的MS CRM访问。 To do that, I needed to generate a data context class using a tool called CrmSvcUtil. 为此,我需要使用称为CrmSvcUtil的工具来生成数据上下文类。 Alternatively one could use CrmDataContext without code generation. 或者,可以使用CrmDataContext而不生成代码。 The difference: XrmDataContext provides a strongly typed interface, including customized MSCRM entities and attributes. 区别:XrmDataContext提供强类型接口,包括自定义的MSCRM实体和属性。

The most powerful and versatile way to migrate data to and from MSCRM that I know of is Scribe Insight from Scribesoft . 据我所知,将数据迁移到MSCRM和从MSCRM迁移数据的最强大,最通用的方法是Scribesoft的 Scribe Insight。 We use this for all data migration/synchronization tasks in our projects. 我们将其用于项目中的所有数据迁移/同步任务。 Using the MSCRM adapter pretty much all data manipulation can be done through the MSCRM web service, so you're always on the safe side as far as database interaction goes (as opposed to MSCRM database manipulation by plain SQL). 使用MSCRM适配器,几乎所有数据操作都可以通过MSCRM Web服务完成,因此就数据库交互而言,您始终处于安全状态(与普通SQL进行的MSCRM数据库操作相反)。 Scribe also allows setting up scheduled jobs to implement recurring import/export operations. Scribe还允许设置计划的作业以实施重复的导入/导出操作。

I am personally not too fond of the interface and its logic, but its still the best way to connect your CRM database to other systems. 我个人不太喜欢该界面及其逻辑,但它仍然是将您的CRM数据库连接到其他系统的最佳方法。 We've been using it to connect customers' MSCRM systems to SAP, Navision, Axapta, Oracle and other databases. 我们一直在使用它来将客户的MSCRM系统连接到SAP,Navision,Axapta,Oracle和其他数据库。 There are adapters for a number of systems, and it also supports native SQL server and ODBC connections. 有许多系统的适配器,它还支持本机SQL Server和ODBC连接。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM