Download presentation
Presentation is loading. Please wait.
Published byAdele Strickland Modified over 9 years ago
1
Smart customizations Microsoft Dynamics TM AX 4.0 Michael Fruergaard Pontoppidan Partner Productivity – Microsoft Dynamics AX TM Microsoft Corporation SCREENCAST
2
Agenda Overlayering How to avoid overlayering Unit testing Code upgrade
3
Overlayering Applications elements vary in size Forms and reports are big Tables, menus, queries are medium Fields, field groups, methods, etc. are small
4
Overlayering Empty layers An empty layer is transparent Elements from lower layer(s) are used
5
Overlayering Customizing Customizing existing elements will Copy of the existing element to your layer Hide existing elements
6
Overlayering Upgrade conflicts During version upgrade conflicts occur when You have customized an element, AND Microsoft has changed the element = cost = waste Upgrading costs 30% of original cost
7
Overlayering Lessons learned Avoid overlayering when possible Prefer overlayering of small elements Prefer overlayering elements less likely to change Creating new elements is not ’overlayering’
8
Overlayering
9
Agenda Overlayering How to avoid overlayering Unit testing Code upgrade
10
Avoiding overlayering IntelliMorph Use field groups Use extended data types X++ Use class substitution
11
Extended Data Types Fields Fields groups Locale Authorization Configuration Personalization Preferences Regional settings IntelliMorph The User Interface in AX is build at runtime Forms Reports Web forms Web Reports Menus
12
> Original New() Dialog() Run() static Main() static Construct Class substitution Goal Make customizations to a class with as little overlayering as possible Idea Ensure all instances of a class are replaced by a class of your choice > Substitute New() Run() static Construct() Steps 1. Create a new class, inheriting from the class to substitute 2. Change the original class’s Construct method > Original New() Dialog() Run() static Main() static Construct(usr)
13
Avoiding overlayering
14
Agenda Overlayering How to avoid overlayering Unit testing Code upgrade
15
Unit test In a nutshell Purpose: Detect regressions Test code exercising feature code Written by the developer Repeatable
16
Unit test MorphX integrated Fully scalable architecture Recording of code coverage Fully automated Outputs to: XML, DB, TXT, etc. Supports repeatability Supports Test Driven Development
17
Unit testing
18
Agenda Overlayering How to avoid overlayering Unit testing Code upgrade
19
Detecting Upgrade Conflicts Has Microsoft modified the element ? Are our changes identical ? Have you modified the element ? Delete (obsolete)Add to projectIgnore No Yes
20
Overlayering Upgrade conflicts During version upgrade conflicts occur when You have customized an element, AND Microsoft has changed the element
21
Upgrading smart customizations
22
© 2006 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.