Would you like to know what has changed in SAP S/4HANA on premise release 2021 vs. release 2020 as far as development objects are concerned? Or would you like to compare the source code in your development box with the code that is running on your production system?
If yes, you might be familiar with the existing repository comparison tool that can be started via transaction SREPO.
However, I don’t want to talk about this transaction here. Instead I would like to introduce you to the new transaction PMMO_RELCMP (release/system comparison tool). This transaction takes a slightly different approach to the comparison functionality but also integrates the features of the SREPO tool.
The object selection is based upon the object types that can be found in the global object directory (table TADIR), e.g.
|CLAS||ABAP Object Class|
|TABL||DB table or dictionary structure|
Classes, Function Groups and Tables are considered most important, hence they get some additional selection criteria.
The default is set to CLAS and package PMMO*, since the tool was developed with a focus on the subclass enhancement features of the Project Manufacturing Management and Optimization (PMMO) application. However, the tool works for all applications, regardless of that focus.
You need to specify an RFC destination of type ABAP, as defined in transaction SM59.
The system that you are comparing against must have the function group PMMO_REL_CMP installed. This is only available starting with SAP S/4HANA on premise release 2020. See SAP note 3062899 for more info.
The user in the current and the remote system must have display authorization (ACTVT = ’03’) for the objects that are being selected by the tool. The authorization object that is checked is: S_DEVELOP.
The result list shows if an object exists only in the current system (new object) in both systems or only in the comparison system (object deleted in current system).
Further comparisons (code, table, structure) are possible via the compare icons for a class, method, function group, report or table.
The system supports navigation to the object in the current system, the comparison system or the package of the object in the current system.
Hint: In order to see the possible navigation targets underlined in the list, you have to activate the following SAP GUI setting:
Let’s explore some features related to one particular class:
We can see from the list that the attribute GV_LOG_IN_MEMORY was added in the current release. It did not exist in the comparison release.
Likewise, the method GET_LOG_MESSAGES with the parameter RT_MESSAGES was added in the current release.
Now we select the comparison icon for the method AUTHORITY_CHECK:
A class method comparison via transaction SE39 was carried out and the results are displayed.
If we select the comparison icon on the class level, the beforementioned integration with the SREPO tool is triggered.
From here additional comparison/display functions are available via double click on a line
or selecting a function from the GUI status bar.
Here is an example for a display of database tables:
Selecting the comparison function on the table level leads us to the SREPO tool again:
A double click on the highlighted line gives us this result:
One field was deleted from the table and one new field was added.
Last but not least, let’s have a look at the function groups:
In SAP S/4HANA on premise release 2021 only a comparison at function group level is possible. With release 2022, a comparison on function module level has been added but this can also be achieved in the 2021 release by starting the function group comparison first:
Double click on the highlighted line:
The tool can also be used simply as an object navigator without the comparison functionality. In this case, the RFC destination field will be removed from the selection screen:
I hope you find this tool useful to find out what has changed in different systems or different releases.