Wednesday, February 5, 2014

Implementing a change in SAP Cloud for Customer

I often get questions about maintenance and support of the SAP Cloud for Customer Solution. For many SAP CRM professionals, their reference is a SAP CRM on premise system landscape where you develop a solution, test it, transport it to an acceptance system and finally transport it to the production environment. Often a 2 or 3 server landscape is in use where development, test and production data and configuration are separated.
To implement changes in SAP Cloud for Customer you first have to determine if the change is a simple change and can be implemented right away. On the view Business Configuration work --> Overview you can search for those configuration elements which the system allows you to add to the scope.
For complex changes however we have a controlled procedure to implement changes by means of change projects. In this blog I will try to explain the steps involved in implementing a change in a productive system.
In this example we have a Cloud for Customer system that is integrated with a SAP ECC system. In SAP ECC we maintain materials and the material attributes such as Unit of Measure.
It has become a requirement for certain materials to use a new Unit of Measure (UoM), in this case Lb (Pounds) for measuring the weight of certain materials. During the initial implementation this UoM was not in scope. When new materials are created in SAP ECC with this UoM the material is replicated to SAP Cloud for Customer. The problem is that in SAP Cloud for Customer we don't have this UoM available for use, nor is it mapped to the UoM coming from SAP ECC. 
The result is that we receive a replication error in SAP Cloud for Customer, and if set up properly also by e-mail which triggers us to take action. 
I would like to guide you in the process of implementing a change. It is not important to understand the actual change configuration. Try to understand the steps:
  • Is it a simple change?
  • If not we have to create a change project
  • Execute the required changes in scoping and or finetuning
  • Check the consistency of the changes
  • Merge the changed configuration with the production system
  1. First we need to activate the UoM (LBR) in SAP Cloud for Sales
  2. Second we have to map this UoM to the SAP ECC UoM
  3. Merge the change with the productive solution
  4. Third we have to reprocess the iDoc in SAP Cloud for Customer
  5. Finally check if the material that was created in SAP ECC is successfully created (replicated) in SAP Cloud for Customer
Obviously we cannot just customize in a productive system. We don’t have a development system to do the required customizing but we can create a change project. This is a separate project in which we can do the customizing, test for consistency and if all is well we can merge the changes with the production system. If you have a test tenant available you can configure changes here first and also do the testing but there is no transport functionality between both tenants (still a major disadvantage in my opinion). The live solution is not affected by the changes until they are merged with the production system. 

Create a change project

Before we can follow the above 5 steps we need to create a change project.
  • Log in as Administrator
  • Go to the Work Center Business Configuration and View Implementation Projects
During the implementation you will find your implementation project here (see this blog). Because we are already live, the implementation project is completed and removed from this list. For our purpose I have created a new Change project. You are probably used to implement multiple changes in one release. We can use this change project for that hence the project name "Change Project release 02-2014".
Click on New.
When you create the new change project you are guided through these 5 steps in which you can actually perform the required changes. A more elaborate change might involve an extension of the scope or implementing complete new processes. Minor changes (such as in this example) only involves a fine tuning setting. I usually go through all 5 steps first and create the change project, before I do any changes in the scoping or finetuning. In step 4 enter the project title and the start and end date of the release cycle.

Click on Finish to confirm the project creation
In step 5 you are asked what to do next. Click on Open Activity List to Implement Changes 
In the next screen you see the familiar screen form the implementation project. Now we can go through the 5 steps mentioned earlier.

1. Activate the UoM (LBR) in SAP Cloud for Cusomer

The SAP Cloud for Customer equivalent is called a fine tune activity and in this case it is the Quantities and Units of Measure fine tune activity.
By clicking on the Add to Project button we can add this activity to the change project and make the required changes. Open the activity and click on Create and Maintain Physical Units
Obviously a standard UoM Lb (Pound) is already available but it is not released so it is not available for use. The activation status is Blocked. Set the status to Released and Save and Close the activity. 

2. Mapping of the local UoM to the external ECC value

Now that we have released the required UoM for use we need to map it to the SAP ECC value. To do this go back to the Fine Tune tab in the change project and search for the activity called: Code List Mapping for Integration with External Applications and Solutions. Again add this activity to the change project and open the activity. Click on Maintain Code List Mapping.
For Mapping Group ERP Integration there is a Local Data Type MeasureUnitCode. When you select this line you see all (Local) Cloud for Customer UoM codes mapped to the (External) SAP ECC UoM codes. The missing, but released Local LBR code can be added in this table and mapped to the SAP ECC Lb code. Click on Save and Close.  

3. Merge with the productive solution

Now if you go back to the change project we are ready to implement the change in the production environment by merging the changes with the production system. In case you have a test system available you would have made the changes in the change project first and test the result as well.
How can we be sure that the change in configuration has no negative side effects? If you open the change project then you will find two options. The option update from production updates your project with all scoping and fine-tuning changes made to the production system since your change project was created. If these updates contradict decisions you have made in your project, you will have the opportunity to resolve the conflicts by choosing either the project settings or the production settings.
The Simulate Merge action simulates the merge of your project with the production system and checks for problems or conflicts that would occur. It is only a simulation and will not affect either the change project or the production system. The results of both actions will be written in a report and stored in the system.
Before we actually merge the change with the production system we need to close the 2 activities of the change project.
Next execute the Merge Changes with Production System activity.
 Again a report is created showing the results of the change in configuration.
Finally click on the Close Project activity to complete the change project.

4. Reprocess the iDoc errors

Go back to Work Center Application Management and View Business Communication Monitoring. Select the Content error line (or multiple lines) and click on restart. Click on refresh to make sure the document is processed without errors.

5. Check the result

Check that the Product with the UoM is actually created (replicated) in SAP Cloud for Customer we go to the Product Administration View. Indeed the products with the UoM “Pound” are created in SAP Cloud for Customer.
In this example we implemented a change by performing a fine tune activity. This is somewhat similar to customizing in SAP CRM on premise. For implementing non standard functions (developments) we can use the SAP Cloud Applications Studio. This SDK allows you to create custom development solutions for Cloud applications. Stay tuned to this blog for more on using the SAP Cloud Applications Studio.