SAP hat die ABAP-Entwicklung revolutioniert! Erfahren Sie, wie Sie mit Core Data Services, Behavior Definitions und UI-Annotationen Anwendungen entwickeln, die für SAP S/4HANA optimiert sind ob on-premise oder in der Cloud . Die Autoren führen Sie in die neuen Entwicklungstools und -technologien ein und zeigen Ihnen das optimale Vorgehen in End-to-End-Beispielen . Diese zweite Auflage wurde umfassend erweitert : jetzt mit ABAP Cloud, Erweiterbarkeitsfunktionen und den neuen Business-Objekt-Interfaces.
Aus dem Inhalt:
- REST-Architektur
- Core Data Services (CDS)
- Verhaltensdefinition und -implementierung
- Definition und Binding von Business Services
- Felddefinitionen, Assoziationen und Aktionen
- Entity Manipulation Language (EML)
- SAP Fiori Elements
- Eclipse, Visual Studio Code und SAP Business Application Studio
- Implementierungstypen Managed und Unmanaged
- Business-Objekt-Interfaces
- Erweiterbarkeit von ABAP-Anwendungen
- ABAP-Cloud-Programmiermodell
Umgang mit CDS, Annotationen und SAP Fiori Elements
Autorentext
Michael Lensch ist bei der All for One Group SE für ein internationales Team von SAP-Entwicklerinnen und -Entwicklern zuständig. Zusätzlich verantwortet er als Development Manager die Entwicklung in SAP-S/4HANA-Einführungsprojekten im In- und Ausland. Seit 2023 ist er als Gastdozent an der DHBW Heilbronn für das Thema ABAP RESTful Application Programming Model tätig. Er studierte Informatik an der Fachhochschule Trier.
Inhalt
Vorwort ... 17
Einleitung ... 19
TEIL I. Konzepte des ABAP RESTful Application Programming Models ... 25
1. Einführung in das ABAP RESTful Application Programming Model ... 27
1.1 ... Was ist das ABAP RESTful Application Programming Model? ... 28
1.2 ... Architektur und Konzepte des ABAP RESTful Application Programming Models ... 49
1.3 ... Entwicklungsobjekte des ABAP RESTful Application Programming Models ... 56
1.4 ... ABAP Development Tools als Entwicklungswerkzeug ... 62
1.5 ... Qualitative Eigenschaften des ABAP RESTful Application Programming Models ... 63
1.6 ... Verfügbarkeit des ABAP RESTful Application Programming Models ... 67
1.7 ... Die Rolle des ABAP RESTful Application Programming Models im ABAP-Cloud-Entwicklungsmodell ... 71
2. Core Data Services: Datenmodellierung ... 79
2.1 ... Was sind Core Data Services? ... 80
2.2 ... Aufbau und Syntax von Core Data Services ... 84
2.3 ... Assoziationen ... 99
2.4 ... Annotationen ... 104
2.5 ... Zugriffskontrollen ... 110
2.6 ... Erweiterbarkeit von CDS-Entitäten ... 116
2.7 ... Weitere CDS-Funktionalität ... 124
2.8 ... Virtuelles Datenmodell ... 132
2.9 ... CDS-Sprachelemente zur Modellierung von Geschäftsobjekten ... 137
3. Verhaltensdefinition ... 141
3.1 ... Was ist eine Verhaltensdefinition? ... 142
3.2 ... Verhaltensdefinition in den ABAP Development Tools bearbeiten ... 155
3.3 ... Implementierungstypen ... 165
3.4 ... Strict-Modus ... 170
3.5 ... Entitätsverhaltensdefinition ... 171
3.6 ... Behavior Pool definieren ... 172
3.7 ... Nummernvergabe ... 175
3.8 ... Feldeigenschaften ... 180
3.9 ... Feld-Mappings ... 183
3.10 ... Standardoperationen für eine CDS-Entität ... 186
3.11 ... Spezifische Operationen für eine CDS-Entität ... 190
3.12 ... Konkurrierende Zugriffe und Sperrverhalten ... 205
3.13 ... Interne Geschäftslogik ... 210
3.14 ... Berechtigungsprüfungen ... 222
3.15 ... Draft-Handling ... 228
3.16 ... Ereignisse ... 243
3.17 ... Übergreifende Konzepte ... 247
4. Entity Manipulation Language: Zugriff auf Geschäftsobjekte ... 257
4.1 ... Datentypen ... 258
4.2 ... EML-Operationen ... 262
4.3 ... Verwendung von EML außerhalb von Verhaltensimplementierungen ... 274
4.4 ... Konkrete Anwendungsfälle ... 277
5. Verhaltensimplementierung ... 283
5.1 ... Business Object Provider API ... 283
5.2 ... Laufzeitverhalten des ABAP RESTful Application Programming Models ... 284
5.3 ... Schnittstellen für den Interaktionshandler und den Speicherhandler ... 288
5.4 ... Interaktionshandler ... 289
5.5 ... Speicherhandler ... 314
5.6 ... Ereignisse ... 324
6. Business-Services ... 331
6.1 ... Projektionsschicht ... 332
6.2 ... Servicedefinition ... 336
6.3 ... Service-Binding ... 337
6.4 ... Business-Services im SAP Gateway Client testen ... 341
6.5 ... UI-Services mit der SAP-Fiori-Elements-Vorschau testen ... 344
6.6 ... BO-Interfaces ... 345
7. Erweiterbarkeit von Geschäftsobjekten ... 355
7.1 ... Einführung in das Erweiterungskonzept ... 355
7.2 ... Erweiterungsoptionen ... 360
7.3 ... Ein Standardgeschäftsobjekt erweitern ... 376
8. Anwendungsoberflächen und SAP Fiori Elements ... 407
8.1 ... Entwicklungswerkzeuge ... 408
8.2 ... SAP-Fiori-Elements-Oberflächen für RAP-Anwendungen ... 412
TEIL II. Praktische Anwendungsentwicklung mit dem ABAP RESTful Application Programming Model ... 447
9. Anwendungsfälle ... 449
9.1 ... Einsatzgebiete des ABAP RESTful Application Programming Models ... 449
9.2 ... Abgrenzung der verschiedenen Implementierungstypen ... 450
9.3 ... Entscheidungskriterien zur Auswahl des Implementierungstyps ... 452
10. Managed Scenario: Entwicklung einer Anwendung mit SAP Fiori Elements ... 457
10.1 ... Beschreibung des Anwendungsfalls ... 458
10.2 ... Datenmodell aufbauen ... 458
10.3 ... Verhaltensdefinitionen erstellen ... 473
10.4 ... Business-Service definieren ... 480
10.5 ... SAP-Fiori-Elements-Oberfläche erstellen ... 485
10.6 ... Anreicherung um eine Ermittlung ... 493
10.7 ... Anreicherung um eine Validierung ... 498
10.8 ... Anreicherung um eine Aktion ... 502
10.9 ... Generierung und Deployment der Anwendung ... 505
10.10 ... Datei-Upload ... 512
11. Managed Scenario mit Unmanaged Save: Bestehende Anwendung integrieren ... 517
11.1 ... Beschreibung des Anwendungsfalls ... 518
11.2 ... Datenmodell aufbauen ... 522
11.3 ... Verhaltensdefinition erstellen ... 535
11.4 ... Funktion »Bestellung anlegen« realisieren ... 537
11.5 ... Funktion »Bestellung löschen« realisieren ... 565
11.6 ... Business-Services definieren ... 571
11.7 ... Be…