<aside> π§
Navigation:
</aside>
This white paper provides an overview and a detailed view of pitfalls making painful a data migration related to Dynamics 365 or Dynamics CRM.
Regardless the type of data migration (migration to Dynamics online or migration to Dynamics On-Premises), native and custom items could delay the data migration process.
Those items should be categorized into 5 groups: data context, platform context, functional context, code context, architecture context.
Data Migration, D365, Dynamics 365 On-Premise, Dynamics CRM On-Premise, Pitfalls, Data Context, Platform, Code, Customizations, CRM services, Data security Model, CRM Functionalities, CRM Database.
The white paper does not provide any confidential client data related to data migration. All the code in this white paper is only related to the CRM SDK365 code.
A data migration focuses on the movement of data between source (legacy data system and business) and destination (target system). Β Hence, in our white paper, a data migration will focus on the movement of data between Dynamics CRM / 365 on-premises (source) and Dynamics CRM / 365 on-premise or online (destination) [1].
However, pitfalls are real and can delay the data migration. Even with the most thoroughly tested tools and procedures, we need to identify those pitfalls and find a way to overcome the latter.
Without emphasizing the technical aspect of an option, in this case, whether it is a "Cloud" technology (cloud technology) or an "on Premise" technology, there are two execution contexts [2]:
| OPTION | DATA SOURCE | DATA DESTINATION | DESIGN OF SCENARIO |
|---|---|---|---|
| TYPE A | DATABASE (DB) | DATABASE (DB) | DB/DB |
| TYPE B | DATABASE (DB) | SERVICE | DB/SERVICE |
Emphasizing the technical aspect of an option, what does it mean regarding the platform Dynamics CRM or Dynamics 365?
| OPTION | DATA SOURCE | DATA DESTINATION | DESIGN SCENARIO | DYNAMICS 365 |
|---|---|---|---|---|
| TYPE A | DATABASE | DATABASE | DB/DB | FROM DYNAMICS ON-PREM TO DYNAMICS ON-PREM |
| TYPE B | DATABASE | SERVICE |
From these options, could be extracted the cases of so-called figures specific to each execution context mentioned in the table above (types a, b, c, d, and e). So, what is a specific option?
A specific scenario is characterized by the following three elements: the data and metadata structure, the technology or platform in which the transfer is constrained and the technological context, and finally, our last element, which is the version and build number of the platform.
| OPTION - TYPE A (DB/DB) | DATA AND METADATA STRUCTURE | TECHNOLOGY/PLATEFORM | VERSION/PLATFORM BUILD NUMBER |
|---|---|---|---|
| TYPE A β 1 | SIMILAR STRUCTURE | SIMILAR PLATEFORM | SIMILAR VERSION |
| TYPE A β 2 | DIFFERENT STRUCTURE | SIMILAR PLATEFORM | DIFFERENT VERSION |
| TYPE A β 3 | DIFFERENT STRUCTURE | DIFFERENT PLATEFORM | DIFFERENT VERSION |
| OPTION - TYPE B (DB/SERVICE) | DATA AND METADATA STRUCTURE | TECHNOLOGY/PLATEFORM | VERSION/PLATFORM BUILD NUMBER |
|---|---|---|---|
| TYPE B β 1 | SIMILAR STRUCTURE | SIMILAR PLATEFORM | SIMILAR VERSION |
| TYPE B β 2 | DIFFERENT STRUCTURE | SIMILAR PLATEFORM | DIFFERENT VERSION |
| TYPE B β 3 | DIFFERENT STRUCTURE | DIFFERENT PLATEFORM | DIFFERENT VERSION |
Before the list of types mentioned above, it should be noted that our data migration takes place in TYPE A and more precisely in TYPE a-3.
Migration is the migration of data considering the three elements of our definition regarding our option:
β CRM data and metadata structure differs from the D365 data and metadata structure.
β The technology and the platform are different. From a .NET point of view, even if the platforms are based on the .NET Framework, their physical and application architectures differ from each other.
β Hence, their versions and build numbers differ from each other.
| OPTION - TYPE A (DB/DB) | DATA AND METADATA STRUCTURE | TECHNOLOGY/PLATEFORM | VERSION/PLATFORM BUILD NUMBER |
|---|---|---|---|
| TYPE A β 1 | SIMILAR STRUCTURE | SIMILAR PLATEFORM | SIMILAR VERSION |
| TYPE A β 2 | DIFFERENT STRUCTURE | SIMILAR PLATEFORM | DIFFERENT VERSION |
| TYPE A β 3 | DIFFERENT STRUCTURE | DIFFERENT PLATEFORM | DIFFERENT VERSION |