comprehensive, step-by-step guide to configuring a custom data model in SAP MDG (Master
Data Governance). This example will walk you through creating a custom data model from
scratch using SAP MDG on S/4HANA, covering:
Scenario:
Let’s assume you're creating a custom data model called ZVEHICLE for Vehicle Master,
managing information like:
• Vehicle ID
• Manufacturer
• Model
• Fuel Type
• Registration Number
TOOLS & TRANSACTIONS USED
Tool / Transaction Purpose
MDGIMG / SPRO MDG Customizing
MMOD Data Model Maintenance
BSV Workflow Status Configuration
USMD_MODEL Data Model Configuration
USMD_CUST_UI UI Modifications
SE11 Data Dictionary
SM30 Maintain Customizing Tables
DRFIMG Replication Model Configuration
STEP 1: Create Custom Data Model (T-code: MDGIMG > Data Model)
1. Go to MDGIMG → Master Data Governance → General Settings → Data Modeling →
Edit Data Model
2. Choose an existing model (BP, MAT) as a reference.
3. Create a new model:
o Model Name: ZVEHICLE
o Description: “Vehicle Master”
4. Save.
STEP 2: Create Entities
Each logical component of your master data (like header, sub-objects) is defined as an entity.
1. In the data model ZVEHICLE, go to Entities tab.
2. Create the following entities:
Entity Description Storage and Use Type
ZVH_HDR Vehicle Header Type 1 (Reuse Option: No)
ZVH_FUEL Fuel Info Type 4 (Text, value list)
ZVH_REG Registration Type 1
ZVH_MANUF Manufacturer Type 1 or 4 (if from code list)
Use Storage and Use Type 1 for persistent storage, and Type 4 for simple code list/value
list.
3. For each entity, define:
o Text field (for display)
o Key field (e.g., Vehicle ID)
o Attributes (via "Attributes" tab)
STEP 3: Define Relationships
Relationships represent parent-child or foreign key dependencies between entities.
1. In ZVEHICLE model → Relationships tab.
2. Define relationships:
Relationship Description Source → Target Cardinality
ZVH_HDR_TO_REG Vehicle has registrations ZVH_HDR → ZVH_REG 1:n
ZVH_HDR_TO_MANUF Vehicle has manufacturer ZVH_HDR → ZVH_MANUF 1:1
ZVH_HDR_TO_FUEL Vehicle uses fuel ZVH_HDR → ZVH_FUEL 1:1
3. Define foreign key fields in the source entity to enable navigation.
STEP 4: Generate Data Model
1. From MDGIMG > Data Modeling → Generate Data Model
2. Select ZVEHICLE and choose:
o Structure
o Search Views
o Access Class
o Text Table
3. Activate generated objects.
STEP 5: Maintain UI Configuration (T-code: USMD_CUST_UI)
1. Go to USMD_CUST_UI
2. Select your data model: ZVEHICLE
3. Assign:
o UI Configuration ID: e.g., ZVEHICLE_UI
o Define UIBBs (e.g., GUIBB Form/List UIBB for each entity)
4. Configure:
o Search UIBBs
o Edit UIBBs
o Display UIBBs
You can use Floorplan Manager (FPM) to customize UI layouts.
STEP 6: Configure Process Model (Workflow)
6.1 Define Change Request Type
1. MDGIMG → General Settings → Process Modeling → Create Change Request Type
2. Example:
o Change Request Type: ZVEHCR
o Description: “Vehicle Master Create Request”
o Data Model: ZVEHICLE
o Entity Type: ZVH_HDR (leading entity)
6.2 Define Workflow
1. Use SWDD or BRF+ based workflow
2. Link the workflow template to Change Request Type ZVEHCR
3. Define steps: e.g.,
o Create
o Validate
o Approve
o Activate
STEP 7: Configure Data Replication (DRF)
1. Go to DRFIMG → Define Replication Model
2. Create new replication model:
o Model Name: ZVEH_REPL
o Data Model: ZVEHICLE
3. Add the relevant entities (ZVH_HDR, ZVH_REG, etc.)
4. Define replication target (e.g., ALE, Web Service, etc.)
STEP 8: Authorizations
Use PFCG to assign roles for:
• MDG Change Request processing
• UI access
• Replication
• Custom entity authorization objects (e.g., USMD_MODEL, ZVEHICLE)
STEP 9: Testing
1. Go to NWBC or Fiori Launchpad
2. Launch “Create Vehicle Master” app
3. Fill in data and submit
4. Validate:
o Change Request created
o Workflow triggered
o Data replicated (if active)
STEP 10: Transport & Move to QA/PROD
• Transport all:
o Data Model
o UI Configurations
o Workflows
o Replication models
Use standard transport requests or MDG-specific transport tools.
REFERENCE STORAGE & USE TYPES:
Type Use Description
1 Central Data Main storage, master entity
2 Time Dependent For time-related attributes
3 Hierarchical e.g., for classification
4 Code List / Value Help Fixed values or dropdowns
5 Long Text Notes or descriptions
6 Non-persistent Calculated or virtual fields