Preparing your data migration via Data Import Templates

I’m involved in a lot of Dynamics CRM data migration/integration projects. I know how much time it takes to analyse, clean up and import the data into a Dynamics CRM system. If you’ve done this in the past, then you know it can get complicated very quickly. Definitely if you have a lot of relationships.

With this version of Dynamics CRM I was pleased to see that you get some extra help in preparing your data fore the import. With CRM 2011 you can generate templates via the system that will help you with the preparation of your data. These import templates are in an XML format which you can open with Excel.

Generating the import template from an entity view

Generating the templates is done via the CRM 2011 system and it’s very easy. You can generate it per entity or from a more central location. Let’s say I want to retrieve the template for the account entity. I just navigate to the accounts view and click on “Import Data” from the ribbon. In the dropdown list, select “Download Template for Import”.

image

Generating the Import Template via the settings area

If you want, you can also retrieve the templates via the settings area. To do this click on “Data Management” in the left hand navigation. From this view select “Templates for Data Import”.

image

This will open a window with a dropdown where you can select an entity from. Once you have made your selection, click on the download button to download the template.

Opening the Import Template

Once this is downloaded, you will notice that it’s an XML file. But no worries, you can open it in Microsoft Excel. At least when you have unblocked the file. This is just a security measure to prevent you from opening unwanted dangerous files. If you don’t unblock the file, you will be get the error message “The file is corrupt and cannot be opened”.

image

To unblock the file, right click on the XML file and open the properties. Here you will see a button to unblock the file.

SNAGHTMLa3656bc

Now you should be able to open the template without a problem and you should see something like this:

image

Inspecting the Data Import Template

This is an extremely handy Excel file to have and it will help you a lot when you are preparing the data. Here is a list of features about the Import template:

  • - The required fields are marked in bold.
  • - The column headers are the same as the display names of your CRM 2011 fields in your entity. Because of this, CRM 2011 will automatically map your data to the correct fields during the data import.
  • - All the fields from your entity are in here, so you don’t  need to open your entity all the time and copy over the fields.
  • - If you click on the header you will see the description of the field.
  • - Option set fields contain a dropdown so you can easily select your value. No incorrect spelling and all the possible values are right there in Excel.

image

All that is left to do is to fill in the Import template and import it using CRM 2011.

Migrating from CRM2011 Online to CRM2011 on premises

A lot of times I read on forums that people are asking if it is possible to migrate their data and customizations from CRM2011 online to CRM2011 on premises. Customizations is not really a problem because you can just import and export the solution. However, migrating data is not so straightforward.

Many companies first start with the CRM2011 Online and then later migrate to CRM2011 on premises. Why do they do this? Here are some possible reasons:
- Because CRM2011 Online might have technical limitations for their specific needs  (not that there are so many differences)
- They didn’t want to pay for server licenses and CALs in the beginning because they were just "trying out" CRM2011.
Now after some time they see what a great product Dynamics CRM is and want to invest in implementing it in their own environment.
- They don’t like the idea of having their company data in the cloud and not in their own environment. (I think we can trust Microsoft
with our data, but you would be surprised how many companies think like this)
- Legal issues: In the past I was working with a customer that wanted to change certain clauses in the contract, because they didn’t agree with certain points. From experience I’ve learned that Microsoft rarely or never changes its contract.

I’m not saying these are all valid reasons to switch. There are also many benefits of choosing for CRM2011 Online, think of scalability for instance.

But if we come back to the question: Is it possible to migrate data and customizations from CRM2011 online to CRM2011 on premises?
Yes it is, no problem! To support this procedure Microsoft has released a handy whitepaper that will guide you step by step through the process
of migrating your online CRM2011 organization to CRM2011 on premises.

You can download the whitepaper via the following link: Microsoft CRM Online Data Migration to Microsoft Dynamics CRM 2011 on-premises

Another solution is to use a third party data migration application like Scribe. Using this application you can connect to your online environment and your on premises environment to copy over the data.

Prototyping CRM2011 applications

In the past when I was mainly working on custom software development projects, I liked to wireframe my application before actually diving into the code or IDE. To create these mockups I used tools like Balsamiq.

Creating mockups can save you a lot of time. Definitely when you need to start from the ground up. You don’t have to worry too much about functionality or the esthetical part of the application. The client will not start complaining that he/she doesn’t like that certain tone of grey that you have used or that a certain button doesn’t behave exactly like it should.

With Dynamics CRM this is of course a different story. First of all, you get already the base functionality straight of the box. Second, there will probably not be a lot of discussion possible concerning the GUI  of the application itself. Normally you stick to what you get out of the box.

However I see some added value in wire framing, prototyping or sketching your CRM2011 application. I will come back to that later on.

I went looking for some decent approach to start prototyping Dynamics CRM applications and my search brought me to mSketch from Magnetism. mSketch is a collection of stencils that can be used to create mockups of CRM2011 applications. All the work is done with Expression Blend 4 SketchFlow. If you don’t have that much experience with this tool, I would really advice you to check it out. This great tool was introduced by Microsoft to shorten the bridge between developer and designer creating WPF or Silverlight applications. The company Magnetism was also no stranger to me because I had been following their blog posts and work on Twitter for a while.

With mSketch you get a solution that you can open with Expression Blend. This solution contains the CRM2011 forms predefined by Magnetism. These forms you can then use to create your own implementation. A nice to have would be to have an installer that would install the stencils as a project type in Expression Blend.

I was quite impressed by the level of detail that the team from Magnetism had put in the creation of these stencils. The ribbon, the tabs, the fields.. a really nice job in total. Magnetism also provided a decent user guide that you can use working with the mSketch stencils. This is always on my checklist when I try new tools or applications: Is there a decent user guide that will actually help me? Yes there is with mSketch, check it out here: http://help.magnetism.co.nz/#getting-started-with-msketch

Here is what the stencils look like inside Expression Blend:

image

Ok, so the stencils gave me a great head start. All I had to do now was to copy one of the forms in my own solution and start the customization of my custom CRM2011 application. Using sketchflow functionality you can define the paths that your application needs to follow. Once completed I just had to push F5 and I had a running prototype of my custom CRM2011 application.

image

Now to come back to a previous discussion, what are the benefits of prototyping your CRM2011 application? Here are some of the benefits I see with prototyping a CRM2011 applications.

1) You can use Expression Blend 4 and the mSketch stencils together with a client to rapidly workout a draft of their CRM2011 application.

2) The client can easily play around with the mockup using the sketchFlow preview created by Expression Blend. This can be deployed to IIS.

3) You don’t need to have CRM2011 installed from the beginning, everything is done in Expression Blend (or IIS for the testing). In cost and performance requirements this makes a big difference.

4) You can limit the discussions concerning the placement of fields, the ribbon, the operations or scripts on a form. You can explain that this is just a draft, a prototype. The full functionality will come later.

More information on the Magnetism mSketch stencils: http://www.magnetism.co.nz/solutionscasestudies/solutions/msketch.aspx
mSketch user guide: http://help.magnetism.co.nz/#getting-started-with-msketch
More information on Expression Blend 4 + SketchFlow: http://www.microsoft.com/expression/products/blend_overview.aspx