Blog

Microsoft Customer Relationship Management Data Migration

Microsoft Dynamics CRM Logo

Microsoft’s customer relationship management system, better known as Microsoft CRM, is a tool used by companies to organize, track, and maintain healthy relationships with its clientele. It’s not unusual for businesses to be a few updates behind the newest software. In order to migrate a CRM server to a newer version, its data will need to be extracted. There are two different ways to do this. One is to export directly out of the CRM application through its export button, the other is to export via CRM’s SQL server. When attempting to export data for a server migration, using your CRM SQL server provides significant advantages over the built in CRM exporter.

As a company prepares for a data migration, it’s important to make sure all data is accounted for. Missing a portion of contacts, emails, or leads would be very detrimental to a sales department. The built in export function in CRM is limited to just ten thousand rows of data. This is a massive limitation, as even a small company will amass tens of thousands of emails over a few years. The workaround to this problem is to select a set of filters that contains every row without duplications. For example, splitting up emails by the first letter of their subject. 26 different spreadsheets, one for each letter of the alphabet, would need to be created to bypass this limit. To make things worse, if just one of those spreadsheets is over 10,000 a different set of filters would need to be used. How does using a SQL server combat this? SQL isn’t subject to the same ten thousand row limit, all you need to do is choose what you want to export, and copy it over into excel. An SQL query will show all data requested, and isn’t subject to the same limitations as the CRM Client.

With a little bit of programming expertise, SQL server queries can be customized to browse through all the data you need. Altering query code allows for fast and efficient changes to export settings. In order to test data exporting in the CRM client, a full export to excel must be completed. This can take up to a minute to complete. If any additional changes are required you have to re-do the entire export process again.  This process must be done for each and every entity that is slated for export. Each export’s excel file must also be saved, which leads to a folders filled with spreadsheets. It’s essential to have a naming scheme to keep track of which sheets are current and which are from old/testing exports. SQL runs the same commands quickly and efficiently in a matter of seconds. SQL also doesn’t require any saving of data, so no file management is required.

The Microsoft SQL server also shows the specific names and data types that are being exported. One of the downfalls of the built in CRM button is that the names of the exported columns are not consistent with the names in the application.

Additionally, exporting through the SQL server bypasses some of the bugs in the CRM application. In CRM 2011, it’s possible for an export to miss all of a columns data. The sender and receiver columns from emails are commonly effected by this.

The biggest and by far most important reason for using SQL servers over the CRM export button has to do with things called “Unique Identifiers”. These are unique codes that every entry in CRM has. Accounts, Contacts, leads and even phone calls all have a unique ID that is used to differentiate them from anything else in CRM. This is important, as the unique ID allows us to map entries together to create networks of people. Of course this can also be done using other fields, such as names, but the chance of having duplicated is exceedingly high. These Unique Identifiers cannot be exported through CRM. In fact, they can’t be seen anywhere in the application. The only way to access these unique codes is through the SQL server.

Planning a software migrations requires a lot of patience and planning. The size, scale and mapping of data are all important factors to take note of to ensure a smooth transition. As data grows bigger, exporting through an SQL server becomes a better and better option. While the built in CRM exporting functionality may seem convenient, utilizing SQL queries allows users to be faster, accurate, and more efficient when exporting data for server migrations.