AI@CustomCode
AI@CustomCode is an AI-powered application designed to support SAP project teams and customers during SAP migration and upgrade projects — accelerating custom code adaptation by automating the analysis and remediation of ATC findings at scale.
The Problem
Every SAP customer running custom code faces the same challenge during an S/4HANA conversion or system upgrade: the ABAP Test Cockpit (ATC) produces hundreds or thousands of findings, each requiring individual developer analysis and manual code correction. This process is:
- Time-consuming — developers must read each finding, locate the relevant SAP note or knowledge article, understand the required change, and apply it
- Inconsistent — different developers apply different solutions to the same class of problem
- Poorly scoped — ATC flags all custom objects, including programs that have not been executed in years and have no relevance to production operations
AI@CustomCode addresses all three dimensions.
How It Works
🔍 CLICK TO ENLARGE
Key Capabilities
| Capability | Description |
|---|---|
| ATC report reading | Connects directly to the SAP system and reads ATC findings without manual export |
| SCMON-based filtering | Reduces the finding list to programs with proven production usage — eliminating dead code from scope |
| OSS note / KB article analysis | For each finding, the AI reads the corresponding SAP note and identifies the required code change |
| Simulation mode | Generates a pre-report showing exactly what will change — full transparency before any modification |
| Developer validation gate | No code is modified without explicit developer approval on the simulation report |
| Selective execution | Apply corrections to all findings, or filter by object type, package, finding category, or program name |
| ABAP package assignment | Corrections are grouped by configurable criteria and assigned to named ABAP packages |
| Transport Request management | All changes are captured in a dedicated Transport Request, ready for the standard release process |
Understanding the Key Concepts
What is ATC — and why it matters in S/4HANA migrations
ATC (ABAP Test Cockpit) is SAP's built-in static code analysis framework. It scans ABAP source code and reports findings where the code uses deprecated APIs, incompatible syntax, or patterns that will not work correctly in the target system version.
In the context of an S/4HANA conversion or upgrade, ATC is the primary tool for identifying custom code that must be adapted before or after the technical migration. The typical workflow is:
- Run ATC in the source system (ECC or current S/4 release) using the S/4HANA compatibility check variant
- Review the finding list — findings are categorised by severity (error, warning, info) and by the type of adaptation required
- Prioritise — not all findings are equally critical; errors that block compilation must be fixed before go-live, warnings can often be addressed post-migration
- Remediate — for each finding, a developer locates the referenced SAP note, understands the required change, and adapts the code
- Re-run ATC — until the finding count reaches the agreed threshold
ATC is run in transaction SCI (for configuration and on-demand runs) or accessed via the ABAP Development Tools (ADT) in Eclipse. Results are stored in the system and can be reviewed in transaction ATC.
The challenge is scale: a typical ECC system with years of custom development can generate tens of thousands of ATC findings. Manual remediation at that scale is a significant project in its own right.
What is SCMON — and why you should start it immediately
SCMON collects usage statistics over time. The longer it runs, the more representative the data. Starting it on the first day of the scoping or preparation phase — even before any analysis begins — is one of the highest-value, lowest-effort actions a project team can take.
SCMON (Statistical Collection Monitor for Custom Code) is an SAP tool that tracks which custom programs, function modules, and classes are actually executed in the production system — and how often. It runs silently in the background and records usage data without impacting system performance.
Why SCMON is essential for ATC prioritisation
A large ECC system may contain 5,000 custom programs. ATC will flag findings across all of them. But in practice, only a fraction of those programs are actively used. SCMON tells you which ones.
When SCMON data is available, AI@CustomCode can:
- Filter ATC findings to active programs only — eliminating findings on code that has never run in the past 12 months
- Provide usage frequency context — a program run 10,000 times per month is a higher priority than one run once per quarter
- Justify de-scoping decisions — unused programs can be retired or archived rather than adapted, with SCMON data as evidence
How to activate SCMON
SCMON is activated in transaction SCMON in the production system (or the most representative system with real user load):
- Open transaction
SCMON - Select Activate to start the collection
- Define the collection scope — typically all custom namespaces (Z*, Y*)
- Set the collection period — a minimum of 3–6 months is recommended to capture seasonal business cycles
- The system begins recording execution data automatically
SCMON data can be exported and loaded into AI@CustomCode, where it is used to filter and prioritise the ATC finding list before AI analysis begins.
The message is simple: activate SCMON on day one of your project. Every week it runs is a week of usage data that will make your custom code scope more accurate and your migration effort more predictable.
Planned Availability
AI@CustomCode is currently in development. Early access is planned for selected 4IT Services customers participating in active S/4HANA migration projects.
To register interest or request an early access preview, contact 4IT Services at contact@4it-services.com.