I was wondering if we upgrade the code from AX 2012 to D365FO, will the code in AX 2012 merged into one single model in D365FO? Or we can separate different layer code into different models?
You can use the reference models but one really good point mentioned by Martin is t o avoid splitting the customizations into too many separate models. It becomes a bit too cumbersome and complex to maintain objects spread across multiple models.
The other point is while maintaining models in D365 F&O from Ax2012 would recommend you to choose one core model and determine the most important objects (form a critical part of the business operation) to reside in that core model. As Martin said, take the version from the highest layer and design your model based on these layers.
Also, having too many models could complicate your build and release pipelines in Azure DevOps. If we have too many models then the deployable package will capture all these custom models too growing the size of the deployable package and this will impact the deployment time from lower to higher environments.
Martin Dráb234,037Most Valuable Professional
on at
If I remember the process correctly (which I'm not sure about), you get all your customization in one model, plus you'll get a plenty of other models in standard packages for your overlayered elements, which you'll have to convert to extensions (or solve by some other way).
Moving elements between models and even packages is easy, but it's questionable whether splitting your customizations to several models is a good idea. It'll have costs for the upgrade and complicate all future your development. But maybe it's worth it in your case; it depends on details of your current solution.
Note that if you have the same custom element in two layers (= overlayering), you would define it in one and extend it in the other. If you have overlayered code, you may need to redesign the whole thing (splitting methods, using IoC or so), while when using a single model, you'd simply take the version from the highest layer.
You can merge the code from AX 2012 into a single model in D365FO, but it's not necessarily the best approach. This method might lead to:
A large, complex model that's difficult to maintain.
Potential conflicts between different layers or customizations.
Functional areas: Separate models based on functional areas, such as finance, logistics, or human resources.
Customizations: Create separate models for customizations to keep them distinct from the standard code.
Layers: If you have existing layers in AX 2012, you can create separate models for each layer to maintain the same structure.
Thanks, Ramesh
Under review
Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.