Was ist ABAP

Was ist ABAP?

Eine allgemeine Interviewfrage: „Was ist ABAP?“. ABAP steht für Advanced Business Application Programming. Es ist eine Programmiersprache der 4. Generation (da es sich um eine domänenspezifische Sprache handelt), die von SAP entwickelt wurde. Der ABAP-Kernel ist in C++ implementiert. ABAP ist eine hybride Programmiersprache, die sowohl ein prozedurales als auch ein objektorientiertes Programmiermodell unterstützt.
Alle ABAP-Programme, auch Reports genannt, befinden sich in der SAP-Datenbank. In der Datenbank existiert der gesamte ABAP-Code in zwei Formen: Quellcode, die mit den Werkzeugen der ABAP Workbench angezeigt und bearbeitet werden können; und generierter Code, eine binäre Darstellung etwas vergleichbar mit Java Byte-Code.

Wenn Sie einen Code im ABAP-Editor schreiben, wird er in zwei Dateien gespeichert. Einer ist genau das, was Sie geschrieben haben, und der andere ist der Code, der in das Binärformat konvertiert wurde. Der Binärcode ist derjenige, der tatsächlich vom Computer ausgeführt wird.

ABAP hat sowohl einen Compiler als auch einen Interpreter. Zunächst übersetzt der ABAP-Compiler ein ABAP-Programm in eine Zwischensprache, die als ABAP-Load bezeichnet wird. Dann kommt die ABAP Virtual Machine ins Spiel, ein Interpreter für ABAP-Loads (dh sie kann ABAP-Loads ausführen). SAP hat zwei Tabellen zum Speichern dieser Dateien, ABAP-Reports in der Tabelle D010S und ABAP Loads in der Tabelle D010L.

ABAP auf dem Anwendungsserver 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 Komponenten eines Application Server ABAP lassen sich entsprechend ihrer Aufgaben in die Schichten (Präsentation, Anwendung und Datenbank) einer dreistufigen Client-Server-Architektur einteilen.

  • Die Präsentationsschicht stellt die Benutzungsoberfläche eines AS ABAP (SAP GUI oder Web-Browser) dar und wird auf die Arbeitsplätze der einzelnen Benutzer verteilt.
  • Die Anwendungsschicht wird unter Verwendung eines oder mehrerer Anwendungsserver implementiert. Die Anwendungsschicht enthält die ABAP-Laufzeitumgebung, in der ABAP-Programme ausgeführt werden.
  • Die Datenbankschicht besteht aus einem Datenbanksystem, in dem der zentrale Datenbestand eines Application Server ABAP gespeichert wird.

Programmiermodelle

ABAP unterstützt Folgendes:

  • Ein objektorientiertes Programmiermodell basierend auf Klassen und Schnittstellen
  • Ein prozedurales Programmiermodell basierend auf Funktionsbausteinen und Unterprogrammen

Beide Module bieten Interoperabilität.

Arten von ABAP-Programmen

ABAP unterscheidet zwei Arten von ausführbaren Programmen:

  • Meldungen : Einfache Programme, die dem Benutzer eine Eingabe-/Ausgabeoption bieten
  • Modulpools: Komplexe Programme, die verschiedene Bildschirme für eine bessere Benutzererfahrung bieten.

 

Die nicht ausführbaren Programmtypen sind:

  • Module einschließen : Es wird automatisch bei der Generierung eingeschlossen; es wird oft verwendet, um große Programme zu unterteilen
  • Subroutinen-Pools: Es enthält ABAP-Unterprogramme (von FORM/ENDFORM-Anweisungen eingeschlossen und über PERFORM aufgerufen).
  • Funktionsgruppen: Dies sind Bibliotheken von eigenständigen FMs (von FUNCTION/ENDFUNCTION eingeschlossen und über CALL FUNCTION aufgerufen)
  • Objektklassen: ähnlich wie Java-Klassen & eine Reihe von Methoden und Attributen definieren
  • Schnittstellen: Sie enthält Methodendefinitionen ohne Implementierungen, für die jede Klasse, die die Schnittstelle implementiert, expliziten Code bereitstellen muss.
  • Typpools: Typpools definieren Sammlungen von Datentypen und Konstanten.

 

Entwicklungsumgebung

Es gibt zwei Möglichkeiten, in ABAP zu entwickeln.

ABAP-Workbench

Das ABAP-Workbench ist Teil des SAP ABAP-Systems und wird über SAPgui. Es enthält verschiedene Werkzeuge zum Bearbeiten von Programmen. Die wichtigsten davon sind (Transaktionscodes sind in Klammern angegeben):

  • ABAP-Editor(SE38): Wird zum Schreiben und Bearbeiten von Berichten, Modulpools, Include- und Subroutinenpools verwendet
  • ABAP-Wörterbuch(SE11): Wird verwendet, um Datenbanktabellen zu verarbeiten
  • Menümaler(SE41): Es dient zur Gestaltung der Benutzeroberfläche (zB Menüleiste & Standardsymbolleiste)
  • Siebmaler(SE51): Es wird verwendet, um Bildschirme und Ablauflogiken zu entwerfen
  • Funktionsgenerator(SE37): für Funktionsmodule
  • Klassenersteller(SE24): Es wird verwendet, um ABAP Objects-Klassen und -Schnittstellen zu erstellen

Das Objektnavigator (SE80) bietet eine einzige integrierte Schnittstelle für den Zugriff auf verschiedene Tools (einschließlich aller oben genannten Tools).

ABAP-Entwicklungstools

  • Verwenden eines bestimmten Plug-In-Sets im Eclipse-Plattform Wir können ABAP-Programme in Eclipse entwickeln, diese werden formal als „ABAP in Eclipse“ oder ABAP Development Tools (ADT) bezeichnet.
  • In diesem Szenario installiert der ABAP-Entwickler die benötigten Tools auf seinem Rechner und arbeitet lokal, wobei eine kontinuierliche Synchronisation mit dem Backend erfolgt.

Hinterlassen Sie eine Nachricht

Diese Seite verwendet Akismet, um Spam zu reduzieren. Erfahren Sie, wie Ihre Kommentardaten verarbeitet werden.