Skip to Content

It is a usual practice to periodically copy all the data from a production system to a test system for setting up a demo system, test system or a training system. In case of SAP Business suite system customers copy their production system to a test system using for example system copy and in case of SAP Hybris Cloud for Customer (C4C) a copy of a productive using the service control center as mentioned in the link here.

A pictorial view of the copy process is shown below.

Tenant Copy process.png

The challenge is after the systems are copied, how to ensure the integration still works, for example if we edit an account/customer in the copied cloud for customer tenant, the change is updated in the corresponding copied SAP Business suite system.

In this blog I will discuss about the various aspects that need to be considered for exchanging data between the copied tenant for Cloud for Customer. This post is about explaining the concept even though as a customer or partner, we would simply use the tool to perform the steps discussed here.

Note: The scope is here limited to integration with SAP Hybris Cloud for Customer.

ID Mapping:

As we know ID mappings are always stored against the communication system.

ID mapping.png

That is in the back end implementation all ID mappings are associated with a technical UUID representing the business system ID defined in the communication system.

Business system ID.png

Tenant copy process copies all the communication system, communication arrangements , ID mappings from the production tenant to the test tenant. Since the test system for the corresponding SAP Business Suite system will have a different IDOC logical system ID, it makes sense to create a new communication system for the business suite system in the copied tenant. So now for the integration to work all the ID mapping entries need to be adjusted to use the UUID corresponding to the communication system we just created.

Business Transaction Document (BTD) Reference:

BTD reference is used to depict the follow up documents in other words it is used to show the document flow. As shown below for Sales Quote 883 in SAP Hybris Cloud for Customer, Sales Ordrer 35868 was created in ERP and then subsequent documents from ERP are also shown.

Doc Flow.png

As the subsequent documents are coming from an external system, the relation ship between Sales Quote and the ERP order is stored using BTD reference along with the system instance ID from the communication system. Since in the copied tenant all the BTD references still point to old communication system, these entries need to be adjusted to point to the new communication system in the copied tenant.

Sequencing at application level (In-app sequencing):

In SAP Hybris Cloud for Customer sequencing at application level is used for cases where EOIO has some limitations. The app sequencing is maintained using a simple counter. As an example let’s assume we have a sales order which was replicated from ERP to C4C. Now we change the sales order in C4C and the changes are sent to ERP. But in the mean time the Sales order is also changed in ERP, so the change message that is coming from C4C should be ignored by ERP and this is achieved using in application sequencing.

In the example above.

1. ERP sends the sales order to C4C and set the counter value to 1. The Counter is also send in the replication message and stored in C4C as a remote counter.

2. C4C changes the sales order and sends the changed order to ERP along with the remote counter value 1

3. In the mean time ERP order has changed and counter is updated to 2.

4. So when ERP receives the message from C4C, with counter value 1, it knows it’s an old message and ignores it.

As with ID mapping and BTD references, the app sequences are also stored with a reference to the communication system ID, which needs adjustment post tenant copy/refresh.

The tenant adaptation utility adjusts all the above mentioned objects so that integration between the copied systems will work smoothly without much manual effort.In the next blog will talk about how to the use this utility along with required prerequisites and known boundaries(what we support).

To report this post you need to login first.

11 Comments

You must be Logged on to comment or reply to a post.

  1. Piyush Gandhi

    Hello Abinash

    We have a question around ordering a new test tenant .

    Can SAP retain the same tenant ID for a new test tenant.

    So that once we complete the integration connection steps our New C4C test tenant integrated with On prem ECC works as it was working with the old test tenant .

    We would later discontinue using the old test tenant.

    The reason why we want the same tenant ID , is because we have configured SSO for the test tenant and many users are currently using the tenant URL

    So once the new tenant is operational we can ask the users to use the same URL now ( but then it will log them into the new test tenant instead of the old one)

    So business will not get any impact or disruption of services.

    Is this possible and how?

    Regards

    Thanks

    Piyush Gandhi

    (0) 
    1. Chandan Bankar

      Hello Piyush,

      Recently came to know that SAP supports Tenant Refresh and Complete production copy into our test tenant. So this mean you might have to I guess raise an incident requesting to perform this task. Saying that this will keep your test tenant intact and you just have to adjust the content following this documents by Abhinash. Additionally this will also prevent other rework on our middleware and connected OnPrem system as new tenant will also result in adjustments on these two systems too. Unfortunately this information I got after we completed our task by ordering new test tenant with complete production copy and decommissioning the existing one. Using this feature will only need adjustments on C4C.

      Abinash Nanda

      Kindly confirm.

      Regards,

      Chandan

      (0) 
      1. Piyush Gandhi

        Hi Chandan

        Thanks for the response.

        If what you say can be done, then this will save us a lot of pain.

        My next follow up question would be

        a. what would be the sequence of task to be performed for tenant refresh (if SAP can support test tenant refresh from production ( Config Data, Basic & Master Data, Transactional data such as activities, visits, leads, opportunities) from production to test tenant. without requesting a new test tenant). and still ensuring that the on premise integration still works.

        b. Will the test tenant refresh will wipe of all the Data i.e. Master data, transactional data existed in this tenant prior to the refresh from Production tenant. We would like that to happen, So that once the tenant is refreshed users can now work with the latest data after refresh.

        C. Since the on prem will also be refresh with production quality data , the integration of master data , transactional , pricing data should work without any major rework.

        @ Abinash : Request if you provide your expert comments or any documentation which we can refer to).

        Will be helpful.

        Regards

        Thanks

        Piyush Gandhi

        (0) 
        1. Chandan Bankar

          Hello Piyush,

          I have not experienced this feature yet, maybe would when our refresh is planned. So maybe would be worth to wait to learn from Abhinash. However below are my thoughts that I have some idea on your queries:

          a.1: Your OnPrem configurations which are copied from Production needs to be adjusted.

          a.2: If SAP copies production tenant into existing Test tenants, we would have to adjust the integration configurations and data accordingly.

          Abhinash has well explained these tasks in part 2 and part 3 of this series of blogs on this topic. (Please follow complete series of this blog to know in detail,link for this blog is hyperlink to a word blog so might not in one look)

          b. What I understood from SAP support with whom I had discussion, Test tenant would be completely cleaned removing all existing data (similarly to initial system) and production copy would be performed to copy Complete production data as well as configurations.

          c. OnPrem refresh will copy production data as well as configuration into Test system. Part 3 of this blog shows what needs to be adjusted.

          Regards,

          Chandan

          (0) 
    2. Abinash Nanda Post author

      Hello Piyush,

      I am sorry but I am not sure if I followed your query. What I understand you want to retain the tenant URL on the copied tenant to support SSO for existing users. I am not sure if this is possible as the tenant URLs are unique. I would suggest you please check with Cloud operations for Cloud for Customer. They are the right people to advise you on this aspect.

      Best regards, Abinash

      (0) 
  2. Andrea Nemes Salgueiro

    Hi Abinash,

    Thanks for creating this very useful and clear explained blog! Great!

    I have one question regarding the following scenario: Let’s consider that the customer has integrated with C4C an certain ECC system. In the future, the current ECC system will be replaced by a new one. If I understood your explanation, one can use the described functionality. in C4C, one would need to create a new comm. system; comm. arrangment, run the adaptation report to correct all mapping Ids for master data and transactional data. Later on, we could delete the non longer used comm. system and comm. arrangemet related to old system. However, this scenario will only be valid if Document IDs in both ECC systems are the same.  Is my assumption correct?

    Do we need to consider something else? In case the Document IDs are not the same, then we would have the scenario such as a integration with a new system and the described funtionality could not be used, right?

    Thanks a lot,

    Andréa

    (0) 
    1. Abinash Nanda Post author

      Hi Andrea,
      I would like to highlight you should never run this in a production tenant, we are putting a check which will not allow to run this report in a production tenant in a future release. Now coming back to you query if you create a new ECC system (again to be specific non-productive) either by using a system copy or some other method where if you can ensure the master and transaction data is available in the new system along with the document nos from the source system, you can run the adaptation report to adjust the integration relevant data to use the new communication system that points to your new ERP system.

      Again word of Caution never try to run it on a production C4C tenant. Else your system become unusable.
      best regards, Abinash

      (0) 

Leave a Reply