SAP S/4HANA System Conversion – Challenge for your custom code
SAP S/4HANA is a new product line for SAP next-generation Digital Core business suite, which is completely separated from the classical SAP Business Suite. Therefore we use the term “system conversion” and not the “upgrade” for the migration from the classic ERP system running on any DB to the S/4HANA system. This is because you move from one SAP product (Business Suite) to the completely new one (S/4HANA), built on the new architecture and data models, containing renewed applications and new UI technology (SAP Fiori).
Since years SAP customers invested heavily into custom ABAP code developments related to the SAP Business Suite. Therefore during system conversion from the classic SAP ERP system running on any DB to SAP S/4HANA custom ABAP code needs to be adapted for SAP S/4HANA.
Challenge for your custom code
Traditionally during implementation of your custom ABAP code in the classical SAP Business Suite system you can look into the SAP code, modify or enhance it for your needs, use any SAP function module without any restriction. On one side it is a very flexible approach, allowing you to work in the “open-source” manner. On the other side it results in many dependencies between your custom code and SAP code. It was never an issue because of the compatibility of all new SAP Business Suite releases and EHPs with the predecessor releases. But with the new product SAP S/4HANA the situation changes, since a lot of SAP code within the SAP S/4HANA was simplified and in some cases changed in a not compatible way (e.g. remove of certain fields of the database tables or even remove of the whole database tables). Of course within the SAP S/4HANA the measures were taken to keep the compatibility of your custom code as far as possible like e.g. using CDS compatibility views at data model changes or changing external interfaces only in compatible way. So that customers can assume that a large part of their custom code can run without or with only a few changes. Most likely you will experience the following situation:
Some of your custom ABAP code objects are not valid anymore and either don’t perform as expected or result in syntax errors, dumps etc. (red objects on the picture). Certainly you will still have also other objects, which still perform as expected and do not need to be changed (green objects on the picture), but most likely, some of the custom ABAP code has to be adapted.
The Simplification Database is a database table in the SAP S/4HANA system, which stores all incompatible changes of the SAP code in SAP S/4HANA compared to the SAP Business Suite as simplification items. Each simplification item describes changed or removed SAP objects and refers to a dedicated SAP Note, which describes the impact of the change and how the related custom code can be adapted. All simplification items are also published as the Simplification List in the SAP Community. For more information on Simplification Database please refer to the blogs Upcoming tools for SAP S/4HANA migration – the simplification database, Simplification List SAP S/4HANA 1909.
SAP provides tools based on the Simplification Database to detect custom ABAP code, which needs to be adapted to SAP S/4HANA.
Simplification Example: Material number field length extension
One concrete example of the simplification is the material field length extension from 18 to 40 characters. What is the issue of the extension of the field length, if you used in your custom code the material numbers, which do not exceed the 40 characters anyway? If your custom developed material numbers of 18 characters length come into action with the new SAP material numbers of 40 characters length, that will result in the following issues:
- Data lost while moving the material number data from one variable of the 40 characters to the variable of 18 characters
- Type conflicts, if e.g. your material number of 18 characters length must be passed as a parameter to a method, which uses the SAP material number of 40 characters length.
- Length conflicts at comparison with SAP material number
- Length conflicts at concatenation with SAP material number
In all these cases you need to adapt your custom material numbers to the new SAP material number type.
What can you do today in your SAP Business Suite landscape?
To understand how to prepare your custom ABAP code for SAP S/4HANA please refer to the blog What can you do today to prepare your custom code for SAP S/4HANA.
How to get your custom code to SAP S/4HANA?
To understand how to adapt your custom ABAP code to SAP S/4HANA please refer to the blog SAP S/4HANA System Conversion – Custom code adaptation process.