ABAP - Schlüsselwortdokumentation →  ABAP - Übersicht → 

ABAP-Programmiersprache - Übersicht

ABAP ist eine von SAP entwickelte Programmiersprache für die Entwicklung von kommerziellen Anwendungen im SAP-Umfeld. Der Bestandteil ABAP Objects ermöglicht die objektorientierte Programmierung.

ABAP auf dem Application Server ABAP

ABAP ist die Programmierschnittstelle des Application Server ABAP (AS ABAP) in SAP NetWeaver. Voraussetzung für die Verwendung der Programmiersprache ABAP ist die Installation eines Application Server ABAP. Die meisten Komponenten eines AS ABAP lassen sich gemäß ihren Aufgaben in die Schichten einer dreistufigen Client-Server-Architektur mit einer Präsentations-, einer Applikations- und einer Datenbankschicht einordnen.

Neben den drei Schichten stehen folgende Kommunikationskomponenten:

Dies ist die klassische funktionale Schnittstelle des AS ABAP. Ein Remote Function Call ist ein Aufruf einer Funktion in einem anderen System als das, in dem das aufrufende Programm läuft. Aufrufe sind möglich zwischen verschiedenen AS ABAP oder zwischen einem AS ABAP und einem Fremdsystem. Auf einem AS ABAP sind die Funktionen durch Funktionsbausteine realisiert. In Fremdsystemen werden speziell programmierte Funktionen aufgerufen, deren Schnittstelle einen Funktionsbaustein simuliert.
Der Internet Communication Manager ist ein Prozess des AS ABAP, der diesem die direkte Kommunikation mit dem Internet über HTTP/HTTPS/SMTP erlaubt. Zu einen dient der ICM zum Anschluss von Web-basierten Präsentationskomponenten wie SAPUI5, Web Dynpro ABAP und BSP, zum anderen erlaubt es der ICM einem AS ABAP sowohl als Client als auch als Server für Web Services zu dienen. Der Zugriff auf den ICM aus ABAP-Programmen erfolgt über die Klassen und Interfaces des Internet Communication Framework (ICF).
ABAP Channels sind ein Framework für die ereignisbasierte Kommunikation zwischen Applikationsservern und mit dem Internet. Während ABAP Messaging Channels (AMC) dem Austausch von Nachrichten zwischen ABAP-Programmen verschiedener Applikationsserver dienen, erlauben ABAP Push Channels (APC) eine bidirektionale Kommunikation zwischen einem AS ABAP und dem Internet über das WebSocket- oder TCP-Socket-Protokoll.

Die wesentliche Rolle von ABAP-Programmen in der Applikationsschicht ist die Verarbeitung und Aufbereitung von Daten aus der Datenbankschicht und ihre Übergabe an die bzw. die Entgegennahme von Eingaben der Präsentationsschicht oder der Kommunikationskomponenten.

Programmiermodelle

ABAP unterstützt

Beide Modelle sind interoperabel.

Hinweis

Für neue Projekte und das Redesign bestehender Projekte wird die weitestgehende Verwendung von ABAP Objects empfohlen.

Datenbankzugriffe

Eine der wesentlichen Eigenschaften von ABAP als Programmiersprache kommerzieller Anwendungen ist der vollständig in die Sprache integrierte Zugriff auf Datenbanktabellen.

Die ABAP-Datenmodellierung erlaubt es, Datenmodelle für kommerzielle Anwendungen zu erstellen, die auf der Datenbank ausgeprägt werden:
Der Zugriff auf die Daten von Datenbanktabellen ist vollständig in ABAP integriert:

Spezielle Merkmale

ABAP ist eine 4GL-Sprache, die speziell für die Massendatenverarbeitung in kommerziellen Anwendungen entwickelt wurde und hat neben dem integrierten Datenbankzugriff u.a. folgende Merkmale im Vergleich zu elementareren Sprachen, in denen solche Funktionen in aller Regel in Bibliotheken liegen:

Die Integration solcher Funktionen in die Sprache ist im Wesentlichen vorteilhaft für die statische Überprüfbarkeit und die Performance von Programmen. Im Gegenzug enthält ABAP dadurch auch wesentlich mehr Sprachelemente als eine elementare Programmiersprache.

Mehrsprachigkeit

ABAP-Programme können völlig sprachunabhängig programmiert werden, indem sprachenspezifische Programmteile aus dem Quelltext ausgelagert und bei der Programmausführung umgebungsabhängig geladen werden. Eine Textumgebung bestimmt das genaue Programmverhalten, wie z.B. die Reihenfolge bei Textsortierungen, zu Laufzeit.