Entwicklung mit dem ABAP RESTful Appli­cation Programming Model

Entwicklung mit dem ABAP RESTful Appli­cation Programming Model

Das ABAP RESTful Appli­cation Programming Model (RAP) bietet Entwicklern eine leistungs­starke Umgebung für die Erstellung von effizi­enten, SAP HANA-optimierten OData-Services. In diesem Blogbeitrag werden wir die verschie­denen Entwick­lungs­mög­lich­keiten und ‑szenarien mit RAP näher beleuchten.

Managed Szenario

Im sogenannten Managed Szenario können völlig neue Geschäfts­ob­jekte (Green­field) entwi­ckelt werden. Das RAP-Framework übernimmt dabei die Beschaffung und Verwaltung der Daten des Geschäfts­ob­jekts aus den Daten­bank­ta­bellen. Dies umfasst die standard­mä­ßigen CRUD-Opera­tionen (Create, Read, Update, Delete). Entwickler müssen sich nicht um die Imple­men­tierung dieser grund­le­genden Funktionen kümmern, da das Framework sie bereits bereit­stellt.

Ein weiterer Vorteil des Managed Szenarios ist, dass das Framework auch das Sperren der zu verän­dernden Objekte übernimmt. Dies verein­facht den Entwick­lungs­prozess erheblich und ermög­licht es Entwicklern, sich auf die geschäfts­spe­zi­fische Logik zu konzen­trieren.

Unmanaged Szenario

Im Gegensatz dazu steht das Unmanaged Szenario (Brown­field), das verwendet werden kann, um bestehende Geschäfts­ob­jekte anzubinden. In diesem Fall muss das Daten-Handling zum Geschäfts­objekt durch eigenes Coding sicher­ge­stellt werden. Dieses Vorgehen ermög­licht es jedoch, bestehendes Legacy-Coding (z.B. SAP-BAPIs) für den Zugriff auf die Geschäfts­ob­jekte zu verwenden.

Das Unmanaged Szenario ist besonders nützlich, wenn Unter­nehmen ihre bestehenden Systeme und Anwen­dungen in die neue RAP-Umgebung integrieren möchten. Anstatt alles von Grund auf neu zu entwi­ckeln, können Entwickler ihre vorhan­denen Ressourcen und Fähig­keiten nutzen und nahtlos in das RAP-Modell integrieren.

Weitere Funktionen

Neben den Managed- und Unmanaged-Szenarien bietet das ABAP RESTful Appli­cation Programming Model noch weitere leistungs­starke Funktionen:

Draft-Handling: Diese Funktion kann für das Managed Szenario aktiviert werden und ermög­licht das Zwischen­spei­chern von angelegten oder geänderten Objekten. Dies ist besonders nützlich für Fiori-Apps, da Objekt­än­de­rungen beim Abbruch der App nicht verloren gehen und ein Wechsel des Gerätes während der Bearbeitung möglich ist.

Erwei­te­rungen der ABAP-Umgebung: Das RAP-Modell erweitert die ABAP-Umgebung mit neuen Schlüs­sel­wörtern, Annota­tionen und einer Entity Manipu­lation Language (EML) für den Zugriff auf Geschäfts­ob­jekt­daten. Entwickler können das Verhalten von Geschäfts­ob­jekten durch Behavior Defini­tions und Imple­men­ta­tions anpassen.

Mit diesen leistungs­starken Funktionen bietet das ABAP RESTful Appli­cation Programming Model Entwicklern eine moderne und effiziente Umgebung für die Erstellung von skalier­baren, cloud-fähigen Anwen­dungen. Egal, ob Sie neue Geschäfts­ob­jekte entwi­ckeln oder bestehende Systeme integrieren möchten, RAP bietet die richtigen Werkzeuge für Ihre Anfor­de­rungen.

Wie unter­scheidet sich das ABAP RESTful Appli­cation Programming Model von dem bishe­rigen ABAP Programming Model for SAP Fiori?

Das ABAP RESTful Appli­cation Programming Model (RAP) ersetzt das ältere ABAP Programming Model for SAP Fiori vollständig. Im Gegensatz zum alten Modell werden beim RAP-Modell einige Frame­works wie das Business Object Processing Framework (BOPF) nicht mehr direkt verwendet. Statt­dessen werden OData-Services automa­tisch generiert und können nicht mehr manuell über die Trans­aktion SEGW verwaltet werden. Außerdem bietet RAP neue Konzepte wie das Manage­d/­Un­ma­naged-Szenario, Draft-Handling und Erwei­te­rungen der ABAP-Umgebung mit neuen Schlüs­sel­wörtern, Annota­tionen und der Entity Manipu­lation Language (EML).

Wie wird die Entwicklung mit dem ABAP RESTful Appli­cation Programming Model im Vergleich zu früher aussehen?

Die Entwicklung mit RAP erfolgt haupt­sächlich über die ABAP Development Tools (ADT) in Eclipse. Die klassische Development Workbench (SE80) kann nur noch für die Bearbeitung einzelner Teilob­jekte wie Klassen oder Daten­bank­ta­bellen verwendet werden. Die Kernkon­zepte wie CDS-Views, Behavior Defini­tions, Service Defini­tions und Service Bindings werden alle in ADT erstellt und bearbeitet. Insgesamt soll die Entwicklung durch die Integration in einer Entwick­lungs­um­gebung und die neuen sprach­lichen Erwei­te­rungen effizi­enter und standar­di­sierter werden.

Welche Vorteile bietet das Draft-Handling im ABAP RESTful Appli­cation Programming Model?

Das Draft-Handling ermög­licht das Zwischen­spei­chern von neu erstellten oder geänderten Objekten in separaten Draft-Tabellen. Dies hat mehrere Vorteile: Erstens gehen Änderungen am Objekt nicht verloren, wenn die Anwendung abgebrochen wird. Zweitens kann der Benutzer das Gerät während der Bearbeitung wechseln, ohne dass Daten verloren gehen. Drittens wird ein abwei­chendes Sperr­konzept mit ausschließ­lichen Sperren über den Sperr-Server verwendet, die nicht an die Dialog-Session gebunden sind. Dies erhöht die Flexi­bi­lität und Stabi­lität bei der Bearbeitung von Objekten.