Skip to Content
Technical Articles
Author's profile photo Mahesh Sardesai

S/4HANA Conversion – t5 – Custom Code Migration step-by-step

This blog is for the detailed steps for Custom Code Migration (CCM) for step t5 of conversion to S/4HANA is an optional step to do before conversion. The steps are shown for Custom Code Analysis to estimate efforts required for the Custom Code Adaptation. As part of custom code migration there is also a step to be done after the system conversion in SPDD/SPAU.

Download the guide Custom Code Migration Guide for 1909 or according to your target release and use the blog for reference

Please find other blogs as follows at S/4HANA SQUARE ONE

S/4HANA  SQUARE  ONE

NEW INSTALLATION     PART1 – MP PART2 –  Installation
PART3 –  BP Activation
PART4 – Fiori Activation PART5 – DATA MIGRATION
S/4HANA 2020 fps0 fps0 fps0 fps0 fps0
S/4HANA 1909 fps2 fps1  fps0  fps2 fps1  fps0 fps2 fps1  fps0 fps2 fps1  fps0 fps0
S/4HANA 1809 fps2  fps1  fps0 fps2  fps1  fps0 fps2  fps1  fps0 fps2  fps1  fps0
S/4HANA 1709
fps2  fps1  fps0 fps2  fps1  fps0 fps2  fps1  fps0
UPGRADE   t2 – MP t3 – SIC
t4 – CCM t5 – SUM
S/4HANA 1809 link link link link
SYSTEM CONVERSION t2 –  RC t3 – MP t4 – SIC
t5 – CCM t6 – SUM 
S/4HANA 1909 rc2 link link link prepare
EHP6/mss
S/4HANA 1809

rc2

rc1

link link link EHP7/hdb
EHP6/db6
EHP5/ora
EHP6/mss
SAP S/4HANA ON-PREM APPLIANCE INSTALL USING MEDIA ACTIVATE FROM CAL
S/4HANA 1909 link custom link standard link
SAP S/4HANA CERTIFICATION
S/4HANA Certification Exams through SAP Certification Hub link

This blog is valid for converting a SAP ERP 6.0 system to SAP S/4HANA, as well as upgrading a SAP S/4HANA system to a higher release. In both cases it will analyze you custom code and will point you to those action you will have to take in order to make your custom code work on the target software product & release.

Custom code analysis is just for “analysis” and you have to take a decision on which custom code you still require / want to use on the target release. For Upgrade from S/4HANA you have to use the ATC option only. If the S/4HANA system is NW 7.52 and above you can do local ATC checks with a variant imported with relevant notes like Note 2812556 for 1909.

This is the graphical view of the process in 4 STEPS:

PART 1: APPLY NOTES IN CHECKED SYSTEM

The checked system can have either of Software components – SAP_BASIS 7.00, 7.01, 7.02, 7.31, 7.40, 7.50, 7.51 or 7.52.

TIP: First 2 notes below are big and if you get “Note Incomplete” or “Error occurred while downloading SAP Note xxxxx” please try downloading again individually and if it still doesn’t work, download from launchpad /upload in snote manually. To give you an idea of size of the note – 2485231 is 4MB , 2270689 is 11MB, 2190065 is 1.6MB and 2196792 is 1MB

APPLY FIRST NOTE: 

Using tCode SNOTE apply SAP Note 2485231 – Remote ATC Checks of Modifications and Enhancements

Create Function Group SCA_ABAP_CHECK_MODINFO

Get Access Key

Checkmark Confirmed and continue – 2 times

Check and set as below:

Create Function Group SCA_REMOTE_DATA_ACCESS

Checkmark on Copy Changes for first 2 items

Click on Activate Anyway

APPLY SECOND NOTE:

Using tCode SNOTE apply SAP Note 2270689 – RFC Extractor for performing static checks

This note is HUGE and you may face errors while downloading. Try downloading the note from browser and then upload in SNOTE.

Create Function Group SABP_COMP_PROCS_E

Activate the function group SABP_COMP_PROCS_E.

Checkmark on Copy Changes for first 2 items

Click on Activate Anyway –  6 times

Start Report RS_ABAP_INIT_ANALYSIS and Confirm step.

APPLY THIRD NOTE:

Using tCode SNOTE apply SAP Note 2190065 – ATC/CI: Remote Code Analysis – Object Provider Stub

This note was already implemented by other notes.

APPLY FOURTH NOTE:

Using tCode SNOTE apply SAP Note 2196792 – RFC-Stub for CVA/SLIN-Remote

Under package SLIN, create subpackage S_CVA_BSP

Under package SLIN, create Function Group SLIN_REMOTE_RESOURCES

Activate Function Group SLIN_REMOTE_RESOURCES

Create Function Group CVA_BSP_REMOTE_RESOURCES

Activate Function Group CVA_BSP_REMOTE_RESOURCES

The object tree should look like this:

Checkmark on Copy Changes for first 3 items

Create a user in Checked system with below authorizations. like CCM_CHECKED.

This completes the steps for the Checked system.

PART 2: APPLY NOTES IN CENTRAL CHECK SYSTEM

The Central Check system should have Software component SAP_BASIS 7.52 or higher. In case you already have a S/4HANA sandbox, you could use it. Also you can use a S/4HANA Fully activated Appliance on-prem or in CAL, it just requires Netweaver 7.52 and above. So if you have a S/4HANA 1909 system lying around you can use it and have to apply minimum notes.

We will use CAL solution which is SAP NetWeaver AS ABAP 7.52 SP01 on SAP ASE 16.0 from below:

Below config is fine to reduce cost.

Activate Instance and login as user DDIC, copy user DDIC to create user S4HCONV so notes can be applied. Ensure RFC SAPOSS is configured and working.

The 2 notes are not to be applied in Checking system using SNOTE but contain information related to notes which are to be applied.

APPLY FIRST NOTE:

Using tCode SNOTE apply SAP Note 2436688 – Recommended SAP Notes for using SAP S/4HANA custom code checks in ATC

Since this is a Netweaver 7.52 SP1 system we have to apply the notes, if your system is different Netweaver/SP level, the notes to be applied may be completely different.

2578127 – Pseudo comments for S/4HANA custom code checks
2577440 – Improvements in S/4HANA custom code check “S/4HANA: Search for S/4 related syntax errors”
2569135 – S/4HANA custom code check “S/4HANA: Search for S/4 related syntax errors” reports syntax warnings
2573527 – S/4HANA custom code check for buffered DB table access

All above notes do not have manual steps.

APPLY SECOND NOTE:

Using tCode SNOTE apply SAP Note 2364916 – Recommended SAP Notes for using ATC to perform remote analysis

Since this is a Netweaver 7.52 SP1 system we have to apply the notes, if your system is different Netweaver/SP level, the notes to be applied may be completely different.

2423013 – Code-Inspector-Test Checksum-Infrastructure
2527903 – Remote analysis (for central check system)
2587593 – ATC: Checkability of Modifications and Enhancements in Remote Checks – Developer Scenario
2614006 – ATC remote check fails in developer scenario
2629856 – CVA/SLIN: Security checks of SFP-Forms ( SAP Interactive Forms by Adobe )

APPLY THIRD NOTE:

Using tCode SNOTE apply SAP Note 2812556 – Check variant for SAP S/4HANA 1909 custom code checks

PART 3: IMPORT THE SIMPLIFICATION DATABASE

FIRST: – download the CCMSIDB from Service Marketplace. Open Software Download Center and search for CCMSIDB

SECOND: – Import the Simplification Database into Central Checking System

enter tCode SYCM

After clicking Open, there is a message Loading ZIP C:\CCMSDB00P_7-8000101. The  there is a message – Downloading simplification notes ….

You should get message below:

THIRD: – you can now display the content of the simplification database. Click the Overview button.

The simplification items are grouped by Simplification Category.

FOURTH: – If you click on Show Items for Selection, you can view the Simplification Database content with displayed list by SAP Object Type, Simplification Category and relevant SAP Note Number.

FIFTH: – Set the role of the Central Check System

Enter tCode ATC => System Role => Change System Role

SIXTH: – Create System Groups using tCode ATC => ATC Administration => Setup => Object Providers

Select (1) System Groups, (2) Change, (3) New Entries, (4) enter System Group details as below:

SEVENTH: – Enter tCode SM59, create RFC destination, Connection Type 3  in the Central Checking system to point to the Checked system.
You can create a separate user in the Checked System, use tCode SU01 to create user CCM_CHECKED.  For authorization details please refer Refer Note 2672703 – ATC: Authorization roles for remote check scenarios

EIGHTH: – Create RFC Object Providers using tCode ATC => ATC Administration => Setup => Object Providers

PART 4: RUN ATC CHECKS FROM CENTRAL CHECKING SYSTEM

FIRST: – Configure remote ATC runs series tCode ATC => Runs => Schedule Runs ,

(1) Create Series Name (2) CONV1

SECOND:Select (1) Check Variant according to the target release and (2) Object Provider as shown below: and Save

TIP: After System Conversion, on your S/4HANA 1709/1809/1909 system you can run local analysis, it is recommended to use variant S4HANA_READINESS because this performs also the syntax check related to simplified objects.

PART 5: SCHEDULE A REMOTE ATC RUN SERIES

In tCode ATC =>Runs=>Schedule Runs (1) Select the run series and click (2) Schedule button on toolbar.

Execute in Background

You will get notification that Background job was scheduled for program SATC_CI_CFG_SERIES_SCHEDULE

PART 6: MONITOR ATC RUN SERIES

In the navigation pane in transaction ATC, expand the nodes ATC Administration Runs and double-click Monitor and Control RunsLeave the run series field empty and execute (F8)


The ATC Run Monitor view is displayed. The view shows the status of check runs as running, finished, or failed.

PART 7: ANALYZE ATC RUN RESULTS

tCode ATC => ATC Administration => Runs => Manage Results

Leave the run series field empty and choose Execute (F8).

As you can see below there are 17 priority 1 findings, 8 priority 2 findings and 92 priority 3 findings.
In the ABAP Test: ATC Manage Results view, (1) select a run series and choose (2) Display to inspect the results.

The view shows a list of ATC run results from your requested period of time. A list of all ATC findings is displayed in transaction SE80. From here you can navigate to the corresponding source code part by clicking on the Object Name and you can analyse the code. You can click on Object Name header column and sort to find out which records are pertaining to a single object name.Choose Statistics View.

Click on (1) Choose Statistic to group the ATC findings (for example, by SAP Note Number, Simplification Item Category, Contact Person, etc). The ATC findings are grouped by the selected statistics

You can (2) Double-click a statistics group to display the list of ATC findings assigned to the selected statistics in the window below.

You can then (3) Double-click an ATC finding to open (4) detailed information in window below. Here you can find the SAP Note number referring to a dedicated SAP Note and the referenced object.

Click the object name to navigate to the source code to see where the incompatible code occurs

Please go through the video below for detailed explanation:
Custom Code Adaptation for SAP S/4HANA

LANDSCAPE CONSIDERATIONS:

In the preparation phase the ABAP Test Cockpit is used to analyse custom code impact of HANA database and S/4HANA. After that in the Realization phase, the SUM tool is used to conduct system conversion and combined database migration to HANA.   Here you need to adapt your ABAP custom code to the new S/4HANA software and optimize performance of SAP HANA database by performing application-specific follow-up activities and working with tools like transaction
SPAU and SPDD to adapt the modifications and enhancements.

The SPAU and SPDD transports created in development system are later used in subsequent systems in the landscape QAS and PROD.

OTHER REFERENCES:

NOTES:
Note 2364916 Recommended SAP Notes for using ATC to perform remote analysis
Note 2672703 – ATC: Authorization roles for remote check scenarios
Note 2761273 How to analyze errors when using ATC Transport-Related Checks functionality

BLOGS
ABAP Call Monitor (SCMON) – Analyze usage of your code
What you can do today to prepare your custom code for SAP S/4HANA
SAP S/4HANA System Conversion – Custom code adaptation process
Remote Code Analysis in ATC – Technical Setup step by step

GUIDES:
Custom Code Migration Guide for SAP S/4HANA 1909         <= pdf

VIDEO:
Custom Code Adaptation for SAP S/4HANA

SAP S/4HANA 1909 System Conversion Steps & Details – How to be prepared

Thank you. Hope you enjoyed the blog !

Mahesh Sardesai
Product Expert – S/4HANA

Assigned Tags

      7 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Dinesh Kumar
      Dinesh Kumar

      Well explained, I have some query on ATC , Please share your mail id for discuss the same.

      Author's profile photo Mahesh Sardesai
      Mahesh Sardesai
      Blog Post Author

      HI Dinesh,

      As per rules of engagement on this forum it is not allowed to provide email id.

      • Mahesh
      Author's profile photo Thiago Pedrazzi
      Thiago Pedrazzi

      Hello Mahesh,

      Thanks for providing the step by steps for custom code migration. But I have some confusion while upgrading S/4 HANA 1809,1909 to S/4 HANA 2020.

      1. Do we need to run CCM while doing S/4 HANA version upgrade (S/4 HANA 1809,1909------->S/4 HANA 2020 FPS02).
      2. If Yes what process should be followed ?  (Using the classic SAP GUI to run the SAP S/4HANA checks based on the ABAP Test Cockpit (ATC)  OR  Using the Custom Code Migration app)
      3. My Central system and checked system are same (S4 HANA 1809 or S4 1909).
      4. My SAP_BASIS version is 754 patch01 and below prerequisites notes can not be implemented.                                                                                                                                2485231
        2270689
        2190065
        2436688
        2364916

      Request you to kindly suggest . Your quick help would be much appreciated.

      Thank you.

      Author's profile photo Mahesh Sardesai
      Mahesh Sardesai
      Blog Post Author

      Hi Thiago,

      You should do the CCM for the upgrades. Please follow detailed document as per below:

      https://www.sap.com/documents/2020/06/94ca0995-9d7d-0010-87a3-c30de2ffd8ff.html

      Author's profile photo Thiago Pedrazzi
      Thiago Pedrazzi

      Hello Mahesh,

      Thanks for providing the step by steps for custom code migration. But I have some confusion while upgrading S/4 HANA 1809,1909 to S/4 HANA 2020.

      1. Do we need to run CCM while doing S/4 HANA version upgrade (S/4 HANA 1809,1909------->S/4 HANA 2020 FPS02).
      2. If Yes what process should be followed ?  (Using the classic SAP GUI to run the SAP S/4HANA checks based on the ABAP Test Cockpit (ATC)  OR  Using the Custom Code Migration app)
      3. My Central system and checked system are same (S4 HANA 1809 or S4 1909).
      4. My SAP_BASIS version is 754 patch01 and below prerequisites notes can not be implemented.                                                                                                                                2485231
        2270689
        2190065
        2436688
        2364916

      Request you to kindly suggest . Your quick help would be much appreciated.

      Thank you.

      Author's profile photo Mahesh Sardesai
      Mahesh Sardesai
      Blog Post Author

      Hi Thiago,

      This question was repeated from above.

      • Mahesh
      Author's profile photo Asad Ali
      Asad Ali

      Dear Mahesh,

      No doubt a marvelous post by you, really helpful and i am following it step by step but facing some issues so i thought to mention it, being expert may you could help me in this matter.

      Sandbox : SAP_BASIS 740 0012

      Central Checking System : SAP_BASIS 752 0009

      Note 2270689 - RFC Extractor for performing static checks - System shows cannot be implemented so i find as per 740 version Note 2821033 - Version 22, while implementing this note facing couples of activations errors as per attached screen shots, whereas all manual activities performed smoothly expect last manual activity in which need to execute Report RS_ABAP_INIT_ANALYSIS, as i attempt to execute report ask 4 times access key and unable to run still, no tables generated even.

      Kindly share your expert review on it.

      Hence, results in unmeaningful and lots of failures list at ATC as per below,