Skip main navigation

Demonstration: Configuration Migration Tool

Having been introduced to the Configuration Migration tool in the previous step, we will now be shown a demonstration of it in use
16.5
In this demo, we would like to show you capabilities of the Configuration Migration tool. We have a source system where we have a number of accounts. These accounts include hierarchical relationships as well as the relationships with other entities. So this is the example where accounts have patterned accounts, and we also have contacts that link to the accounts. And each account can also have a parent contact, a primary contact that creates a circular relationship that are notoriously difficult to export and import.
67.4
We also have a destination system that currently doesn’t have any contacts or accounts, so let’s see how we can use Configuration Migration tool to export accounts and context from the source system and import it to the destination. Let’s go to nuget.org. Search for Configuration Migration tool and download the package.
98.3
Package is downloaded this NuGet package file, so all we need to do is to save it to the file system, rename the file to a ZIP file, and then extract the context.
121.7
So once the context is extracted, we simply go to the Tools folder, navigate to that migration utility, and run it. First step of the data export process is to create schema. We’ll log into the source system, and we presented with the choice of the solutions and the entities within these solutions. We select the fields for the Account entity.
163.9
We select a contact entity and continue selecting the fields for the contact entity, and continue this process until all the fields that we are interested in are added. What’s important to notice is that, when we export the account, we include the fields responsible for the relationships of this primary contact ID and parent account ID. For the contact, we include the fields that link it to the company and, potentially, parent contact ID.
211.4
We can also validate the schema, and to improve import performance, we can disable plugins for all the entities or just for selected entities. Now, we’re ready to save this schema so we can reuse it later if we decide to repeat the process, and once the schema is saved, we’re ready to export the data.
238.8
Start the process, and it completes really quickly. Once the export is complete, we are ready to import the data.
251.6
So we connect again, but this time we select our destination system that doesn’t contain any data.
260.8
Once the system is selected, we simply pick up the exported data file that includes data and the schema and start the input process. As you can see the input process is performed in two stages.
281.2
The two perform second pass updates to ensure that all the relationships updated. Now, let’s go to our destination system and refresh the view.
294.8
As you can see, all the accounts have been imported with all the information present, and as we navigate to the account itself, we can see that circular relationships have been successfully imported. That is, the list of child contacts have been imported as well as primary contact has been set. The relationship between accounts has also been imported, preserving the account hierarchy between the systems.

Having been introduced to the Configuration Migration tool in the previous step, we will now be shown a demonstration of it in use

Using the Configuration Migration Tool

1. Create the schema file & export data

  1. Log in to the source system (the system we are taking data from)
  2. Select relevant fields for the chosen entities, as demonstrated
  3. Tools -> Validate
  4. Disable plug-ins if necessary
  5. Save schema for future use
  6. Export Data

2. Import Data

  1. Log in to destination system
  2. Browse for exported data & schema file
  3. Start the import tool
  4. Refresh destination system to confirm the import success

Join the discussion

Other than contacts and accounts, what other recursive dependencies do you expect to run into commonly?

Use the discussion section below and let us know your thoughts. Try to respond to at least one other post and once you’re happy with your contribution, click the Mark as complete button to check the step off, then you can move to the next step.

This article is from the free online

Dynamics 365: Implementing Power Platform Integrations

Created by
FutureLearn - Learning For Life

Our purpose is to transform access to education.

We offer a diverse selection of courses from leading universities and cultural institutions from around the world. These are delivered one step at a time, and are accessible on mobile, tablet and desktop, so you can fit learning around your life.

We believe learning should be an enjoyable, social experience, so our courses offer the opportunity to discuss what you’re learning with others as you go, helping you make fresh discoveries and form new ideas.
You can unlock new opportunities with unlimited access to hundreds of online short courses for a year by subscribing to our Unlimited package. Build your knowledge with top universities and organisations.

Learn more about how FutureLearn is transforming access to education