SAP MDG Online training
SAP MDG Reuse vs Flex
Let’s discuss reuse and flex in SAP MDG. When creating data models here, the default setting is to reuse. Flex is another alternative, but it is rarely utilised.
Recall searching for examples of SAP MDG Flex usage; most configurations relied on reuse rather than being explicitly tailored.
SAP inflexibly defines Flex, thus making examples less important but keeping its concept at heart alive.
Within SAP MDG, flex entities reside in the active area. You’ll often find them nestled within reuse models, making understanding both essential for the successful use of material or BP entities.
Reuse and Flex in SAP MDG
At my first encounter with SAP MDG, I quickly understood its crucial core data modelling strategies – in particular, its reuse and flexibility approaches – along with three core data models available: Business Partner (BP), Material Management (MM), and Financial Accounting (FI).
Each model requires its distinct handling strategy, and understanding where reuse and flexibility can fit within them was key for me in realising success with reuse and flexibility.
Reuse data modelling provides us with the flexibility of working directly with existing standard tables in SAP MDG; reuse is particularly prominent among BP and MM data models.
Change requests initially store data in staging tables for approval before being replicated into active tables such as MARA, LFA1, and E1K.
Witnessed how efficiently and effectively SAP MDG ensures consistent data quality through this method.
Flex modelling comes into its own when handling sensitive or non-standard data structures—an approach particularly applicable in SAP MDG Finance.
Flex differs in that it doesn’t rely on standard tables; instead, it enables custom structures, with data remaining within each change request even after activation, until it is explicitly replicated.
Found this technique especially helpful when creating custom finance entities that don’t correspond with SAP’s standard data tables.
Why SAP MDG Flex Is a Game-Changer for Custom Requirements?
As part of business requirements, SAP MDG Flex is ideal for gathering specific types of data — such as audit trails or user-generated metadata — without permanently storing it in backend tables. It enables businesses to capture particular items quickly.
Created a flexible entity within SAP MDG that enabled the capture of non-standard fields necessary for initiating and monitoring process flows, but without its assistance, it would have been far more challenging to do this effectively.
SAP MDG Flex Modelling also fosters innovation. It enables the creation of self-replicating data flows – a feature especially critical in finance operations, where replication determines whether data from change requests is moved into active tables, such as SKA1, SKB1, or CEPC tables.
SAP MDG excels at combining data governance with adaptability, offering fine-grained control over data lifecycles.
SAP MDG Configurations and Attributes
explored further into SAP MDG’s configuration. By accessing IMG files, editing data models, and understanding entity types, I gained a deeper understanding of how SAP MDG stores its information.
Examples in the active area, such as Material or Business Partner entities, clearly illustrate whether they were built using reuse or flex. Within SAP MDG, every entity is connected via attributes and user interface components (UIBBs); these reflect backend tables for reuse modelling.
Flex allows users to define attributes not tied to any backend table, thus enabling customised data capture. We have successfully used it to create user-specific fields and process validation rules, all within SAP MDG’s framework.
Custom Fields in SAP MDG
As you work with SAP MDG, it may seem counterproductive to create fields in the staging area if you do not intend to store them permanently in the active region.
But specific fields are essential in processing change requests, even if they won’t ultimately be saved there.
Assuming a user selects “US” for country, their request would proceed through the US approval processes. Should India be chosen instead, however, the process would be altered accordingly.
As part of this, it can sometimes be necessary to create custom fields that don’t directly correspond with backend tables.
In such instances, using a flexible entity is an efficient solution that allows us to structure data for process routing and validation without altering persistent tables in SAP MDG.
SAP MDG Attribute Help and Data Elements
SAP MDG’s F4 help feature is heavily relied upon, especially for custom entities with attributes tied to them that control their behaviour.
You can define search help through data elements, either automatically or with manual configuration as required; either way, it offers powerful ways for SAP MDG to enrich user input.
SAP MDG’s flexibility extends to search capabilities. When creating type 4 entities or setting up attributes under MM or BP, having proper search help helps increase both user adoption and accuracy.
SAP MDG Entity and Attribute Naming
SAP MDG adheres to specific naming conventions when assigning custom entities and attributes to ensure clarity across multiple data models and prevent potential naming conflicts.
Entities begin their names with either ZMAT or ZW_ENT, while attributes often start with two Zs, such as ZZCOUNTRY. These standards help maintain clarity by eliminating potential name clashes across entities or attributes in various data models.
When creating entities and attributes in SAP MDG, always use these prefixes – it’s an SAP best practice that ensures your data model stays organised and manageable.
SAP MDG Entity Types and Storage Models
SAP MDG defines storage types at the entity level: leading entity, check table, text table and relation entities. Each of these storage types plays a unique role in how SAP MDG manages and generates data.
SAP MDG enables me to utilise type 4 entities when creating custom entities that are linked from parent to child.
Material numbers or business partner numbers serve as parents from which one may develop attributes or entities for new attributes or entities.
Type 2 and 3 entities in SAP MDG provide validation and descriptive data, respectively. Check tables using Type 2, while text tables or static configuration values use Type 3.
When it was realised that SAP MDG does not allow changes in type 3 entities, such as company codes, it clicked instantly.
These domain values are locked into the system, unlike type 1 or 4 entities, which can be changed within SAP MDG workflows.
Data Models in SAP MDG
Let’s assume you have created a data model in SAP MDG using type 1 requests and attributes.
Common mistakes include using attribute names across models that overlap, but using prefixes such as ZZMZ to avoid conflicts is one possible workaround solution.
At any point where you feel uncertain about your structure, review entity types and conventions directly within the SAP MDG interface for a quick validation checkpoint and consistency across models. This provides a quick validation checkpoint.
SAP MDG offers versatile standard models, such as MM, BP, and FF, that cover virtually everything you’d encounter in the industry. Advise exploring and mastering them before venturing into custom setups.
Working with SAP MDG, I learned that developing a custom data model requires managing the user interface (UI), service management technique (SMT), business objects, and custom fields and attributes—an endeavour that is time-consuming, complicated, and can easily sap one’s momentum and motivation.
We recommend that learners start using SAP MDG’s standard models first. Its MM and BP models contain many attributes, entities, and flows that you might encounter during interviews or real-world scenarios.
Custom data models typically don’t arise until much later in your learning experience.
E and X Versions in SAP MDG
SAP MDG uses E and X versions to monitor data model activation status. An “E” indicates an active state, while “X” versions reflect any proposed modifications or updates to entities within it.
These versions serve as indicators of any changes or updates to entities being tracked within them. They ensure the system recognises updated models.
Failing to properly adapt after changes can result in error messages during change requests, making it key to execute appropriate adjustment programs every time attributes or entities are updated in SAP MDG.
SAP MDG Table Versions
Each time you modify your data model in SAP MDG — for instance, by adding new fields — it logs a version number; after one change alone, it could move from 0001 to 0002, keeping track of structural updates over time. This keeps track of structural modifications.
Although not essential to everyday tasks, table versions provide valuable insights when monitoring changes to an SAP MDG model.
If needed for audit or retrospective purposes, referencing its history offers insights that might otherwise go unseen.
Staging Tables in SAP MDG
Once creating or editing attributes in an SAP MDG data model, adjustment programs such as USMD_DATA_MODEL must be run to synchronise staging tables; failing to do so may result in error messages when issuing change requests.
SAP MDG may not show obvious indications during execution, but this step is vitally essential for updating all tables with their most up-to-date structures and preventing processing disruptions.
SAP MDG Staging Data
Even though SAP MDG maintains all versions, staging tables will always reflect the most up-to-date structure.
That is why, to avoid confusion when reviewing data, version filters should never be applied while reviewing information.
By regularly revising and validating changes made to models, you can ensure a more seamless experience when staging data in SAP MDG.
Tips for Working Effectively with SAP MDG
Based on my hands-on experience, I recommend approaching SAP MDG design with in-depth knowledge of business requirements and an eye towards aligning reuse or flexible solutions with your organisation’s data strategy.
Reuse means mapping change request flows appropriately to standard tables. For flexibility, this involves configuring the user interface (UI), entity types, and attributes that meet process needs but do not persist in backend tables.
SAP MDG’s ability to accommodate different deployment strategies — hub or co-deployment — offers you additional flexibility.
Based on my client system landscapes, I’ve leveraged various SAP MDG configurations to facilitate smoother integrations and enhance workflow efficiencies. MDG is more than a tool; it is a framework that enables you to develop reliable data governance solutions across various business domains.
Real-Life Examples in SAP MDG
Let me provide an example from my SAP MDG experience: Lenovo is your material of choice.
SAP MDG classifies materials as type 1 entities, which are your lead entities. When associating it with plants such as US01 or US02, which are type 3 entities that cannot be replaced but only extended, this ensures integrity across the configuration.
Do you need to link purchasing groups and materials together? These entities fall under Type 2, being assignable but inflexible in modification.
Once again, SAP MDG’s data governance strategy distinguishes between configurational data and transactional data in ways that enable its effective utilisation.
Real-World Application of SAP MDG Flex
One project I worked on required me to develop a custom data entity containing fields for the requester’s name, address, and email.
These were unique attributes that I wanted to store in MARA or backend tables; SAP MDG’s flexible modelling allowed me to easily create custom entities within its data model without directly linking to standard tables.
Data was collected within the change request structure to facilitate processes without creating unnecessary database clutter.
What surprised me most was how SAP MDG allows you to customise each entity’s behaviour; I made a configuration and modelled an entity type using flexible properties.
This setup ensured data only existed while being processed and did not disrupt active table structures. It was both powerful and clean — that is the beauty of using Flex in SAP MDG.

Navya Chandrika
Author