SAP MDG · WORKFLOWS

How do I handle snapshot differences in SAP MDG Change Requests?

Snapshot differences in SAP MDG happen when backend data changes while a Change Request is still open. You can analyze them with USMD_CREQUEST_SNAPSHOT_COMPARE, resolve them by refreshing or correcting the CR before activation, or control activation with TS60808002 using IGNORE_SNAPSHOT_DIFF.

Snapshot differences in SAP MDG happen when backend data changes while a Change Request is still open. You can analyze them with USMD_CREQUEST_SNAPSHOT_COMPARE, resolve them by refreshing or correcting the CR before activation, or control activation with TS60808002 using IGNORE_SNAPSHOT_DIFF.

SAP MDG creates a snapshot when a Change Request is started. If the same backend record changes while the CR is still open, you get a snapshot difference, which can be checked with USMD_CREQUEST_SNAPSHOT_COMPARE. Before activation, you can refresh the CR, revert the backend change, reject/recreate the CR, or adjust the CR value to match the backend value.

Process flow

  1. 1. Run USMD_CREQUEST_SNAPSHOT_COMPARE for the affected CR(s) to identify the snapshot difference.
  2. 2. Choose the handling option before activation: refresh the CR, revert the backend change, reject/recreate the CR, or adjust the CR value to the correct backend value.
  3. 3. If you want workflow-driven handling, use TS60808002 with IGNORE_SNAPSHOT_DIFF blank for do-not-bypass or X for bypass.
  4. 4. In WS60800086, use process pattern [05] for no bypass and [06] for bypass.
  5. 5. To automate refresh, configure a synchronous system method using process pattern [02], BAdI USMD_SSW_SYSTEM_METHOD_CALLER, enhancement spot USMD_SSW_SERVICE_PROCESSOR, and interface IF_USMD_SSW_SYST_METHOD_CALLER.
  6. 6. For custom workflow templates, create a background standard task in PFTC that calls CL_USMD_SNAPSHOT_TOOLS=>REFRESH_SNAPSHOT_FOR_CR.
  7. 7. To prevent conflicts in mass processing, add a validation rule that checks whether an open CR already exists for the object using the External Model API.
  8. 8. For backend-update refresh, configure bgRFC destination MDG_SNAPSHOT_REFRESH with queue prefix MDG_SNAP_, then activate the relevant backend trigger for Material or Business Partner.
MDGIMG

General Settings > Process Modeling > Workflow > Rule-Based Workflow > Configure Rule-Based Workflow > Define Service Names for Rule-Based Workflow

Define a service name such as ZREFRESH_CR for a synchronous system method refresh step.

Structure
MDGIMG
Master Data Governance
Classic Mode in SAP MDG
Central Governance
Process Modeling
Workflow
Rule-Based Workflow
Define Service Names for Rule-Based Workflow
MDGIMG

General Settings > Process Modeling > Workflow > Rule-Based Workflow > Business Add-Ins > BAdI: Calling of System Method for Rule-Based Workflow

Implement USMD_SSW_SYSTEM_METHOD_CALLER for the service name and call CL_USMD_SNAPSHOT_TOOLS=>REFRESH_SNAPSHOT_FOR_CR.

Structure
MDGIMG
Master Data Governance
Classic Mode in SAP MDG
Central Governance
Process Modeling
Workflow
Rule-Based Workflow
Business Add-Ins
BAdI: Calling of System Method for Rule-Based Workflow
SE18

Enhancement Spot USMD_SSW_SERVICE_PROCESSOR / BAdI USMD_SSW_SYSTEM_METHOD_CALLER

Create or maintain the BAdI implementation for the workflow system method caller.

PFTC

Create a Standard Task as a synchronous object method in background processing

Call CL_USMD_SNAPSHOT_TOOLS=>REFRESH_SNAPSHOT_FOR_CR from a custom workflow template.

SBGRFCCONF

Define Inbound Destination

Create inbound destination MDG_SNAPSHOT_REFRESH and add queue prefix MDG_SNAP_ for automatic CR refresh on backend update.

SBGRFCMON

Monitor bgRFC background processing

Check whether the automatic refresh queues are processed successfully.

Referenced tables

ObjectPurpose
MDG_SNAPSHOT_REFRESHbgRFC inbound destination name used for automatic CR refresh integration.
MDG_SNAP_Queue prefix used by the bgRFC refresh processing.

The remaining configuration, implementation details, and testing guidance continue from this answer more…

Related questions and keywords

Alternative questions

  • How do I detect and resolve snapshot differences in an MDG CR?
  • Which report and workflow settings are used for snapshot differences in SAP MDG?
  • How can I prevent snapshot differences during MDG activation?

Possible questions

  • What is a snapshot difference in SAP MDG?
  • Which report shows snapshot differences?
  • How do I refresh a CR snapshot before activation?
  • How do I configure bypass vs. do-not-bypass snapshot in workflow?
  • How do I add an automatic refresh step to workflow?
  • How do I prevent open CR conflicts in mass processing?
  • What bgRFC settings are required for automatic CR refresh on backend update?

Keywords

SAP MDGsnapshot differenceChange RequestUSMD_CREQUEST_SNAPSHOT_COMPAREUSMD_CREQUEST_SNAPSHOT_REFRESHCL_USMD_SNAPSHOT_TOOLS=>REFRESH_SNAPSHOT_FOR_CRTS60808002IGNORE_SNAPSHOT_DIFFSNAPSHOT_DIFF_EXISTSWS60800086USMD_SSW_SYSTEM_METHOD_CALLERUSMD_SSW_SERVICE_PROCESSORIF_USMD_SSW_SYST_METHOD_CALLERRETRIEVE_CRS_BY_OBJECT_KEYS_DBMDG_SNAPSHOT_REFRESHMDG_SNAP_MDGCRUMDG_BS_BP_SNAPSHOT_UPD