If you are upgrading from AX 2012/AX 2009 to D365 FinOps, you need to do the code freeze before starting the code upgrade step. But we can’t avoid the bugs and high priority changes, in these scenarios, we do the code changes and later we need to move those changes to D365 FinOps. Unfortunately, we don’t have any tool to import XPO file in D365 FinOps.
How the upgrade process works and why we need code freeze?
The upgrade team take the model store and business database backup and import the model store on LCS and LCS upgrade tool converts the AX 2012 model store to D365 FinOps codebase and some code conflict issue will appear based on our customization, so the upgrade team need to fix those issues. So, our new AX 2012 system code changes are detached with D365 FinOps codebase, in other words, there is no link between our AX 2012 system and D365 FinOps. It is very high level, refer here for more information.
Once the upgrade process is done and got the development environment, we need to move our code changes.
Consider the followings
1. Which bugs we fixed
2. Which change request we worked
3. What are objects are modified/created for the specific bug/change request
4. What change we done on the objects for the specific bug/change request
It is very complicated process, if you don’t have project management system. In this case, we need to capture every change on Excel or somewhere and need to keep xpo before change and after change.
It is very simple, if you are already using DevOps for both project management and source control. Before upgrade start, move current sprint’s pending changes to production and make a note that from which sprint we need to move our new changes. That’s it.
Whenever we do the code check in, we need to select the specific work item, so we can easily track what are the changesets are involved for the specific DevOps work item.
If you did lot of customization after upgrade,
1. We can export model store and import on LCS and follow the same upgrade process and move your changes, but it is very complicated process and we need to invest lot of time.
2. The second option is manual code move,
First you can move data dictionary related changes to D365 FinOps, so the upgrade team no need to wait for you to do the latest production data upgrade. Slowly we can move our classes or reports related changes.
We can’t easily compare the report design related changes between two versions. So, better open the report on VS in AX 2012 server and copy the rdc file to D365 FinOps machine and open in VS, restore the dataset and copy paste the entire design elements.
For more information related to AX 2012 version control, please refer here