One key element of any successful CRM project is the ability to migrate data and keep data integrated between applications. In order to have a stable and viable Microsoft Dynamics CRM environment you need to ensure that all your data integration and migration
is done using a supported method. Directly modifying data in the database is not supported for a number of architectural reasons. This means that you should not perform direct inserts, updates or deletes. Instead, you should interface with CRM by leveraging
the CRM web services and supported methods. You can find the information needed in the
Microsoft Dynamics SDK. There are different supported ways to read data from CRM: one is to use the CRM web service, the other is to use SQL statements to query the CRM filtered views. Note that the second option is not available if using CRMOnline, so
you can use the CRM web services to retrieve data from CRMOnline.
Since there would be significant development effort to build code from scratch to use the CRM web services, and others have already created integration applications, most choose to use one of the available tools. One common tool is to use SQL Server Integration
Services (SSIS) when combined with one of a few 3rd party CRM-SSIS adapters. Other ETL vendors have been adding CRM webservice adapters and other supported tools to their own suites.
From a feature perspective all data integration solutions have some similarities and generally include the following basic features:
Another consideration when determining which tool is right for you is to understand the technical resources that are available to you. Do you have inhouse developers who are familiar with SSIS? Maybe you have CRM business analysts or CRM system administrators
who might be more comfortable with Scribe or a similar tool. Regardless of the tool you select, all will have a learning curve. While SSIS is more likely a “go to” tool for developers, Scribe might be easier for a business analyst type to use. In either
scenario, it is generally a good idea to obtain a trial version of the tool and try it before purchasing.
Most of the tools are designed around a batch processing model, in which a set of records is read from a source system, transformed (if necessary), then written to a destination system. These tools are normally scheduled to run on a periodic basis. Of the
tools listed below, Microsoft Biztalk Server would typically be described as a middleware tool that uses an alternative model, which is message-based. Microsoft Biztalk Server is a powerful tool so one consideration is the expertise of your Biztalk resources. In
this model, the source system would typically write data as it is changed as a message to the middleware tool. The middleware would then perform any transformation or routing logic, then update the destination. There are further differences between a batch
processing model, and a message-based one, which are beyond the scope of this article, but may also impact your choice of integration tool. In addition to batch you also can consider real-time and near time integration.
There are many options for integrating your Microsoft Dynamics CRM system with other in-house and third-party systems. The list below represents some of the data integration solutions available for Microsoft Dynamics CRM: