What is SAP ABAP? Full Form & Types
โก Smart Summary
SAP ABAP, the full form of which is Advanced Business Application Programming, is the high level language SAP created so that large organisations can extend and customise the SAP ERP without altering the standard product.

What is ABAP?
ABAP is a high level programming language created by SAP that helps large corporations to customize the SAP ERP. ABAP can help customize workflows for financial accounting, materials management, asset management, and all other modules of SAP. The SAP NetWeaver platform supports both ABAP and Java, and ABAP remains the core language of SAP S/4HANA. The ABAP full form in SAP is Advanced Business Application Programming.
Why SAP ABAP?
Here are the reasons for using SAP ABAP:
- SAP ABAP is used by developers to develop the SAP R/3 Platform.
- It is a simple language that is easy to learn when it comes to programming.
- It allows you to choose from procedural and object-oriented programming.
- It also helps SAP customers to improve their SAP-based applications.
- It allows you to create custom reports and interfaces.
- ABAP language is quite easy for programmers. However, it is not the right tool for non-programmers.
History of SAP ABAP
Here are important landmarks from the history of ABAP:
- ABAP is a 4GL (fourth generation) language developed in the 1980s.
- ABAP became a language for developing client-server programs, first released in the year 1992.
- In the year 1999, SAP introduced an object-oriented extension known as ABAP Objects.
- In 2006, version 7.0 was released, which offered the switch framework feature.
- In 2012, a version was released with the table expressions feature.
- In 2015, version 7.5 started supporting Open SQL expressions.
- With version 7.52 in 2017, virtual sorting of the internal table was introduced.
- From 2019 onwards, the ABAP RESTful Application Programming Model became the standard approach for building SAP Fiori applications.
ABAP Runtime Environment
The runtime environment explains how an ABAP program actually executes.
All ABAP programs are stored in the SAP database. They are never stored in external files, unlike C++ and Java programs.
In the database, all code written in ABAP is present in two different forms:
- Source code, which can be viewed and edited with the help of ABAP Workbench tools.
- Generated code, a binary representation that is quite similar to Java byte code.
ABAP programs allow you to control the runtime system, which is part of the SAP kernel. The runtime system also processes ABAP statements. It controls the logic of screens and responds to user events such as a click or a mouse hover.
Types of ABAP Programs
An SAP ABAP program is either an executable unit or a library, which is reusable code. A library, however, is not separately executable.
ABAP executable programs are divided into two types:
- Reports
- Module pools
The non-executable program types are:
- INCLUDE modules
- Subroutine pools
- Function groups
- Object classes
- Interfaces and type pools
SAP ABAP Workbench
Every program type above is written and tested in the ABAP Workbench.
The ABAP Workbench is a vital part of the ABAP system and is accessed via SAP GUI. It contains various tools for editing programs.
ABAP Workbench
It is widely used by SAP for the development of standard and custom applications. The ABAP Workbench is also used for creating dictionary objects.
As shown above, SAP ABAP Workbench has the following components:
- ABAP Editor: It is mainly used to maintain programs.
- ABAP Dictionary: It is used to maintain dictionary objects.
- Repository Browser: It is used to display a hierarchical structure of the components in a package.
- Menu Painter: It is used to develop the GUI, including menu bars and toolbars.
- Screen Painter: It is used to maintain screen components for online programs.
- Repository Information System: It stores information about development and runtime objects, such as data models, table structures, programs, and functions.
- Function Builder: This component helps you to create and maintain function groups and function modules.
- Test and Analysis Tools: These include the Syntax Check and the Debugger.
- Data Modeler: This tool supports graphical modeling.
- Workbench Organizer: It helps you to maintain multiple development projects that are managed by developers for distribution.
SAP Java vs. SAP ABAP
A modern SAP landscape can run two stacks.
| SAP JAVA | SAP ABAP |
|---|---|
| Java is widely used in the IT community and plays a strong role in many open source initiatives. | ABAP is SAP’s default programming language for both on-demand and on-premise business applications. |
| Java is mostly used to run Java-based applications or services. | ABAP is used to run ABAP based applications or services. |
| SAP uses Java for integration topics, portal and integration solutions, collaborative scenarios and products. | ABAP offers highly scalable and reliable lifecycle management for the IT landscapes of large enterprises. |
| Java Stack is used for SAP Portals, which can host internet or web-based applications written in JSP/EJB. Java Stack uses Java threads to run an application. Java stack contains IR, SLD, ID, RWB, and AE. | ABAP stack helps you to run ERP applications, mainly MM, SD, FICO, etc. The ABAP stack includes IE and BPE. |

