Data Migration Wizard: Express versus Standard Mode

The Data Migration Manager is a powerful feature in Microsoft CRM 4.0, designed to handle the migration needs of your organization. The main component of the Data Migration Manager is the Data Migration Wizard, which guides you step by step, in migrating the data into Microsoft CRM. The basic steps of how to migrate the data using the Data migration manager was explained in an earlier blog.

The Data migration wizard runs in two different modes: the Express mode and Standard mode. In this blog, I will briefly explain what these modes are, the differences between them and how to select the mode, based on your requirements.

The two modes in the data migration wizard are designed to serve two different purposes. If you are an administrator of your organization and you want to migrate your data in to Microsoft CRM. You are already provided with a generic data map. A data map is an XML file, containing the mapping information between your source data model and CRM data model and is further explained here. This data map is provided to migrate your data into CRM

However you may have few extra custom attributes and custom entities of your own. You will then want to define your own mapping for migrating the data in to these customized sets. The Express mode is designed in such a way that, it will only require the mapping information from you only if it is not present. In this scenario, you start with a default data map and add your CSV files. After processing your data, the wizard recognizes the unmapped objects and prompts for any mapping information from you. Once you have provided the mappings, the wizard proceeds for migrating data.

The standard mode is the best option for a partner or solution provider who wants to create a custom data map for a specific customer (or) needs to edit an existing data map to create another data map. Start the wizard in standard mode and supply a set of sample files (small size representative data). Then you can map the files, columns and users according your requirements. You are also provided with the option of reviewing the mapped objects and change the existing mapping.

Note that Data migration wizard currently doesn’t have an option to create transformation mappings in the data map. (A tool is available to create a data map, including the transformation mappings.) These have to be created by manually editing the XML file.

Once you have finished mapping all the objects, migrate the sample files. After the successful migration the data map will be stored in the database and can be accessible from the manage maps screen. If you want to add transformation mappings, click export from the manage maps screen and save the data map to your local computer. You can then edit this data map file and add transformation mappings.

Express mode, as the name suggests is designed to run with very little user intervention. When the wizard is running in Express mode, it stops only when it needs some input from you. After you supply the data, the wizard directly proceeds with migrating the data unless it needs any further info.

Standard mode in contrast, provides much flexibility by allowing you to revise/change the mappings at every step of the migration. The below screen shot shows the screen, where you can select the mode, in which the data migration wizard should run.


The three different mappings that wizard allows you to define are:

  • file mapping
  • column mapping
  • user mapping

Let’s call each of them (File, column and user) as an object for general use. Each of these mappings have a result page (File mapping results, column mapping results and user mapping results) which shows the mapped and unmapped objects. When the wizard is running in Express mode, this page will be shown only when the wizard encounters some unmapped objects.

The major difference between the Standard mode and Express mode are, in Standard mode you are provided with the option to review the mapped objects and change the mappings for the same. (See the screen shot below.) When you have selected to review the mappings the object mapping page is presented with the mappings from the data map pre-populated. You can change the mappings here according to your requirements.


In contrast to this, Express mode doesn’t have the option to review the mapped objects. (See screen shot below.) The mapped objects are not shown in any of the screens as you are only allowed to change the mappings for only unmapped objects.


Consider you are using the following data map in your data migration.

   1: <?xml version="1.0" encoding="utf-8" ?> 
   2: - <Map Name="User_8392" Source="">
   3:   <Description /> 
   4: - <EntityMaps>
   5: - <EntityMap TargetEntityName="account" SourceEntityName="Account">
   6: - <AttributeMaps>
   7: - <AttributeMap>
   8:   <SourceAttributeName>number</SourceAttributeName> 
   9:   <TargetAttributeName>accountnumber</TargetAttributeName> 
  10:   <ProcessCode>Process</ProcessCode> 
  11:   </AttributeMap>
  12: - <AttributeMap>
  13:   <SourceAttributeName>name</SourceAttributeName> 
  14:   <TargetAttributeName>name</TargetAttributeName> 
  15:   <ProcessCode>Process</ProcessCode> 
  16:   </AttributeMap>
  17:   </AttributeMaps>
  18:   </EntityMap>
  19:   </EntityMaps>
  20:   </Map>

The data map contains mapping information for the two attributes ‘name’ and ‘number’ of your Account.csv file. Suppose, your source file (Account.csv) contains an extra attribute ‘Custom1’, The express mode recognizes the unmapped attribute and provides an option to provide the mapping as shown below.







Custom data1



Custom data 2

(Your Account.Csv file)


If you use the standard mode, the unmapped attribute ‘Custom1’ is provided. However you can also review/change the existing mappings of the ‘name ‘and ‘number’ attributes, as shown below.


There is no difference between the data maps created by either of the modes. The data map created doesn’t hold any information, specific to the Data migration wizard or CRM server and their version. The data map that generated out of your migration can be reused seamlessly on any data migration client. Export the data map, by selecting it and clicking 'Export'. Click 'Import' from the manage maps screen of your other Data Migration Client, select the location of the data map file and press OK. Once the data map is successfully imported you can reuse the data map in your data migration.

The express mode is a valuable feature if you are repeating the same migration multiple times. Once all the mappings are correctly defined for the first migration, all subsequent migrations can be done with just a few mouse clicks. The standard mode is a very good option when you want to create new maps or edit few mappings before proceeding for the migration. With the provision of two modes, the data migration wizard preserves the simplicity of the task of a normal user while handling the complex tasks of a power user. Together these two modes enable you to smoothly handle your data migration.

Sandeep Akinapelli

Comments (4)

  1. Paul Atkinson says:

    I have a data migration defined in the DMM that cannot be done through the built-in Data imports.  It works great, but what I really need is a way to make it happen every night when the data is exported.  Do you know a way to kick off the DMM in Express mode unattended?

    Thanks for any help,


  2. Among a rich concourse of features being offered by Microsoft Dynamics CRM 4.0; one is Data Migration

  3. Sandeep says:

    The express mode of DMW operates in exceptional mode,  i.e., when there is an exceptional case of an entity/attribute being not mapped, it halts and asks for the input.  Also, there might be action needed from user for errors at various phases. Hence, DMW doesn’t completely support the command-line silent migration scenario. Those few mouse clicks are still needed to get it to the final migration.

  4. Paul Atkinson says:

    What I hope to see in a future revision of the data migration tool is the ability to kick it off on the command line…if it requires input that’s not provided in a command line argument, it could throw an error and stop.  For well-defined inputs, though, it would be very convenient — in fact, required by one of my customers — to do a nightly import of new data.

    In the mean time, I’m exploring software to perform the mouse clicks by rote.

Skip to main content