This is a test message to test the length of the message box.
Login
|
ABAP Cloud Programmiermodell
Erstellt von Software-Heroes

ABAP Cloud - Programmiermodell

643

Welches Programmiermodell kommt mit ABAP Cloud zum Einsatz und was können wir aus dem Vorgänger lernen? Mehr Details im Artikel.

Werbung


Für was benötigst du ein Programmiermodell in ABAP und wie ist das aktuelle Modell aufgebaut? In diesem Artikel werden wir kurz durch die Evolutionsgeschichte des Modells gehen und wie es heute aussieht.

 

Einleitung

Bereits vor ABAP Cloud hat sich einiges an der Architektur in ABAP geändert. Mit den neuen Core Data Services war es nun möglich, eine weitere Abstraktion zwischen Datenbank und UI zu schaffen und über die Assoziationen in den Views das Datenmodell und die Zusammenhänge besser zu beschreiben. Über zusätzliche Annotationen war es möglich, direkt aus einem Core Data Service einen OData Service zu erzeugen. Die OData Services sind wichtig, wenn du ein UI auf SAP Fiori Basis entwickeln möchtest.

 

Programme 

Aktuell werden die meisten Anwendungen als SAP GUI Transaktionen im System umgesetzt, da sie der bisherige Standard für den ABAP Entwickler und in einer sehr schnellen Zeit umsetzbar sind. Dabei setzen sie auf Controls und das klassische PBO und PAI für die Verarbeitung.

 

BOPF

Das Business Object Processing Framework, kurz BOPF, war der erste Versuch, die Modellierung und Verwendung von Business Objekten auf ein neues Level zu heben. Dabei kamen zum ersten Mal verschiedene Konzepte zum Einsatz, die die Wiederverwendbarkeit und Flexibilität der Objekte unterstützen sollte. Die Logiken rund um das Business Objekt wurden mit ABAP OO implementiert, um die modernere Architektur zu unterstreichen.

So konnte ein Objekt aus verschiedenen Tabellen bestehen, die miteinander in Beziehung standen. Wurde der Wurzelknoten gelöscht, wurden automatisch auch die abhängigen Einträge in den Knoten darunter mit gelöscht, ohne dass sich der Entwickler darum kümmern musste.

Es wurden Logiken implementiert, um vor dem Speichern die Daten zu prüfen (Validierungen). Damit konnten keine falschen Daten im BO gespeichert werden. Es gab Ermittlungen, die automatisch verschiedene Daten abgeleitet haben, ohne dass diese durch den Nutzer erfasst werden mussten. Sollte eine Aktion ausgeführt werden, die mit den Daten interagiert, konnte diese am BO getriggert werden, um Daten im Objekt zu ändern, zu prüfen und wieder zu speichern.

Eine Erweiterung des Konzepts war später, dass aus Core Data Services mit spezifischen Annotationen ein BOPF erzeugt werden konnte und die Modellierung über die Transaktionen entfiel. Dazu konnte leicht ein Service für das UI generiert werden.

Allerdings gab es auch einige Schattenseiten in dem Modell, da viel Boilerplate Code und Artefakte generiert wurden, die die Arbeit damit aber auch nicht wirklich erleichterten. Die Modellierung und Arbeit mit BOPF Objekten war nicht immer einfach und schnell durchzuführen.

 

RAP

Das ABAP RESTful Programming Model, kurz RAP, wurde als letztes Modell von SAP entwickelt. Es übernimmt viele Konzepte von BOPF, wie zum Beispiel Validierungen, Ermittlungen und Aktionen. Es wurde über viele Iterationen entwickelt und aufgebaut, bevor aus ihm das Modell wurde, das wir heute verwenden.

© SAP SE

 

Modellierung

Neben den Tabellen, basiert das Modell vor allem auf den Core Data Services, um die Datenmodellierung durchzuführen. Daher ist für die eigentliche Entwicklung der App erst einmal nicht viel ABAP Coding erforderlich. Möchtest du dann zusätzliches Verhalten implementieren und das Modell interaktiv und änderbar machen, musst du die Definition und die Implementierung durchführen.

Der Service wird nun nicht mehr im Gateway (SEGW) verwaltet, sondern du legst neue Entwicklungsartefakte wie die Service Definition (Bündelung der Entitäten) und das Service Binding (Protokoll) an.

 

Erste Schritte

Die Einarbeitung in das Framework kann recht komplex sein, da es so viele neue Objekte und Möglichkeiten gibt. kommst du aus dem Umfeld der Reports und hast kein BOPF davor gelernt, können die vielen unterschiedlichen Dinge erst einmal etwas überfordernd wirken. Daher empfehlen wir dir am Anfang einen groben Überblick über RAP zu bekommen. Die Einstiegsschulung über learning.sap.com kann dir dabei helfen, schnell ein erstes Objekt auf die Beine zu stellen. Grundsätzlich empfehlen wir dir klein zu starten, ein Objekt mit einer Tabelle, um die neuen Konzepte zu lernen. Dann solltest du Schritt für Schritt die Komplexität erhöhen:

 

Lernen 

Das Lernen des neuen Progammiermodells wird einige Monate an Einarbeitung kosten, um die Technik und die Methodiken zu verstehen. Am Ende wartet aber ein effizientes Modell, um Fiori Elements Anwendungen umsetzen zu können und einen neuen Standard zu etablieren. Auf jeden Fall empfehlen wir dir die praktische Anwendung von RAP mit verschiedenen Szenarien, um so die Grundkenntnisse des Modells zu lernen. Einen Fokus solltest du vor allem auf die folgenden Bereiche legen:

  • Datenmodellierung mit Eigenen und Standard Core Data Services
  • Erstellung von Verhalten 
  • Entity Manipulation Language (EML)
  • Gestaltung der Fiori UIs mit Annotationen

 

Fazit

Hast du erst einmal das neue Programmiermodell verstanden, wird dir die Umsetzung von SAP Fiori (Elements) Anwendungen sehr viel einfacher fallen und du wirst schneller Ergebnisse erzielen. Mit etwas Übung wirst du bald Anwendungen so schnell erstellen, wie du heute Reports mit ALV zur Verfügung stellst.

 

Weitere Informationen:
SAP Help - ABAP RESTful Programming Model
BOPF Developer Guide


Enthaltene Themen:
ABAP CloudABAPBOPFRAPProgrammiermodell
Kommentare (0)



Und weiter ...

Bist du zufrieden mit dem Inhalt des Artikels? Wir posten jeden Dienstag und Freitag neuen Content im Bereich ABAP und unregelmäßig in allen anderen Bereichen. Schaue bei unseren Tools und Apps vorbei, diese stellen wir kostenlos zur Verfügung.


CCM - Kennzahlen berechnen

Kategorie - ABAP

Wie wird eigentlich der Technical Debt Score im Clean Core Measurement Projekt berechnet? Und wie kann dieser entsprechend in Zukunft abgewandelt werden? Auf diese Fragestellung gehen wir in diesem Artikel einmal im Detail ein.

05.08.2026

ABAP Cloud - Datumsfunktionen

Kategorie - ABAP

Du bist auf der Suche nach der Funktion für das Quartal eines Datums, den letzten Tag im Monat oder den ersten Tag der Woche? Mit ABAP Cloud brauchst du dafür keine Funktionsbausteine mehr. Schauen wir uns die Beispiele an.

31.07.2026

CCM - Standard APIs

Kategorie - ABAP

Wenn wir eine Anbindung an das Central ATC (ABAP Test Cockpit) machen, welche APIs brauchen wir dann eigentlich um Informationen zu erhalten? Hier schauen wir uns die verschiedenen Use-Cases und APIs an.

24.07.2026

CCM - Ermittlung Level A Objekte

Kategorie - ABAP

Wie kommen wir eigentlich an alle Level A Kundenobjekte heran und können sie zu anderen ABAP Cloud Objekten abgrenzen? In diesem Artikel schauen wir auf die verschiedenen Objekte und Prozesse.

21.07.2026

Clean Core Measurement - Übersicht

Kategorie - ABAP

Ein wichtiges Thema für Transparenz und Motivation ist das Thema Messbarkeit von Clean Core und den Fortschritt innerhalb des S/4HANA Projekts. So ist jeder Zeit sichtbar und nachvollziehbar, wo sich das Projekt befindet.

14.07.2026