This is the Third post on my new blog about Data Migration Framework and as promised I will deliver something interesting.
Our team are using the Data Migration Framework to import data into Dynamics AX 2012. We have created a lot of custom entities, which has been challenging given the lack of documentation on the subject. I thought I’d share a tutorial how to import data in to AX by using existing Custom entity.
After installing the framework you will be able to start using it with some of the entities that are already delivered like customers, vendors, customer addresses, vendor addresses, open sales orders, … you can find the entire list in the documentation or in the Target entities form in the Data Migration Framework Area Page.
let walks through set up of Data Import Export Framework very briefly
Setup shared directory
An important first configuration is to provide Location of Shared Directory. Click Data Migration Framework->Setup->Data migration framework parameters. Provide the path to a shared directory and click Validate to let system verify the path. This directory will be used by DMF to put some files for internal use. User configuring the shared directory path must have Read/Write permission on the directory.
Setup source Data Format
There are demo files you should look at. http://technet.microsoft.com/EN-US/library/jj225593
C:\Program Files\Microsoft Dynamics AX 2012 Data Migration Framework (Beta)\DemoFiles\Delimited
Click on Data Migration Framework > Setup > Source data formats to set up your source data format. Currently there is on flat file imports available with possible future enhancements from Microsoft to support other types.
Give Source Name e.g. CSV in Description column write CSV File, inType column select File, then assign the additional details about the data source in right pane of Source Data Format Screen.
Multiple value separator
1. Role Separator – This is used to display multiple values in a column e.g. if a customer have multiple email addresses. We will use semi column for our example.
Create Processing Group
Next step is to create Processing Group. Processing Group is similar to Definition Groups in AX 2012. Click on Data Migration Framework > Common > Processing group.
From the Processing group form, click on Entities.
Create a new record. In this example I created one for a Vendor import. The Sample file path field will be blank.
Note: You can use the demo file located under the installed folder. C:\Program Files\Microsoft Dynamics AX 2012 Data Migration Framework (Beta)\DemoFiles
If you use the Demo files, then skip steps 5 to 7. If you want to modify the columns, then do steps 5 to 7, as it will ask you if you want to modify the existing file format.
Generate a sample file by clicking on Generate source file button. Follow the wizard and select the fields to import.
Then click the Generate sample file button. This will open up the sample file in notepad.
Click Finish when done. Now fill in your data on the txt file.
Back on the main form click the Generate source mapping button. This will analyse the file and do the mapping between the file and the stagging table.
Now you can open and view the mapping by clicking on the Modify source mapping button.
It should looks something like this. The Source is your txt file and the Staging is your staging table in AX. If your source file is messed up, you should be able to see it here.
Click Save button when done. Now validate the setup by clicking the Validate button on the main form. click on View target mapping. This is a mapping between the Staging to the Target table. This should already be predefined. You can however modify the mapping.
Notice a the Function options on the left. These are predefined methods in the class to allow you to execute business logic. The example below, when you pass in a string of dimensions A-B-C, the GenerateDefaultDimension function splits the string up and generates a DefaultDimension RecId. A similar thing happens with the GenerateParty, which creates all the required global address book records to return a Party RecId.
Back on the main form.Click the Preview source file button. This loads up the file, to give you a preview of your file..
Go back to the Processing group form and click the Get staging data. This opens up a dialog with the processing group, click OK. You will then get this form.
Click on the Run to run client side or Click on Run on AOS to run server side. Usually, the user account doing the import wont have access to SQL integration servers. Use the second option and it will run under the service account. This should run and complete with out errors.
You can now see the staging table by going to the Execution history from the Processing group form. From there you click the View staging data button. You can modify the staging data before you process it to the target.
To process to the target, click on the Copy data to target button. Follow the options to execute the process.
You are now done. The result should be the vendor record created.