SAP Knowledge Base Article - Public

3274094 - Public Sector cost object replication scenario migration


This paper is only relevant if you have activated the communication scenario SAP_COM_0585 to distribute public sector cost objects via MDI (Master Data Integration).

"Image/data in this KBA is from SAP internal systems, sample data, or demo systems. Any resemblance to real data is purely coincidental."


SAP S/4 HANA Cloud



With this paper, SAP informs customers that the communication scenario SAP_COM_0585 will be depreciated with cloud release CE2202 and replaced by communication scenarios SAP_COM_0659 and SAP_COM_0594. If you already have used the communication SAP_COM_0585 scenario, you are forced to switch to a new communication scenario.

This paper describes what this migration process will look like.

If you want to start the migration process, please contact SAP via Service Now and raise an case on component “LOD-SF-EC-HDP” with the subject “Public Sector cost object replication scenario migration requested.” We will get  back to you and assist with the migration process.

The migration phase itself should take less than 1 h if there are no unforeseeable issues and should not be proceeded in the main business phase. To avoid bigger issues, we recommend not touching existing public sector cost objects or creating new ones during the migration phase. After the migration, you can immediately continue with your business processes. All other business processes should not be affected.


Why do we need to migrate? 

As mentioned in the introduction we will replace our public sector cost object replication scenario SAP_COM_0585 with a generic solution (MDI client also known as MDI ABAP Client, ABAP Client Adapter, or ABAP Protocol Adapter).

The MDI ABAP Client is a part of the ABAP platform which takes over the communication with MDI and integrates seamlessly with MDO (Master Data Orchestration) and DRF (Data Replication Framework).

Using the MDI ABAP Client brings up many advantages, for example, a one-off communication scenario set up to establish the connection between S4 and MDI independent of how many MDI replication models you want to activate (e.g. for public sector cost object, product, etc.).

The replication model activation itself will now be in MDO, a platform to manage MDI consumer and provider scenarios (e.g. switching them on and off can be done via MDO). MDO is its own service within the BTP that needs to be subscribed first. MDI consumers read MDI data (e.g. SFSF consumes public sector cost object data) and MDI providers are replicating data to MDI (e.g. SAP S/4HANA Cloud replicates public sector cost object data to MDI).

In our first solution, we started to replicate public sector cost objects to MDI with help of communication scenario SAP_COM_0585. As we want to switch to the MDI ABAP client-based solution, you need to set up the MDI ABAP client as a pre-requisite (you can find the needed steps in the prerequisite section). Therefore you need to set up two communication scenarios. The first one SAP_COM_0659 establishes the connection between SAP S/4HANA Cloud (S4HC) and MDI and the second one SAP_COM_0594 the connection via MDO and SAP S/4HANA Cloud. MDO will replicate replication models via SAP_COM_0594 to SAP S/4HANA Cloud as an inbound-only scenario. To do so you need to create a destination on BTP to store the SAP S/4HANA Cloud endpoint.

The functionality behind SAP_COM_0585 handles the communication between SAP S/4HANA Cloud and MDI to replicate public sector cost objects and takes care of MDI protocol-specific data like cost object version ids. As the MDI ABAP client now takes over the communication between SAP S/4HANA Cloud and MDI, we also need to hand over correspondent MDI protocol data for all already replicated public sector cost objects with help of migration steps described in KBA 3169548.

Prerequisites for Migration 

The Migration includes involving and accessing MDO (write authorization) as well as S/4 Hana. Beneficially both systems should be up and running and accessible during the process. In error handling cases it is also quite useful to be able to check the MDI BTP (Business Technology Platform) configuration together. To ensure a smooth migration, please prepare the following steps according to the checklist (Checklist before Migration).

It describes necessary tasks before the MDI client public sector cost object migration (e.g. Setup of SAP_COM_0659, MDO BTP Setup, etc.) and it also includes all roles and systems which are needed during the public sector cost object migration.

Checklist before Migration 

Check that MDI Setup is done

  1.   Go to the BTP subaccount and open MDI instance used by SAP S/4HANA Cloud.
  2.   Check if the service key credentials contain the attribute systemId.


         If not, please create a new instance according to the documentation: Connecting Clients

         Use the sample code from the ‘Configure Instance Parameter’ section which looks like:

        We recommend using a businessSystemId which identifies your SAP S/4HANA Cloud (This Id must be unique). On the other hand, the application should have the value ‘s4’.

Hint: Please use the previously used BTP MDI tenant. Otherwise, no data instance will be available.

Check that MDO is ready to use and connected to S/4:

  1. Set up communication scenario SAP_COM_0594 as described in section Configuration of SAP Master Data Orchestration -> Create a Communication Arrangement Onboarding for Cloud Applications Based on the SAP BTP ABAP Environment.
  2. Set up the destination as described in the section Configuration of SAP Master Data Orchestration -> Setup destination Onboarding for Cloud Applications Based on the SAP BTP ABAP Environment.

        Please make sure that the destination setup includes the additional properties.


         MDOProvider and MDOConsumer should be true and you can find the MDIInstanceId in the service key under attribute systemId.


    3. To test the destination configuration, use the 'Check Connection' button which should return the status of connection (200:OK for a successful connection).

Check that MDI ABAP Client setup is done (e.g. Communication Scenario SAP_COM_0659):

  1.  Set up communication scenario SAP_COM_0659 as described in section Setup the Integration between the ABAP Service Instance and the SAP Master Data Integration Service Instance ->     Create a Communication Arrangement (SAP_COM_0659) Onboarding for Cloud Applications Based on the SAP BTP ABAP Environment.
  2.  If you have created a new MDI Instance in previous steps (Check that MDI Setup is done), please also create a new communication system in your SAP S/4HANA Cloud as described   here: Master Data Replication: Creation of Communication System.

S/4 User(s) with the following role assignment should be available during the process to access needed FIORI launchpad apps:

  • BR_ADMINISTRATOR (Communication Management) 
  • BR _BUS_NET_INT_CONF_EXPERT (Message Monitoring) 
  • BR_BUDGET_SPECIALIST (Manage Public Sector cost objects) 
  • BR_DATA_ADMINISTRATOR_REPL (Data Replication Framework) 

Must have the access to MDI/MDO BTP Subaccount.

Must have the access to MDO Launchpad.

Must have an HTTP Client (e.g. preferred Postman (

Migration Meeting Agenda

  1. Migration Steps
  2. Smoke Test/Trigger Replication

Migration Steps

1. Deactivate old communication scenario sap_com_0585

  a.  Go to app ‘Display Communication Arrangement’ in section ‘Communication Management’  (role BR_ADMINISTRATOR).

  b.  Filter for Communication Scenario sap_com_0585.

  c.  Select result and press delete.

2. Create MDO (Master Data Orchestration) Pull Model and trigger initial load.

A Pull Model is required if data needs to be consumed from MDI. In this migration case the MDI ABAP Client consumes all already replicated public sector cost objects from MDI. It ensures the handover of needed MDI specific public sector cost object information.

    a. Go to the MDO application. You also can find the link in your BTP Subaccount in Section Instances and Subscriptions.


    b. Open app ‘Manage Distribution Model’ and create a new distribution model


    c. Enter following parameters:


           Model: Choose a name

Business object type

Field Value


Fund (

Functional Area

Functional Area (

Budget Period

Budget Period (


Grant (

           Package Size: 100

           Recurrence Pattern: Minutes

           Minutes: 5


BO type

Provider Interface API

Provider Interface Version




Functional Area



Budget Period






      Note: The Provider interface versions for any public sector cost object API should be same for the respective LOG and CHANGE APIs.     

           Provider Destination: Press create and choose entry ‘MDI’

       Consumer: Press create

          Consumer Destination: Choose your SAP S/4HANA Cloud system which you created as destination in your BTP subaccount

          Consumer Application Category: SAP S/4HANA Cloud (S/4)

   d. Press save and activate

   e. After the activation is done, press the replicate button to trigger initial replication


3. Please go to your SAP S/4HANA Cloud Launchpad and login with a user which has role BR_CONF_EXPERT_BUS_NET_INT assigned. Check in AIF interface /MDI (e.g. LOADOBJ_I) whether the initial load succeeded.

     a. Go to app ‘Message Monitoring Overview’ in section ‘Message Monitoring’

     b. Select namespace /MDI and interface ‘LOADRUN_I – 0001'. You should find at least one entry for public sector cost object specific business object types (Fund: 494, Functional area: 1164, Budget period: DRF_0072, Grant: DRF_0071)

     c. Select namespace /MDI and interface ‘LOADOBJ_I – 0001'. You should find cost object specific ‘Business Object Type’ log entries accordingly.

4. Create MDO Push Model (Caution: Please ensure that step 4 is finished completely before you continue with step 5!). This Push Model replicates a replication model from MDO to SAP S/4HANA Cloud and activates the public sector cost object replication in SAP S/4HANA Cloud. From now on all public sector cost object changes will automatically replicated from SAP S/4HANA Cloud to MDI.

(Public Sector Management Data Replication: Enablement of SAP Master Data Orchestration - SAP S/4HANA Cloud as Provider)

5. Deactivate MDO Pull Model

    a. Go to the MDO launchpad and open app ‘Manage Distribution Model’

    b. Select a public sector cost object related MDO Pull Model and deactivate model


   c. Afterward deactivation you can delete it the pull model accordingly.


 6. Optional: Trigger initial load via MDO Push Model. It will send all public sector cost objects to MDI again. This is done just to ensure that all the public sector cost object data has been stored properly. e.g. if some cost object has been activated between steps 1 and 4.

Smoke Test/Trigger Replication

There are several ways how public sector cost object’s replication can be triggered:

1. Initial load via MDO

    a. Go to the MDO Cockpit and open app ‘Manage Distribution Model’

    b. Select the public sector cost object specific Push Model (S4 as a provider)

    c. Select and press button ‘Replicate’


    d. Select the following settings:

  • Replication Mode: Initial Replication
  • Cloud Cockpit Destination: <MDI Destination>

   e. Press ‘Replicate’

2. Replicate selected public sector cost objects via MDO Filter option

    a. Go to the MDO Cockpit and open app ‘Manage Distribution Model’

    b. Select a public sector cost object specific Push Model (S4 as a provider)

    c. Edit Push Model

    d. Create Filter in section 'Object Selection'


    e. Select the public sector cost object related filters for which the cost objects should be replicated


    f. Press ‘Apply’ and ‘Save and Activate’ the Push Model again

    g. Select and press button ‘Replicate’


    h. Select the following settings:

  •  Replication Mode: Initial Replication
  •  Cloud Cockpit Destination: <MDI Destination>
  •  Press ‘Replicate’

3. Via Manage cost object App and delete cost objects App. public sector cost object changes, creations or deletions will trigger direct replications automatically.

Monitor replication

There are several ways how to monitor public sector cost object’s replication:

1. Via DRF (User administrator_data_repl, role: SAP_BR_DATA_ADMINISTRATOR_REPL):

    a. Go to app Monitor Replication and select the replication model you have created in the MDO Cockpit. Here you can find the logs for every replication process. One log entry summarizes the public sector cost object that was sent to MDI              and provides the information whether the cost object change was rejected or confirmed by MDI.




     b. Go to app Display Replication Status and select the Business Object Type specific to public sector cost object (Funds Management Fund, Funds Management Functional area, Budget period, Grant)and the particular cost object you want to          check via cost object selection. The results are similar to option a.


2. Via AIF (conf_expert_bus_net_int). To get business object-related information please select the business object type specific to each cost object (Fund: 494, Functional area: 1164, Budget period: DRF_0072, Grant: DRF_0071)

Go to App Message Monitoring Overview. Relevant AIF interfaces / namespaces:


   a. CHNGERUN_O: This page contains all information about change requests to MDI. It offers the possibility to select specific information related to business object type, business object id, etc.


  b. LOADRUN_I for one run: Gives information about the schedule log API job such as run time errors, etc.


  c. LOADPAGE_I for one loaded page: One loaded page can consist of a set of several load page runs. It means that API MDI contains too much data to be shown at once. It is the reason this needs to be split.


  d. LOADOBJ_I for object specific messages: Contains the information about every change request which has been processed by MDI and returns the log API result for every object.




Public sector, Fund, Functional area, Grant, Budget period, Migration, SAP S/4 HANA Cloud, SAP_COM_0594, SAP_COM_0585, SAP_COM_0659 , KBA , LOD-SF-EC-HDP , Higher Duties & Public Sector , Problem


SAP S/4HANA Cloud 2208 ; SAP S/4HANA Cloud 2302 ; SAP S/4HANA Cloud 2308