ABAP — Advanced Business Application Programming
ABAP (Advanced Business Application Programming) is the programming language developed by SAP, in which a large part of SAP applications is written. ABAP is the basis for nearly every custom development and customisation in SAP systems — from SAP ERP (ECC) to S/4HANA.
What is ABAP?
ABAP is a high-level programming language focused on business applications and database processing. It runs on the SAP Application Server and is tightly tied to the SAP Data Dictionary. Typical uses:
- Reports: analyses and lists over SAP data
- Enhancements: customer-specific logic via user exits, BAdIs and enhancements
- Interfaces: RFC and OData services for integration
- Forms: invoices, delivery notes (SAPscript, Smart Forms, Adobe Forms)
ABAP in S/4HANA: OO-ABAP and RAP
ABAP has evolved significantly:
- Classic ABAP: procedural, report-based
- Object-oriented ABAP (ABAP OO): classes, methods, inheritance
- ABAP RESTful Application Programming (RAP): the modern programming model for S/4HANA and the SAP Business Technology Platform, optimised for the HANA database and Fiori interfaces
In S/4HANA the "code-to-data" principle applies: compute-intensive logic is pushed into the HANA database (CDS views) instead of loading large data volumes into the application server.
Why ABAP matters for ERP projects
Anyone running SAP can hardly avoid ABAP: custom developments, reports and interfaces are built in ABAP. This has consequences for ERP projects:
- Customising vs. development: configuration is standard; ABAP development is custom code with maintenance effort
- Clean core: SAP recommends keeping extensions cleanly separated from the standard to ease upgrades
- Skills: ABAP know-how is its own sought-after skill in the market
Related topics
- SAP S/4HANA
- SAP Fiori
- API — Application Programming Interface
- ERP — Enterprise Resource Planning
- API-First ERP
- Composable ERP
Frequently Asked Questions
What is ABAP?
ABAP (Advanced Business Application Programming) is the programming language developed by SAP, in which a large part of SAP applications and nearly every custom development in SAP systems is written.
What is ABAP used for?
For reports and analyses, customer-specific enhancements (user exits, BAdIs), interfaces (RFC, OData) and forms such as invoices or delivery notes — wherever SAP is adapted beyond the standard.
Is ABAP still relevant in S/4HANA?
Yes. ABAP has evolved: object-oriented ABAP and the modern ABAP RESTful Application Programming model (RAP) are central in S/4HANA and the SAP BTP, optimised for HANA and Fiori interfaces.
What is the difference between customising and ABAP development?
Customising is configuration within the SAP standard without programming. ABAP development creates custom code that adds functionality but brings maintenance effort and upgrade risk.
Do I need ABAP skills when implementing SAP?
On the team, yes — at least via a partner. Reports, interfaces and enhancements are built in ABAP. SAP's clean-core principle recommends keeping such extensions cleanly separated from the standard.
