Skip to Content
Author's profile photo Steen Hansen

Setting up Replication of Utility Objects between C4C and IS-U

Introduction

 

 

This is a short guide for activating delta replication of technical utility objects between IS-U and C4C.

 

The utility specific objects that are supported in standard:

 

  • Contract Account
  • Connection Object
  • Premise
  • Point of Delivery (POD)

 

Replication is always from IS-U to C4C, never the other way.

 

I would like thank   Rajesh Venkatesan for his support in collecting this information.

 

Trigger Data Replication

 

 

In order to trigger the replication, we make settings in table / view SWFDVEVTY2. We need to perform this twice for each object, as we create one entry to trigger on create and one entry for trigger on change.

 

 

For all objects the following is the same:

 

Receiver Type:      COD_UTILITIES_TECHOBJ_REPL

Class Name:        CL_COD_UTIL_SWER_TECH_OBJ_DELT

 

 

Use transaction SM30 and open the table / view SWFDVEVTY2 in change mode.

 

Now enter a record like the one below:

 

/wp-content/uploads/2016/08/2016_08_26_18_39_45_1026015.png

 

You repeat the above for each of the following object types::

 

  • ISUACCOUNT
    • CREATE
    • CHANGE
  • CONNOBJ
    • CREATE
    • CHANGE
  • PREMISE
    • CREATE
    • CHANGE
  • ISUPOD
    • CREATE
    • CHANGE

 

In total you will end up with 8 entries for this in the table.

 

Now every time the objects listed are changed or a new one created,the class CL_COD_UTIL_SWER_TECH_OBJ_DELT will be executed.

 

 

Sending data to the correct C4C tenant

 

IF YOU FEEL THERE IS A NEED TO DOCUMENT THIS STEP BY STEP LET ME KNOW AND I CAN ADD THAT.

 

To control sending data to the correct C4C tenant, implement the BADI: COD_UTILITIES_REPLICATION_CONF.

 

In this BADI you will find 2 methods (display BADI transaction SE18):

 

/wp-content/uploads/2016/08/2016_08_30_15_31_17_1026092.png

The GET_LOGICAL_PORT method is used for the technical objects (Connection Object, Premise and POD) and the GET_RECEIVER_SYSTEM is used for Contract Account.

 

The implementation of these 2 methods are very simple as we just need to pass the logical system number of C4C.

 

To identify the logical system number to use, go to transaction WE20 and open the Partner Type LS (Logical Systems). The PI consultant would have entered a logical system here for the C4C connectivity. Note this number down as we need this when implementing the BADI.

 

/wp-content/uploads/2016/08/2016_08_30_15_23_34_1026076.png

 

Below the implementation for each method – quite simple:

 

GET_LOGICAL_PORT

/wp-content/uploads/2016/08/method1_1026094.png

GET_RECEIVER_SYSTEM

/wp-content/uploads/2016/08/2016_08_30_15_41_26_1026102.png

 

Then activate the BADI and the delta replication the the utility specific objects are enabled.

Assigned Tags

      5 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Matthias Braeuer
      Matthias Braeuer

      If different C4C tenants are integrated with the QA and PRD IS-U systems, it would probably make sense to make the receiver system and LP configurable via a config parameter table, otherwise one would have to open up the QA and PRD systems after transporting in the BAdI implementation to change the code. Alternatively, one could use the same LS name for C4C across all landscapes but this requires some changes to the standard iFlow mapping in PI to map this logical ID to the correct C4C tenant ID, which is not recommended by SAP (though I have seen it being used in a project).

      Author's profile photo Steen Hansen
      Steen Hansen
      Blog Post Author

      Hi Matthias,

      thank you for the comment.

      The other option would be to create this logic in the BAdi implementation, simply make the port selection based on the system info.

      Author's profile photo Sachin Soni
      Sachin Soni

      Hello Steen,

      Is there a initial load program that we use to trigger the push from S/4 HANA to C4C?

      We have a requirement of loading all TMD and BMD to C4C, any help would be appreciated !

      Thanks,

      Sachin

       

      Author's profile photo Paresh Chandramaniya
      Paresh Chandramaniya

      Hi Steen,

       

      I am trying to add entry but getting an error message

      CL_COD_UTIL_SWER_TECH_OBJ_DELT does not exist.

       

      Class is changed in new release?

       

      Thanks & Regards

      Paresh

      Author's profile photo Shahrukh Bhat
      Shahrukh Bhat

      Steen Hansen Thanks for this blog.

      One question, how are you determining the value of the Receiver Type field in the SWE2 config, we have configured for ISUPARTNER and the custom event handler is being triggered even when the Receiver Type is left empty.

      Similarly, I have configured for ISUACCOUNT and noticed it's not even going to the mentioned Receiver Type, so what's the purpose of specifying it.

      See below:

      Thanks