
ABAP
Inhaltsverzeichnis
Das Wichtigste im Überblick
- ABAP ist die proprietäre Programmiersprache von SAP und wird für die Entwicklung von SAP-Modulen genutzt. Sie ist besonders auf die Verarbeitung von Massendaten im Geschäftskontext ausgerichtet.
- ABAP verwendet das Data Dictionary für eine strukturierte Verwaltung von Datentypen und bietet besondere Konzepte wie das “Friends”-Konzept, das den Zugriff auf private Komponenten zwischen Klassen ermöglicht.
- Die Entwicklung mit ABAP erfolgt entweder über die ABAP Workbench oder ABAP Development Tools für Eclipse, was eine erweiterte Entwicklungsumgebung ermöglicht.
- ABAP OO erweitert ABAP um objektorientierte Funktionen und ermöglicht eine bessere Modularisierung und Performance-Optimierung von Anwendungen.
Was ist SAP ABAP?
ABAP steht für „Advanced Business Application Programming“ und ist die proprietäre Programmiersprache des Softwarekonzerns SAP, also speziell für dessen Systeme entwickelt. Die Sprache wurde in den 1980er-Jahren veröffentlicht, zusammen mit der dritten Generation der SAP Business Suite, SAP R/3. Seitdem wurde sie zur zentralen Entwicklungsbasis für SAP-Anwendungen. SAPs Programmiersprache ABAP war von Anfang an darauf ausgelegt, leistungsfähig mit großen Datenmengen in unternehmensrelevanten Prozessen zu arbeiten und unterscheidet sich daher deutlich von anderen Programmiersprachen in Bezug auf ihre tiefe Integration in betriebswirtschaftliche Abläufe und SAP-spezifische Datenstrukturen. ABAP spielt bis heute, auch im modernen SAP S/4HANA-Umfeld, eine zentrale Rolle – insbesondere im Zusammenspiel mit dem neuen ABAP RESTful Application Programming Model (RAP), das die Entwicklung cloudfähiger, serviceorientierter Anwendungen ermöglicht.
ABAP Syntax
Die Syntax der Programmiersprache ist deklarativ geprägt und eng mit der SAP-Systemarchitektur verzahnt. Da ABAP sowohl prozedurale als auch objektorientierte Programmieransätze (ABAP OO) unterstützt, können mit ihr Betriebsanforderungen flexibel umgesetzt werden.
Typische Sprachkonstrukte umfassen:
- Deklarationen mit DATA, TYPES und CONSTANTS
- Kontrollstrukturen wie IF, CASE, LOOP
- Modularisierungen über FORM, FUNCTION oder METHOD
Hier ein Beispiel für ABAP Code:
Was ist ABAP OO?
Die moderne ABAP-Syntax wird kontinuierlich weiterentwickelt. ABAP Objects (ABAP OO) ist eine objektorientierte Erweiterung der Programmiersprache ABAP, die zusätzliche Sprachelemente und Konzepte wie Klassen, Objekte, Vererbung und Interfaces einführt. Einen Großteil der klassischen prozeduralen ABAP-Elemente können Sie auch im objektorientierten Kontext nutzen, was einen schrittweisen Übergang ermöglicht.
Was ist der Vorteil von ABAP OO? Die Integration der Objektorientierung ermöglicht es Entwicklern, Anwendungen zu modularisieren und damit zu vereinfachen. Die Objektorientierung verbessert außerdem die Laufzeit-Performance und minimiert unnötige oder konkurrierende Datenbankabfragen. Gerade in modernen Entwicklungsansätzen wie dem ABAP RESTful Application Programming Model (RAP) bildet ABAP OO die Grundlage, um robuste, wartbare und wiederverwendbare Anwendungen zu entwickeln. Wie genau das ABAP RESTful Programming Model funktioniert, haben wir Ihnen in einem Beitrag genauer erläutert.
Besonderheiten von ABAP
ABAP unterscheidet sich von anderen Programmiersprachen wie C, C++ oder Java. Hier ein Überblick über wichtige Besonderheiten:
Data Dictionary
Die von ABAP verwendeten Datentypen sind einfach, statisch und strukturiert. Sie werden in einem Data Dictionary (DDIC) definiert und gespeichert. So entsteht eine Trennung zwischen Datentypen und Anwendungscodes, die es Anwendenden ermöglicht, die DDIC-Typen auch im prozeduralen ABAP in verschiedenen Anwendungen wiederzuverwenden.
Tabellarische Datentypen von ABAP
Auch tabellarische Datentypen gehören zum Kern des ABAP-Sprachumfangs. Über eigene in ABAP integrierte Befehle haben Anwendende direkten Zugriff auf interne Tabellen, können beispielsweise einzelne Zeilen lesen, ändern oder tabellenbasierte Datenbankoperationen durchführen.
ABAPs „Friends“-Konzept
Ein weiteres Konzept, das ABAP von anderen Programmiersprachen unterscheidet, ist das „Friends“-Konzept: Danach können Objekttypen bzw. Klassen auf private Komponenten anderer Objekttypen bzw. Komponenten zugreifen. Das ist normalerweise nicht möglich, in seltenen Fällen aber erforderlich.
Application Server
ABAP läuft auf dem SAP Netweaver Application Server. Dieser ist nicht nur als ABAP-, sondern auch als JAVA-EE-Applikationsserver (oder im Dual-Stack sogar eine Kombination aus beiden) verfügbar. Im Dual-Stock gibt es auch eine Kombination aus beiden. Über Transportaufträge können Sie Softwarekomponenten gebündelt auf dem ABAP-Server transportieren.
Interne Versionsverwaltung
In der Webentwicklung wird die Versionsverwaltung oft in eine externe Software wie Git ausgelagert – nicht so in ABAP: Hier findet die Versionsverwaltung intern statt. Die Anbindung an verwaltete Verzeichnisse zur Speicherung von digitalen Objekten läuft über abapGit.
Laufzeitumgebung
ABAP läuft auf dem SAP Netweaver Application Server, der speziell für SAP-Anwendungen optimiert ist. Während früher oft Dual-Stack-Systeme (ABAP und Java) verwendet wurden, setzt SAP heute auf eine klare Trennung der Technologien. SAP S/4HANA ist beispielsweise ein reines ABAP-System. Java kommt in einzelnen Komponenten, beispielsweise der SAP Integration Suite, zum Einsatz. Über Transportaufträge können Softwarekomponenten systemübergreifend verwaltet und ausgeliefert werden. Die Architektur des NetWeaver AS ABAP bildet auch die Basis für den cloudbasierten ABAP Stack in der SAP Business Technology Platform (BTP), auch bekannt als “Steampunk”.
Abwärtskompatibilität
ABAP ist größtenteils abwärtskompatibel: Neue Updates führen nicht dazu, dass ältere Versionen ungültig werden. Stattdessen können Anwendende sie weiterhin verwenden. Dass sowohl ältere als auch neuere Befehle parallel bestehen bleiben können, führt zu dem hohen Sprachumfang von ABAP. Allerdings bestätigen auch hier Ausnahmen die Regel: Bei der Erweiterung ABAP OO gibt es einige Elemente, die nach Updates nicht mehr zulässig sind. Grundsätzlich gilt aber, dass alte Entwicklungen funktionsfähig bleiben und nicht bei jeder Aktualisierung erneuert werden müssen.
Entwicklungsumgebungen
ABAP (Development) Workbench
Die ABAP Workbench ist die klassische, in die SAP GUI integrierte Entwicklungsumgebung für ABAP. Sie ist funktional, aber an die Möglichkeiten und Grenzen der SAP-Benutzeroberfläche gebunden. So können Nutzer beispielsweise immer nur eine begrenzte Anzahl an Fenstern gleichzeitig öffnen. Mit den ABAP Development Tools (ADT) lässt sich die Entwicklungsumgebung allerdings erweitern.
ABAP Development Tools für die Eclipse IDE
Über die ABAP Development Tools kann die Entwicklungsumgebung Eclipse IDE mit dem ABAP-Backend-Server verbunden werden. Entwickler können so in einer modernen Umgebung arbeiten und unter anderem folgende Aufgaben ausführen:
- Anlegen von Entwicklungsobjekten (Programme, Klassen, Funktionsbausteine)
- Anlegen von Data-Dictionary-Objekten (Datenelemente oder Tabellen)
- Ausführen des „Codes Inspector/ABAP Test Cockpit“
- Freigabe von Transporten
Die Development-Tools ermöglichen es Entwicklern zudem, CDS Views und AMDPs anzulegen und zu pflegen, was in der Workbench nicht möglich ist. Dies macht Eclipse IDE zur bevorzugten Umgebung für neue Entwicklungen, insbesondere im Kontext von SAP S/4HANA und RAP.

Fazit: ABAP – unverzichtbar für die SAP-Entwicklung der Zukunft
ABAP ist weit mehr als nur eine betagte Programmiersprache aus der SAP-Welt. Sie ist ein leistungsstarkes Werkzeug, das kontinuierlich weiterentwickelt wird und heute moderne Cloud-Architekturen ebenso unterstützt wie klassische On-Premises-Systeme. Mit Konzepten wie dem ABAP RESTful Application Programming Model, objektorientierter Erweiterung und interner Versionsverwaltung bietet ABAP eine beeindruckende Bandbreite an Möglichkeiten für Entwicklerinnen und Entwickler, die zukunftssichere SAP-Geschäftsanwendungen gestalten möchten.
Haben Sie Fragen zum Thema ABAP oder ABAP OO? Dann hinterlassen Sie einen Kommentar oder kontaktieren Sie uns gern unter info@erlebe-software.de.
Dieser Artikel erschien bereits im November 2022. Der Artikel wurde am 30.07.2025 erneut geprüft und mit leichten Anpassungen aktualisiert.
FAQ
Was ist ABAP?
ABAP ist die proprietäre Programmiersprache von SAP. Die Abkürzung steht für „Advanced Business Application Programming“ und der Großteil der SAP-Anwendungen wurden mit dieser Programmiersprache entwickelt.
Welche Vorteile bietet ABAP gegenüber anderen Programmiersprachen in SAP-Systemen?
ABAP ist speziell auf SAP-Systeme zugeschnitten. Es bietet eine tiefe Integration in betriebswirtschaftliche Prozesse, direkten Datenbankzugriff über das Data Dictionary und eingebaute Werkzeuge wie die Workbench und abapGit – alles innerhalb des SAP-Ökosystems.
Was ist das ABAP RESTful Application Programming Model (RAP)?
RAP ist ein modernes Entwicklungsmodell, das auf ABAP OO basiert und die Erstellung von cloudfähigen, serviceorientierten Anwendungen im SAP S/4HANA-Umfeld ermöglicht. Es unterstützt moderne Architekturprinzipien wie REST-APIs und entkoppelte Geschäftslogik.
Wie unterscheidet sich die ABAP Workbench von den ABAP Development Tools (ADT)?
Die Workbench ist in die klassische SAP GUI eingebunden und eher für traditionelle Entwicklung geeignet. ADT hingegen basiert auf Eclipse und unterstützt moderne Entwicklungspraktiken, z. B. CDS Views oder AMDPs, die in der Workbench nicht nutzbar sind.
Wer kann mir beim Thema ABAP helfen?
Wenn Sie Unterstützung zum Thema ABAP benötigen, stehen Ihnen die Experten von Erlebe Software, dem auf dieses Thema spezialisierten Team der mindsquare AG, zur Verfügung. Unsere Berater helfen Ihnen, Ihre Fragen zu beantworten, das passende Tool für Ihr Unternehmen zu finden und es optimal einzusetzen. Vereinbaren Sie gern ein unverbindliches Beratungsgespräch, um Ihre spezifischen Anforderungen zu besprechen.