LOW Effort: S — Small (hours) Architecture

How to remediate: Reports called via SE38/SA38 pattern

Z/Y reports without proper transaction codes, called directly via SE38/SA38.

Is this issue in your codebase?

A1 scans all 30 rules across your custom ABAP — results in minutes.

Scan your codebase free →

What changes in S/4HANA

Not blocked, but Fiori launchpad integration requires transaction codes.

Before and after: ABAP code example

Before (ECC)
* ECC: report without transaction code, launched via SE38
REPORT zsd_open_orders.
TABLES: vbak.
SELECT-OPTIONS: s_vkorg FOR vbak-vkorg.
START-OF-SELECTION.
  PERFORM read_open_orders.
After (S/4HANA)
* S/4HANA: same report, but assign a transaction code
* 1. Create transaction ZSD_OPEN_ORDERS via SE93
* 2. Link to program ZSD_OPEN_ORDERS
* 3. Enables Fiori launchpad tile configuration
* Program itself can remain unchanged for on-prem migration
REPORT zsd_open_orders.
" ... (program body unchanged)

Effort estimate and common pitfalls

Effort estimate

S — Small (hours)

Estimate is per affected object. Total effort scales with the number of occurrences in your codebase. Use the A1 scan to get an object-level count before estimating the full project.

Common pitfalls

  • ! Forgetting to update all occurrences in the same program
  • ! Not running ATC after the change to confirm the finding is resolved

Related rules to check

Find every instance of this issue in your codebase

The A1 scanner checks all 30 compatibility rules — including Reports called via SE38/SA38 pattern — across your custom ABAP objects and produces a prioritised remediation backlog.

Scan your codebase for this issue free →

SAP, S/4HANA and ABAP are trademarks of SAP SE. s4ready.ai is an independent solution and is not affiliated with, endorsed by, or sponsored by SAP SE.