From procedural ABAP to ABAP Cloud: migration checklist
Migrating to ABAP Cloud is not about translating syntax: it changes data access, business logic and how you model with RAP. A step-by-step checklist, with real examples.
By Logali Tech 3 min read
The first time someone asks me how to migrate to ABAP Cloud from procedural ABAP, the short answer is disappointing: you do not migrate code, you migrate the way you think about code. You can translate a classic ABAP routine line by line and still end up with classic ABAP in new syntax.
This checklist is not a list of new syntax to learn. It is the order in which things actually change when a team moves a real development from procedural ABAP to ABAP Cloud, with a concrete example at each step.
1. Data access changes first
Before touching a single line of business logic, change how the database is read. ABAP SQL replaces classic Open SQL and direct calls to transparent tables. A SELECT that used to live loose in any routine now lives behind a CDS view, with authorization and business semantics already built in. We have already written about how to structure that layer properly: here what matters is that it exists, not yet how it is organized internally.
Real example: a routine that did SELECT SINGLE * FROM vbak WHERE vbeln = ... becomes a query against a CDS view that already exposes the sales order with its associations, not the raw table.
2. From procedures to Objects
FORM and function modules are no longer the place where logic lives. Every piece of business logic is modeled as a class with a clear interface. This is not a cosmetic change: it changes how you test (real unit tests, not just manual execution) and how you reuse code across developments. If this is the part you find hardest, the book ABAP Cloud: Object-Oriented Programming walks through classes, interfaces, inheritance and testing with ABAP Unit from scratch.
3. RAP replaces dynpro for transactional logic
In procedural ABAP, transactional logic (creating, validating, saving an order) used to live scattered across a dynpro, its PAI/PBO modules and a function group. In ABAP Cloud, that same logic is modeled in a RAP Business Object: a clear definition of the allowed operations (create, update, delete), the validations and the determinations in a single place, consumable by both Fiori and API without writing that logic twice.
A real example: a sales order that used to be created and validated inside a PAI module, scattered across three or four includes, becomes a RAP BO with a single “calculate total amount” determination and a single “customer blocked” validation, reusable from any consumer. The course SAP ABAP RAP: Cloud Architecture builds this same type of Business Object step by step.
4. What you need to unlearn
- Calling a transparent table directly from anywhere in the code, instead of going through a CDS view.
- Putting business logic inside the screen layer (modules
PAI/PBO). - Thinking of “the program” as the unit, instead of “the business object” as the unit.
- Relying on global memory (
EXPORT/IMPORTto memory, parametersSPA/GPA) to pass data between screens.
Checklist for migrating to ABAP Cloud, step by step
- Identify the real business object behind the program (order, invoice, article), not the screen.
- Map the current data access and replace it with CDS views with associations, not with direct
SELECT. - Extract the business logic into a class or a RAP BO, separated from any presentation layer.
- Replace global memory with explicit parameters in the class or object interface.
- Write at least one unit test per operation before considering the migration complete.
- Verify that the same business object can be consumed both from Fiori and from an API, without duplicating logic.
Where to start on Monday
Don’t migrate the biggest program first. Pick a small, self-contained one with few dependencies, and walk through this checklist from start to finish once. The goal of the first migration is not speed, it is to learn where the real friction points are in your own system before touching anything critical.
If you want to start from a solid foundation before touching your first real object, ABAP Cloud is not Cobol explains where to start if you come from outside the SAP ecosystem.
Was this article useful?
Thank you for your feedback.
Comments
No comments yet.