Thursday, January 20, 2011

Uploading CRM data from one CRM server to another.

Hey… another cool thing that I found in MS CRM 4.0 is this.

Problem Definition:

We need some custom entity to hold configuration data especially when you wanted to develop public facing web portal which uses MS CRM as back end. Then we should upload those configuration data to QA, Staging or Production at the deployment process. Out of the box customization import process won’t be a benefit, since it only imports entity schema, form customization, views and pick list data. And also data import tool available in out of the box CRM cannot be used, when we have complex configuration data such as XML and HTML and so on. So we should think of some custom development or a tool that handles complex data.

Solution:

There were many tools in the internet, that uses excel sheet to import and export data. They were not suitable to my requirement since I have complex data. Importing and exporting complex data from and to excel sheet (comma separated) breaks in the middle. So I thought of way to connect to CRM server and import those data into the grid and connect to the target server and export those data to target server.

I found great tool "Microsoft Dynamics CRM Bulk Update and Export tool" developed by “OrbitOne”, that has grid to hold imported data. But that tool also has no ability to import those data into the grid and connect to another server and export those data. But it has ability to load data into the grid from CRM and edit them on a tool and save back to the same server. Wow…. it was great opportunity for me to customize that in a way that it provides my requirement.

So what I did was load the data into the grid and added button “Change Connection” to launch the logging window, which has connection information to connect to CRM, to change connection to target server. Out of the box tool only has ability to load the data at edit mode. So I added another button “Get from CRM Create Mode” to load data at create mode.

Download Customized Tool (exe)

Download Customized Source Code

To download the file you must agree to the following license.
How to Import and Export CRM data:

  1. Run OrbitOne.CRMUpdater.exe
  2. Provide web service connection info to connect to your source environment.
  3. Select entity.
  4. Select view.
  5. Click "Get from CRM Create Mode".
  6. When data are loaded into the grid then click "Change Connection".
  7. Provide Connection info of CRM to where you need to upload data.
  8. When connection was successful, click “Export to CRM”.

Note: If you are exporting foreign keys, target server should have same keys in foreign key reference entity as the source server.

-Thushara Manchanayake-

http://dynamicscrmhelper.blogspot.com/

No comments:

Post a Comment