29. Mai 2024

Das ABAP 1×1 – Die ABAP Grundlagen auf einen Blick

Früher oder später kommt jeder im SAP-Umfeld mit ABAP in Berührung. Wie fast alles in der SAP-Welt ist ABAP aber ein sehr umfangreiches Themengebiet und das kann gerade am Anfang einschüchternd wirken. Dieser Blogbeitrag soll dir einen Überblick über ABAP Grundlagen verschaffen, egal ob du eine Karriere als Entwickler anstrebst oder nur über den Begriff gestolpert bist. 

Was ist ABAP eigentlich? 

ABAP, kurz für Advanced Business Application Programming, wurde 1983 von SAP eingeführt. Die Programmiersprache dient der Entwicklung, dem Betrieb und der Wartung von betriebswirtschaftlichen Applikationen im SAP-Umfeld. In einer Unternehmenslandschaft, in der SAP-Systeme täglich Millionen von Datensätzen verarbeiten, ist ABAP unverzichtbar für die Anpassung und Erweiterung von SAP-Standardfunktionen. Mit ABAP können individuelle Anforderungen der Unternehmen umgesetzt und maßgeschneiderte Lösungen entwickelt werden.  

ABAP wird laufend weiterentwickelt und um neue Funktionen und Syntax ergänzt. Ergänzt trifft es hier richtig, da SAP das Prinzip der Abwärtskompatibilität verfolgt. Eine der ausschlaggebenden Einführungen war ABAP Objects, die das bisher prozedurale Programmiermodell durch objektorientierte Programmierung erweiterte. Seither sind die objektorientierten Konzepte zu gängiger Praxis geworden und werden in den meisten Fällen zur Implementierung von Geschäftslogik verwendet.  

Warum braucht man ABAP? 

Da SAP eine Standardsoftware ist, stoßen viele Unternehmen auf Herausforderungen, die über die ausgelieferten Funktionen hinausgehen. Basiert das Produkt auf der ABAP-Plattform, können interne oder externe SAP-Entwickler mit ABAP oft eingreifen, um kundenspezifische Lösungen zu entwickeln. Dies kann die Erstellung von Transaktionen, Benutzeroberflächen oder Datenbanktabellen umfassen.  

Ein grundlegendes Verständnis von ABAP ist nicht nur für Entwickler von Vorteil, sondern kann auch anderen Berufsgruppen im SAP-Umfeld bei der Fehlerbehebung helfen. Der integrierte Debugger ermöglicht es, den Code schrittweise zu durchlaufen und Fehler effektiv zu behandeln. Somit ist ABAP nicht nur ein Werkzeug zur Anpassung und Erweiterung des SAP-Standards, sondern auch ein unverzichtbares Instrument zur Unterstützung des Betriebs und zur Optimierung von Geschäftsprozessen. 

Wie sieht der Aufbau eines ABAP-Systems aus? 

Der Application Server ABAP (AS ABAP) ist eine Plattform, auf der wichtige Geschäftsprozesse ablaufen. Er bietet eine vollständige Entwicklungs- und Laufzeitumgebung für ABAP-basierte Anwendungen und ist Teil einer dreischichtigen Architektur. Über die Präsentationsschicht erfolgt die Ein- und Ausgabe von Daten sowie die Benutzerinteraktion. Die Kommunikation zwischen Präsentationsserver und Applikationsserver wird über das SAP GUI (Graphical User Interface) ermöglicht. Die Verarbeitung der Daten findet zentral auf einem oder mehreren Applikationsservern, der Applikationsschicht, statt. Die Datenhaltung erfolgt auf einem Datenbankserver, der über ein relationales Datenbank-Management-System (RDBMS) verfügt.  

Abb. 1: Aufbau AS-ABAP 

Die ABAP-Entwicklungsumgebung 

SAP bietet Entwicklern mit der Transaktion SE80 Zugang zur ABAP Workbench, der klassischen Entwicklungsumgebung. In der Workbench werden alle Werkzeuge, um ABAP-Programme zu entwickeln, auszuführen und zu testen, bereitgestellt. Der Object Navigator listet alle Entwicklungsobjekte in einer baumartigen Struktur auf. Die wichtigsten Objekte sind Dictionary Objekte, Programme und Programmkomponenten. 

Seit 2012 bieten die ABAP Development Tools (ADT) die Möglichkeit, Eclipse als Entwicklungsplattform zu nutzen. Die ADT werden kontinuierlich weiterentwickelt und bieten zahlreiche praktische Funktionen, wie Auto-Vervollständigung, Syntax-Highlighting und Refactoring. Allerdings gibt es auch einige Änderungen, zum Beispiel die Notwendigkeit ABAP Dictionary Objekttypen nun mit Quellcode zu erstellen, anstatt sie direkt in einem formular-basierten Editor anzulegen. Beide Entwicklungsumgebungen können simultan in On-Premise-Projekten eingesetzt werden. Entwickler können damit das Beste aus beiden Welten nach persönlichen Vorlieben und Anforderungen nutzen. 

Abb. 2: SE80 vs. Eclipse 

Datenbankzugriffe mit ABAP

Die Datenbankmodellierung und der Zugriff stellen einen zentralen Bestandteil der Entwicklung von Geschäftsanwendungen dar und sind vollständig in die Sprache ABAP integriert. Das ABAP Dictionary fungiert dabei als Datenablage für Dictionary Objekte wie Datenbanktabellen, Datentypen und Views. Vorgenommene Änderungen werden durch die zentrale Ablage automatisch allen Systemkomponenten zur Verfügung gestellt und gewährleisten so Datenkonsistenz und -integrität. 

SAP bietet bereits eine umfangreiche Sammlung von Elementen und Tabellen im Standard an. Darüber hinaus können Entwickler im Dictionary auch eigene Objekte definieren.  

Mit der Einführung von Core Data Services (CDS) in ABAP 7.40 erhielten Entwickler eine leistungsfähige Möglichkeit, Datenmodelle zu abstrahieren und zu definieren. CDS-Views filtern, kombinieren und transformieren Daten aus verschiedenen Tabellen, ohne an dem Modell selbst etwas zu ändern.  

Bei der Entwicklung von ABAP-Anwendungen werden Datenbankoperationen direkt im Quellcode mithilfe von ABAP SQL Befehlen durchgeführt. Eine effiziente Modellierung ist hierbei von entscheidender Bedeutung für die Performance der Programme sowie für die korrekte Verarbeitung und Darstellung der Daten. Zur Verarbeitung im Arbeitsspeicher werden die Daten häufig in internen Tabellen gespeichert, die ähnlich wie Arrays oder Listen in anderen Programmiersprachen funktionieren. Diese internen Tabellen bieten eine flexible Möglichkeit, Daten temporär zu speichern und zu verarbeiten, bevor sie an das Benutzerinterface oder die Datenbank weitergeleitet werden. 

Wie geht es nach der Entwicklung weiter?  

Da die Entwicklung zentralisiert auf der ABAP-Plattform stattfindet, ist eine Trennung von Produktiv- und Entwicklungssystem erforderlich. Lokale Änderungen an einer bestehenden ABAP-Anwendung werden sofort für alle Nutzer des Systems wirksam werden. Um das Tagesgeschäft nicht zu beeinträchtigen, erfolgt die Entwicklung auf einem Entwicklungssystem und wird anschließend „transportiert“, klassischerweise zunächst auf ein Testsystem. Hier werden die Lösungen getestet, bevor sie schließlich nach Freigabe auf das Produktivsystem transportiert werden. 

Abb. 3: Systemlandschaft 

Herausforderungen in der ABAP-Entwicklung 

In der ABAP-Entwicklung steht man vor einer Reihe von Herausforderungen, die Aufmerksamkeit erfordern. Datensicherheit ist hierbei von höchster Priorität. Es ist entscheidend, Berechtigungen sorgfältig zu verwalten, um sensible Daten vor unbefugtem Zugriff zu schützen. Eine klare und umfassende Dokumentation des Codes erleichtert nicht nur die Zusammenarbeit mit anderen Entwicklern, sondern trägt auch maßgeblich zur Fehlerbehandlung und Debugging-Prozessen bei. Eigenentwicklungen müssen bei Updates und Releasewechseln genau überprüft werden, um eine reibungslose Migration sicherzustellen. Eine effektive Fehlerbehandlung ist ein weiterer Schlüssel zur Stabilität und Benutzerzufriedenheit der Anwendungen. Durch die Minimierung von Änderungen an Standardfunktionalitäten bleibt die Wartbarkeit und Kompatibilität der Systeme gewährleistet. 

Wie relevant ist ABAP nun wirklich?

Zusammenfassend ist ABAP für Unternehmen, die ABAP-basierte SAP-Produkte nutzen, unverzichtbar. Es ermöglicht nicht nur die Anpassung und Erweiterung von SAP-Standardfunktionen, sondern auch die Entwicklung maßgeschneiderter Lösungen, um den individuellen Anforderungen gerecht zu werden. Von der Entwicklung bis zum Betrieb und der Wartung von betriebswirtschaftlichen Applikationen spielt ABAP eine zentrale Rolle. Dabei sind Aspekte wie Datensicherheit, Dokumentation, und sinnvolle Fehlerbehandlung von entscheidender Bedeutung.  

Sollte dich dieser Blogbeitrag über die Grundlagen von ABAP neugierig gemacht haben, ABAP-Profi zu werden, dann schau dir doch mal unser Traineeprogramm an! 

Diesen Beitrag teilen:

Themen und Schlagwörter:

Ein Beitrag von:

Carolina Stegherr

Carolina ist Associate Consultant im Bereich Utilities. Sie hat das Traineeprogramm mit dem Schwerpunkt Entwicklung durchlaufen und bringt in ihre Projekte sowohl technisches Know-how als auch fachliches Wissen ein.
Alle Beiträge von: Carolina Stegherr

Ähnliche Beiträge

Funktionen und Vorteile der SAP Business Technology Platform

Funktionen und Vorteile der SAP Business Technology Platform

In diesem Blogbeitrag werfen wir einen genaueren Blick auf die Funktionen und Vorteile der SAP BTP und damit darauf, wie die Plattform Unternehmen bei den Herausforderungen der digitalen Welt begleitet und ihre Geschäftsprozesse transformiert.

Organizational Change Management bei SAP S/4HANA

Organizational Change Management bei SAP S/4HANA

In einer sich schnell verändernden Geschäftswelt ist die Unternehmens-Digitalisierung, z. B. eine Implementierung der Software SAP S/4HANA, ein ehrgeiziges Ziel. Der Veränderungsprozess, der mit einer SAP S/4HANA-Einführung einhergeht, kann sehr herausfordernd sein. Eine Herausforderung liegt in einem der wichtigsten – wenn nicht dem wichtigsten – Bindeglied einer Organisation: dem Menschen.

Die Fördermittelvergabe mit SAP Grantor unter SAP S/4HANA Teil 1

Die Fördermittelvergabe mit SAP Grantor unter SAP S/4HANA Teil 1

SAP-Kunden im Public Umfeld stehen vor der Herausforderung auf SAP S/4HANA zu transformieren, damit sind ebenfalls Änderungen im „Public Sector Management (PSM)“ verbunden. Dabei handelt es sich um die Kernlösung der SAP für Prozesse der öffentlichen Verwaltung. Diese lässt sich flexibel zu anderen SAP Lösungen und Drittsystemen integrieren.

Die Fördermittelvergabe mit SAP Grantor unter SAP S/4HANA Teil 2

Die Fördermittelvergabe mit SAP Grantor unter SAP S/4HANA Teil 2

Im Oktober 2023 wurden eine Reihe von neuen Funktionen vorgestellt, die für Grantor unter SAP S/4HANA zur Verfügung stehen, beispielsweise die Mittelabrufe und Änderungsanträge.
In diesem Beitrag wird auf alle neuen Funktionalitäten eingegangen, die seit der Erstauslieferung hinzugefügt wurden.