Custom Code Migration
Custom Code Migration is part of the SAP system conversion process from SAP Business Suite system running on any database to the SAP S/4HANA system. Since a lot of SAP ABAP source code was simplified and, in some cases, changed to non-compatible in S/4 HANA, therefore in the process of S/4 HANA conversion ABAP source code needs to be adapted.
Custom Code Analysis
Custom code analysis gives us to identify the custom code which must be adapted in the context of the system conversion to SAP S/4 HANA. Some of the custom code objects do not behave as expected and throws syntax error or dumps whereas other objects perform or behave as expected.
There are following possibilities to run the custom code analysis:
1. Using the SAP Fiori Custom Code Migration app to
Run the SAP S/4HANA checks to analyze which custom code needs to be adapted.
2. Using the classic SAP GUI to run the SAP S/4 HANA checks based on the ABAP Test Cockpit (ATC)
This blog will give you the concept to setup the custom code analysis Using the classic SAP GUI to run the SAP S/4HANA checks based on the ABAP Test Cockpit (ATC)
Custom Code Analysis Setup
To perform the custom code analysis, we need to set up a centralized SAP NetWeaver AS for ABAP 7.52 system as the Central Check System within your SAP system landscape.
Below are the technical pre-requisites and steps to configure the Custom Code Analysis:
System Requirements
SAP System | Software Component |
ATC central system | SAP_BASIS 7.52 or above |
Checked/managed system | SAP_BASIS 7.00, 7.01, 7.02, 7.31, 7.40, 7.50, 7.51 or 7.52 |
Simplification Database requirement for the Central System
The simplification Database is a database table in the SAP S/4 HANA system that contains all simplification Items that refer to SAP objects simplified in SAP S/4 HANA. Simplification Database detects any custom code which needs to be adapted to SAP S/4 HANA. Each simplification item describes changed or removed SAP objects and refers to a dedicated SAP Note that describes the impact of the change and how the related custom code can be adapted.
Download the newest version of the Simplification Database content from SAP Service Marketplace (see SAP Note 2241080)
SAP Note Implementation
Apply the following SAP Notes in the checked as well as central ATC system:
- 2270689 – Remote Analysis (for source/managed/checked system)
- 2754597 – Pseudo Comment works for next statement (Central ATC System)
- 3231748 – Check variant for SAP S/4HANA 2022 custom code checks (Central ATC System)
- KBA: 2364916 – Recommended SAP Notes for using ATC to perform remote analysis (Central ATC System and Source/managed/checked system)
- KBA: 2436688 – Recommended SAP Notes for using S/4HANA custom code checks in ATC (Central ATC System and Source/managed/checked system)
RFC Connection
RFC connection need to be created between the Central Check System and the checked system using transaction SM59.
The RFC user in the checked system requires the authorizations that are specified in SAP Note 2672703.
Creating System Groups
A system group is a logical unit that groups multiple SAP systems. Every Object Provider must be assigned to a system group and therefore we need to create a system group before we configure an Object Provider.
- Run transaction ATC in central system.
- In the navigation pane, expand the node ATC Administration Setup and double-click Object Providers.
- Double-click the item System Groups
- Switch to change mode and Choose the New Entries button in the toolbar.
- Enter an ID and short Description for the new system group you want to add.
- Save the new entry.
Creating Object Providers
An Object Provider defines the RFC connection to be used for analysis in a remote SAP system. While a check run is being executed, the ATC framework uses this RFC connection to the checked system to extract a model from the custom code.
- In the RFC Object Providers view, double-click the item RFC Object Providers
- Switch to change mode and choose the New Entries button in the toolbar.
- Specify the entries for the Object Provider you want to create.
Importing the Simplification database
- Log on to the Central Check System.
- Run transaction SYCM.
- Choose the ZIP file with the downloaded simplification Database from your drive and confirm with Open.
Configuring a Remote ATC Run Series
- Run transaction ATC and select Schedule Runs
- Click on Create and enter the Series name.
- Enter the following.
Description – as per our understanding.
Variant Name – S4HANA_READINESS_2022 (as I am executing for S/4HANA 2022)
Object Providers – Specify the object providers name which was created above.
Package – Z*
Modified objects can also be selected.
- Scheduling a Remote ATC Run Series
Select the created series and click on schedule.
- Enter the series name.
- Life Span in Days can be set as per our requirement.
- Number of processes and single Server/ Server Group can be selected as per your requirement.
- Click on Execute in background to start the ATC run.
- Once all done then we can monitor the ATC run
- Once the ATC run completes, Results can be downloaded from
- Once you open Manage Results you can find all the details and errors in case of any failures. You can download the report and save it to local system.
Analyzing ATC Run Results
- Run transaction ATC and click on Manage Results
- Select the series and execute.
- In the ATC Manage Results view, select a run series and choose Display to inspect the results. A list of all ATC findings is displayed in transaction SE80.
- Choose Statistics View.
- Choose Statistic to group the ATC findings (for example, by SAP Note Number)
- Double-click a statistics group to display the list of ATC findings assigned to the selected statistics.
- Double-click an ATC finding to open detailed information.
In this way we can generate the Custom Code Analysis report using ABAP Test Cockpit (ATC)