Technology Blog Posts by Members
cancel
Showing results for 
Search instead for 
Did you mean: 
harnav43
Explorer
787

When working with SAP Master Data Governance (MDG), it’s common to face situations where a field behaves differently than expected — maybe it’s hidden for one user role but visible for another, or a layout change doesn’t appear. These issues often come down to how different UI layers interact with each other.

To make sense of it, let’s walk through how SAP MDG decides which configuration takes effect when you use standard setup, CBA, customization, and enhancements.

Standard Configuration – The Starting Point

Every MDG screen begins with the standard SAP configuration. This includes the delivered Floorplan Manager (FPM) setup, feeder classes, and event logic. Think of this as the foundation. Everything else — from customizations to enhancements — builds on top of it.

Context-Based Adaptation (CBA)

CBA allows you to adapt the UI depending on the context — such as a business role, change request type, or entity type. If more than one CBA applies, the system picks the one with the highest priority (defined by the lowest numeric value in customizing). CBA runs before any runtime logic and overrides the standard configuration. It’s the best option when you want different screens or layouts for different user roles or processes.

UI Customization

Once the relevant configuration (standard or CBA) is loaded, the system applies any UI customizations you’ve made. These are the changes you do in the FPM configuration editor — for example, hiding a field, changing labels, or adjusting layout groups. If both a CBA and a customization touch the same field, the CBA takes priority because it decides which version of the configuration is active.

UI Enhancements

After all the configuration-based layers are applied, enhancements come into play. These are ABAP-based runtime changes done through custom logic or BadIs. Enhancements have the highest priority because they run at runtime and can override anything set in configuration or CBA. For example, even if a field is hidden in CBA, an enhancement can make it visible again based on business rules.

Summary of Priority

Priority| Layer| What It Does

  1. (Lowest)| Standard Configuration: SAP-delivered default setup
  2. CBA: Adjusts UI based on context (role, CR type, etc.)
  3. UI Customization: Static FPM-level changes
  4. (Highest)| UI Enhancements: Dynamic ABAP logic at runtime

harnav43_0-1762177544973.jpeg

 

Best Practice:

  1. Use CBA for context-based variations (like role or process-specific screens).
  2. Use UI Customization for layout or field visibility changes that stay constant.
  3. Use Enhancements for dynamic, condition-based logic at runtime.

 

Understanding this order helps avoid conflicts between configurations and ensures your MDG UI behaves consistently. It also makes your design easier to maintain and extend as your governance processes evolve.

3 Comments
XiaolangSolar
Product and Topic Expert
Product and Topic Expert

I think you still missed one point is UI Enhancement in UI configuration which is different from Feeder Class/Webdynpro Controller Enhancement via ABAP Codes.

harnav43
Explorer
0 Likes

@XiaolangSolar  : thanks for raising it, i actually considered both as part of customization at UI level. Let me add more details to it. I will add it in blog. 

michael_theis
Product and Topic Expert
Product and Topic Expert

Hi, 

please consider our SAP MDG How-To Guides for extending and/or changing predefined SAP MDG functionality. The guides provide links to SAP documentation (for example to the Floorplan Manager, Master Data Governance, and so on);  explain technical details; and share SAP MDG recommended example on how-to do things in the right way preventing potential issues. 

Please be careful with the article above. It is in some areas not in the required level of details - and especially the best practise "Use Enhancements[...]" is something the SAP MDG standard does not recommend at all because of known (performance) issues. 

Best regards

Michael