Dataverse development tools
There are a number of developer tools that are needed for different aspects of Microsoft Dataverse code development. These tools are listed and described briefly below.
Tool | Description | Documentation |
---|---|---|
Configuration Migration tool (CMT) | Transport configuration and test data from one environment to another | Configuration Migraton tool |
Package Deployer (PD) | Deploy packages to Dataverse environments where the packages contain solutions, custom code, HTML files, and more | Deploy a package |
Plug-in Registration tool (PRT) | Registers custom code (plug-ins, custom workflow activities), service endpoints, and more | Register a plug-in |
SolutionPackager tool (SP) | A tool that can reversibly decompose a Dataverse compressed solution file into multiple XML files and other files so that these files can be easily managed by a source control system | SolutionPackager tool |
Code Generation tool (CG) | A command-line code generation tool that generates early-bound (strong-typed) .NET classes that represent the Entity Data Model (EDM) used by Dataverse | Generate early-bound classes for the Organization service |
What is configuration data?
Configuration data is a type of meta data. Meta data can be thought of as data about data. The values within an Option Set are an example of meta data that will migrate with the movement of solution files. Entities containing data about data, such as a custom entity containing values for a standardized lookup field or Owner Teams, are another type of meta data.
Solutions exported from CRM do not contain data stored within Entities. So how do we move the configuration data stored in an entity across environments? Fortunately, there are an array of options to choose from when determining how to move the configuration data across environments.
Methods and Tools for Migrating Configuration Data (non-exhaustive list)
- Manual Entry
- Dynamics 365 CRM Data Import Wizard
- Dynamics 365 CRM Configuration Migration Utility
- Web Services
- ETL tools such as SSIS, KingswaySoft, or Scribe
Why use the Microsoft Dynamics 365 CRM Configuration Migration Tool?
This utility is particularity helpful when there are multiple entities containing configuration data and you want to move the data in a repeatable and efficient method, without leveraging ETL tools or custom code. With this tool, one can move entity configuration data from Development to Test. Or, Test to Production. Or, ….so many possibilities! When the underlying data schemas are synchronized (this can be done by exporting/importing the CRM solution file), one can move onto migrating the configuration data with the Configuration Migration Tool.
What does it do?
The tool creates a schema file which is used to export and import data as specified in the schema file. The utility allows the user to:
- Specify which entities to include
- Disable plug-ins on all entities before importing
- Enable plug-ins after importing the data
- Specify record uniqueness conditions to avoid duplicate records
- Export Data
- Import Data
What does it look like?
1. Upon launching the CRM Configuration Migration Tool, this form appears allowing the user to select the desired action. For this example, we have specified "Create Schema" and selected Continue.
2. Enter login credentials.
3. After logging in, the user is prompted to select a Solution and Entity.
4. Select the fields to be added for each entity and/or select Add Entity to add all fields in the selected entity. We chose two account fields and the entire Contact entity. Items selected appear on the right and can be expanded as shown here.
5. Next, select Save and Export.
6. Upon saving the file, the user is asked if the data should be exported.
7. Choose to export the data.
8. After specifying the data file name and location select Export Data. The progress of the file generation process is shown.
9. When processing has completed the files generated by the tool are available to review and import. The result of the export looks like this:
And there you have it! Schema and data ready to import into another environment!
No comments:
Post a Comment