ABAP Programming Language, Overview - ABAP Keyword Documentation (2024)

AS ABAP Release 758, ©Copyright 2024 SAP SE. All rights reserved.

ABAP - Keyword Documentation→ABAP - Programming Language→ABAP - Overview→

Mail Feedback

ABAP Programming Language, Overview

ABAP is a programming language developed by SAP for the development of business applications with theABAP development environment (ABAP DE) of anABAP Platform.

  • ABAP on the Application Server ABAP
  • Programming Models
  • Database Access
  • Special Characteristics
  • Multilingualism

ABAP on the Application Server ABAP

ABAP is the programming interface of the Application Server ABAP (AS ABAP) of anABAP system.

  • Before the ABAP programming language can be used, an AS ABAP must be installed as theapplication layer of anABAP system. The AS ABAP provides theABAP runtime framework in which ABAP programs are executed independently of the actualhost computer.
  • AS ABAP must be connected to a database layer or to adatabase system where its central dataset is stored in astandard database.
  • UI-based access requires a presentation layer that displays the AS ABAP user interface (inSAP GUI or a Web browser).

AS ABAP also has the following communication components:

  • RFC Interface

    This is the classic functional interface of AS ABAP. A remote function call is a call of a functionin a system other than the one in which the calling program is running. Calls are possible between differentAS ABAP or between an AS ABAP and an external system. On an AS ABAP, the functions are implemented usingfunction modules. In external systems, specially programmed functions are called whose interface simulates a function module.

  • Internet Communication Manager (ICM)

    The Internet Communication Manager (ICM) is a process of the AS ABAP that allows it to communicate directly with the Internet using HTTP, HTTPS, or SMTP. The ICM is used to connect Web-based presentation components such asSAPUI5,Web Dynpro ABAP, andBSP. The ICM also allows the useof the AS ABAP as a client and as a server for Web services. The ICM is accessed from ABAP programs using the classes and interfaces of theInternet Communication Framework (ICF).

  • ABAP Channels

    ABAP Channels are a framework for event-based communication between AS instances and the Internet.ABAP Messaging Channels (AMC) are used to exchange messages between ABAP programs on different AS instances, whereasABAP Push Channels (APC) enable bidirectional communication between an AS ABAP and the Internet using the WebSocket protocol or the TCP socket protocol.

The essential role of ABAP programs on the AS ABAP involves the processing and formatting of data fromthe database layer and its transfer to or the receipt of input from the presentation layer or the communication components.

For more information about the organization of ABAP programs on the AS ABAP, see ABAP Programs in AS ABAP.

Programming Models

ABAP supports the following:

  • An object-oriented programming model that is based onclasses andinterfaces of ABAP Objects.
  • A procedural programming model that is based onfunction modules and subroutines

Both models are interoperable.


ABAP Objects is the recommended approach for both new projects and the redesign of existing projects.

Database Access

One of the fundamental properties of ABAP as a programming language for business applications is the access to database tables that is fully integrated into the language.

  • Data modeling

    ABAP data modeling makes it possible to create data models for business applications that are defined on the database:

    • The ABAP Dictionaryis a persistent repository for data types and their relationships that are visible and can be used in all other development objects. The ABAP Dictionary manages the database tables, views, and lock objects of thestandard AS ABAP database.
    • The ABAP Core Data Services implement the SAP CDS concept for the AS ABAP. A platform-independentCDS DDL andCDS DCL make it possible to defineCDS entities such asCDS views orCDS table functions, and associatedCDS roles and their semantic enrichment.
  • Database access

    Access to data in database tables is fully integrated in ABAP:

    • ABAP SQL makes it possible to access the database objects defined in the ABAP Dictionary or in ABAP CDS with implicitclient handling. This access is platform-independent and integrated into the language. The performance can be optimized by using thetable buffering integrated into the ABAP runtime framework.
    • AMDP can be used to manage and call database procedures and database functions of theSAP HANA database.
    • Native SQL enables platform-dependent access to databases.ADBC enables a general class-based access to all databases.

Special Characteristics

ABAP is a 4GL language developed specifically for the mass processing of data in business applicationsand, in addition to integrated database access, has the following characteristics when compared with the elementary languages in which such functions are usually stored in libraries:

  • Internal tables for the dynamic storage and processing of tabular mass data in the working memory.
  • An LUW concept integrated into the ABAP runtime framework that allows many users to access thestandard database simultaneously.
  • An integrated interface of the language to other programming environments using Remote Function Call.
  • An integrated interface of the language to XML.

The integration of such functions into the language is particularly beneficial for static checks andperformance of programs. In return, this means that ABAP also contains considerably more language elements than an elementary programming language.


ABAP programs can be programmed as fully language-independent by removing language-specific program parts from the source code and then reloading them during program execution in accordance with the language environment. Atext environment determines the exact program behavior at runtime, for example the order in which text is sorted.

ABAP Programming Language, Overview - ABAP Keyword Documentation (2024)


Top Articles
Latest Posts
Article information

Author: Rueben Jacobs

Last Updated:

Views: 5539

Rating: 4.7 / 5 (77 voted)

Reviews: 92% of readers found this page helpful

Author information

Name: Rueben Jacobs

Birthday: 1999-03-14

Address: 951 Caterina Walk, Schambergerside, CA 67667-0896

Phone: +6881806848632

Job: Internal Education Planner

Hobby: Candle making, Cabaret, Poi, Gambling, Rock climbing, Wood carving, Computer programming

Introduction: My name is Rueben Jacobs, I am a cooperative, beautiful, kind, comfortable, glamorous, open, magnificent person who loves writing and wants to share my knowledge and understanding with you.