Hub, co-deployed and the two areas
Where MDG runs, how data moves from the staging area to the active area, and why reuse and flex mode change what a developer has to touch.
Same system, one level down
A functional consultant sees MDG through its screens. A technical consultant sees storage, generated objects, framework classes and enhancement spots. Most hard tickets are storage or code-path questions: "the approver sees the new address, the sales order doesn't" is staging versus active. Name the layer first, then you know which log, table or BAdI to open.
Hub versus co-deployed
MDG is an application inside S/4HANA; the question is which S/4HANA. A hub runs in its own instance, holds the golden record and replicates to every receiver, so many incidents are replication incidents. Co-deployed MDG runs in the system that uses the data: activation writes straight into the operational tables, and incidents lean towards locking and timing.
Choosing a deployment
Real projects are often mixed. Use this as a starting point, and write down your reason.
Staging area and active area
Every change request writes to the staging area first: tables MDG generates from the data model in the /1MD/ namespace. Operational programs never read staging. Activation re-runs the checks, copies the record to the active area and only then starts replication. That is why a draft can be rejected twice without touching production data.
Try it: one supplier change, end to end
Put the life of a supplier change in a hub into the right order.
- 1Approver approves the change request
- 2A CREMAS IDoc is sent to the legacy AP system
- 3Activation writes the supplier to LFA1 / BUT000
- 4DRF picks the receivers and applies filters
- 5Requester saves the draft in a change request
Try it: the old address in the payment run
Co-deployed MDG. On Monday the buyer sees a new remit-to address in the supplier's change request. Tuesday's payment run still uses the old address. Most likely cause?
Reuse mode and flex mode
Each entity type has an active area mode. Reuse mode writes into the existing S/4HANA tables through an access class that calls the application APIs, so standard checks apply (BP, supplier, material). Flex mode writes to tables MDG generates; custom objects and most of 0G use it, and reaching application tables such as CSKS needs replication, even into the same system.
Where a record lands
Typical reuse-mode targets. Field mapping lives in the data model's mapping configuration; always check your system.
Try it: reuse or flex?
Sort each statement into the active area mode it describes.
Give the assistant the architecture
Assistants answer far better when you state the architecture facts instead of letting them guess. Keep a short context block per project.
You are helping me debug SAP MDG on S/4HANA [release].
Deployment: hub. MDG system [MDH] replicates to [S4P, ECC1, CRM].
Data model: BP (reuse mode). Custom flex entity ZZ_CERT.
Facts:
- Change request data lives in staging until activation.
- Activation writes BP data to BUT000 / LFA1 via the access class.
- After activation, DRF replicates with IDoc CREMAS and BP SOAP services.
Question: a supplier CR is in status "Final check to be performed"
but the buyer already sees the new bank account in [S4P].
List likely causes in order and the transaction or log to check each.Replace the bracketed parts with your project facts.
Remember
- Hub means govern centrally and replicate out; co-deployed means govern where the data is used.
- Staging holds unapproved data in generated /1MD/ tables; only activation writes to the active area.
- Reuse mode writes to S/4 application tables via an access class; flex mode writes to tables MDG generates.