ABAP Programming Language - Overview (2024)

SAP NetWeaver AS ABAP Release 751, ©Copyright 2017 SAP AG. All rights reserved.

ABAP - Keyword Documentation→ABAP - Overview→

ABAP Programming Language - Overview

ABAP is a programming language developed by SAP for the development of business applications in the SAP environment. TheABAP Objects component makes object-oriented programming possible.

  • ABAP on Application Server ABAP
  • Programming Models
  • Database Accesses
  • Special Characteristics
  • Multilingual Capability

ABAP on Application Server ABAP

ABAP is the programming interface of Application Server ABAP (AS ABAP) in SAP NetWeaver. A prerequisite for the use of the ABAP programminglanguage is the installation of an Application Server ABAP. Most of the components of an AS ABAP canbe organized in the layers (presentation, application, and database) of a three-tier client-server architecture in accordance with their tasks.

  • The presentation layer is distributed to the workstations of individual users and represents the user interface of an AS ABAP (SAP GUI or Web browser).
  • The application layer is implemented using one or moreapplication servers. The application layer contains theABAP runtime environment in which ABAP programs are executed.
  • The database layer consists of adatabase system in which the central dataset of an AS ABAP is saved.

These three layers are accompanied by 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 ABAPs or between an AS ABAP and an external system. On AS ABAP, the functions are implemented infunction modules. In external systems, specially programmed functions are called whose interface simulates a function module.
  • Internet Communication Manager (ICM)
Internet Communication Manager is a process of AS ABAP that enables AS ABAP to communicate directly with the Internet using HTTP/HTTPS/SMTP. ICM is used to connect Web-based presentation components such asSAPUI5,Web Dynpro ABAP, andBSP. ICM also enables an AS ABAPto be used both as a client and as a server for Web services. ICM is accessed from within ABAP programs using the classes and interfaces ofInternet Communication Framework (ICF).
  • ABAP Channels
ABAP Channels are a framework for event-based communication between application servers and the Internet.ABAP Messaging Channels (AMC) are used to exchange messages between ABAP programs on different application servers.ABAP Push Channels (APC),on the other hand, enable bidirectional communication between AS ABAP and the Internet using the WebSocket protocol or the TCP socket protocol.

The main role of ABAP programs in the application layer is the processing and formatting of data from the database layer and passing this data to the presentation layer or the communication components or receiving data.

Programming Models

ABAP supports the following:

  • An object-oriented programming model based onclasses and interfaces
  • A procedural programming model based on function modules andsubroutines

Both modules offer interoperability.

Note

ABAP Objects is the recommended approach for both new projects and when redesigning existing projects.

Database Accesses

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

  • Data Modeling
ABAP data modeling makes it possible to create data models for business applications that have variants on the database:
  • ABAP Dictionaryis a persistent repository for data types and their dependencies. They are visible and can be used inall other development objects. ABAP Dictionary manages the database tables, views, and lock objects in a central AS ABAP database.
  • ABAP Core Data Services (ABAP CDS) expand ABAP Dictionary by adding an implementation of the CDS concept for AS ABAP. A cross-platformCDS DDL andCDS DCL make it possible to defineCDS views,CDS table functions, and associatedCDS roles, plus semantic enrichment.
  • Database Access
Access to data in database tables is fully integrated in ABAP:
  • Open SQL makes it possible to access database objects defined in ABAP Dictionary or ABAP CDS with automaticclient handling. This access is cross-platform and integrated into the language. The performance can be optimized using theSAP buffering integrated into the ABAP runtime environment.
  • Native SQL makes platform-specific access to databases possible. Here,ADBC enables general class-based access to databases.AMDP can be used to manage and call database procedures and database functions from theSAP HANA database.

Special Characteristics

ABAP is a 4GL language developed specifically for the mass processing of data in business applications.Alongside integrated database access, it offers the following characteristics when compared with elementary languages (where these functions are usually stored in libraries):

  • Internal tables for dynamic storage and processing of mass table data in the working memory.
  • An LUW concept integrated into the ABAP runtime environment, where many users can access the central database simultaneously.
  • The language has an integrated interface to other programming environments using Remote Function Call.
  • The language has an integrated interface to XML.

The integration of these functions into the language is of particular benefit when enabling static checksand for the performance of programs. In return, this means that ABAP also contains considerably more language elements than an elementary programming language.

Multilingual Capability

The ABAP programs are made multilingual by extracting language-specific program components from the source code, which are then reloaded when the program executes as specified by the environment. Atext environment determines the precise program behavior at runtime, for example the order in which text is sorted.

ABAP Programming Language - Overview (2024)

References

Top Articles
Latest Posts
Article information

Author: Horacio Brakus JD

Last Updated:

Views: 5290

Rating: 4 / 5 (71 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Horacio Brakus JD

Birthday: 1999-08-21

Address: Apt. 524 43384 Minnie Prairie, South Edda, MA 62804

Phone: +5931039998219

Job: Sales Strategist

Hobby: Sculling, Kitesurfing, Orienteering, Painting, Computer programming, Creative writing, Scuba diving

Introduction: My name is Horacio Brakus JD, I am a lively, splendid, jolly, vivacious, vast, cheerful, agreeable person who loves writing and wants to share my knowledge and understanding with you.