Lutz Baumbusch, Matthias Jäger, Michael Lensch
ABAP RESTful Application Programming Model
Moderne Anwendungsentwicklung für SAP S/4HANA und die Cloud mit RAP
Lutz Baumbusch, Matthias Jäger, Michael Lensch
ABAP RESTful Application Programming Model
Moderne Anwendungsentwicklung für SAP S/4HANA und die Cloud mit RAP
- Gebundenes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
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-ArchitekturCore Data Services (CDS)Verhaltensdefinition und…mehr
Andere Kunden interessierten sich auch für
- André TiebingABAP-Entwicklung auf der SAP Cloud Platform79,90 €
- Sebastian Freilinger-HuberABAP-Entwicklung für SAP S/4HANA79,90 €
- Lutz BaumbuschABAP RESTful Application Programming Model67,99 €
- Felix RothABAP - Das umfassende Handbuch89,90 €
- Thomas SchneiderErweiterungen für SAP S/4HANA79,90 €
- Rene GlavanovitsFullstack-Entwicklung mit SAP89,90 €
- Thorsten FranzEinstieg in ABAP39,90 €
-
-
-
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-ArchitekturCore Data Services (CDS)Verhaltensdefinition und -implementierungDefinition und Binding von Business ServicesFelddefinitionen, Assoziationen und AktionenEntity Manipulation Language (EML)SAP Fiori ElementsEclipse, Visual Studio Code und SAP Business Application StudioImplementierungstypen Managed und Unmanaged Business-Objekt-InterfacesErweiterbarkeit von ABAP-AnwendungenABAP-Cloud-Programmiermodell
Aus dem Inhalt:
REST-ArchitekturCore Data Services (CDS)Verhaltensdefinition und -implementierungDefinition und Binding von Business ServicesFelddefinitionen, Assoziationen und AktionenEntity Manipulation Language (EML)SAP Fiori ElementsEclipse, Visual Studio Code und SAP Business Application StudioImplementierungstypen Managed und Unmanaged Business-Objekt-InterfacesErweiterbarkeit von ABAP-AnwendungenABAP-Cloud-Programmiermodell
Produktdetails
- Produktdetails
- SAP PRESS
- Verlag: Rheinwerk Verlag / SAP PRESS
- Artikelnr. des Verlages: 459/10078
- 2., erw. Aufl.
- Seitenzahl: 667
- Erscheinungstermin: 3. September 2024
- Deutsch
- Abmessung: 246mm x 180mm x 41mm
- Gewicht: 1362g
- ISBN-13: 9783367100781
- ISBN-10: 3367100781
- Artikelnr.: 70697771
- Herstellerkennzeichnung
- Rheinwerk Publishing Inc.
- 2 Heritage Drive
- 11201 Quincy, MA, US
- Info@rheinwerk-verlag.de
- www.rheinwerk-verlag.de
- SAP PRESS
- Verlag: Rheinwerk Verlag / SAP PRESS
- Artikelnr. des Verlages: 459/10078
- 2., erw. Aufl.
- Seitenzahl: 667
- Erscheinungstermin: 3. September 2024
- Deutsch
- Abmessung: 246mm x 180mm x 41mm
- Gewicht: 1362g
- ISBN-13: 9783367100781
- ISBN-10: 3367100781
- Artikelnr.: 70697771
- Herstellerkennzeichnung
- Rheinwerk Publishing Inc.
- 2 Heritage Drive
- 11201 Quincy, MA, US
- Info@rheinwerk-verlag.de
- www.rheinwerk-verlag.de
Lutz Baumbusch ist seit dem Jahr 2000 als SAP-Entwickler und Softwarearchitekt tätig und betreut internationale SAP-Projekte in unterschiedlichen Rollen und Aufgabengebieten. Bei der All for One Group SE bereitet er in einem Team für ABAP Cloud Development aktuelle Entwicklerthemen für interne und externe Schulungen auf. Studiert hat er am Karlsruher Institut für Technologie (KIT).
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 ... Berechtigungsprüfungen realisieren ... 575
11.8 ... SAP-Fiori-Elements-Oberfläche erstellen ... 581
12. Unmanaged Scenario: Vorhandenen Quellcode wiederverwenden ... 587
12.1 ... Beschreibung des Anwendungsfalls ... 588
12.2 ... Beschreibung der bestehenden Anwendung ... 589
12.3 ... Datenmodell erweitern ... 596
12.4 ... Verhaltensdefinition erstellen ... 603
12.5 ... Verhaltensimplementierung erstellen ... 607
12.6 ... Business-Service definieren ... 622
13. Besonderheiten in der Cloud-Umgebung ... 627
13.1 ... Technische Grundlagen ... 628
13.2 ... Identity and Access Management ... 636
13.3 ... SAP-Fiori-Apps bereitstellen und Berechtigungen vergeben ... 639
13.4 ... Business-Services konsumieren ... 648
Anhang ... 653
A ... Literaturverzeichnis ... 653
Das Autorenteam ... 655
Index ... 657
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 ... Berechtigungsprüfungen realisieren ... 575
11.8 ... SAP-Fiori-Elements-Oberfläche erstellen ... 581
12. Unmanaged Scenario: Vorhandenen Quellcode wiederverwenden ... 587
12.1 ... Beschreibung des Anwendungsfalls ... 588
12.2 ... Beschreibung der bestehenden Anwendung ... 589
12.3 ... Datenmodell erweitern ... 596
12.4 ... Verhaltensdefinition erstellen ... 603
12.5 ... Verhaltensimplementierung erstellen ... 607
12.6 ... Business-Service definieren ... 622
13. Besonderheiten in der Cloud-Umgebung ... 627
13.1 ... Technische Grundlagen ... 628
13.2 ... Identity and Access Management ... 636
13.3 ... SAP-Fiori-Apps bereitstellen und Berechtigungen vergeben ... 639
13.4 ... Business-Services konsumieren ... 648
Anhang ... 653
A ... Literaturverzeichnis ... 653
Das Autorenteam ... 655
Index ... 657
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 ... Berechtigungsprüfungen realisieren ... 575
11.8 ... SAP-Fiori-Elements-Oberfläche erstellen ... 581
12. Unmanaged Scenario: Vorhandenen Quellcode wiederverwenden ... 587
12.1 ... Beschreibung des Anwendungsfalls ... 588
12.2 ... Beschreibung der bestehenden Anwendung ... 589
12.3 ... Datenmodell erweitern ... 596
12.4 ... Verhaltensdefinition erstellen ... 603
12.5 ... Verhaltensimplementierung erstellen ... 607
12.6 ... Business-Service definieren ... 622
13. Besonderheiten in der Cloud-Umgebung ... 627
13.1 ... Technische Grundlagen ... 628
13.2 ... Identity and Access Management ... 636
13.3 ... SAP-Fiori-Apps bereitstellen und Berechtigungen vergeben ... 639
13.4 ... Business-Services konsumieren ... 648
Anhang ... 653
A ... Literaturverzeichnis ... 653
Das Autorenteam ... 655
Index ... 657
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 ... Berechtigungsprüfungen realisieren ... 575
11.8 ... SAP-Fiori-Elements-Oberfläche erstellen ... 581
12. Unmanaged Scenario: Vorhandenen Quellcode wiederverwenden ... 587
12.1 ... Beschreibung des Anwendungsfalls ... 588
12.2 ... Beschreibung der bestehenden Anwendung ... 589
12.3 ... Datenmodell erweitern ... 596
12.4 ... Verhaltensdefinition erstellen ... 603
12.5 ... Verhaltensimplementierung erstellen ... 607
12.6 ... Business-Service definieren ... 622
13. Besonderheiten in der Cloud-Umgebung ... 627
13.1 ... Technische Grundlagen ... 628
13.2 ... Identity and Access Management ... 636
13.3 ... SAP-Fiori-Apps bereitstellen und Berechtigungen vergeben ... 639
13.4 ... Business-Services konsumieren ... 648
Anhang ... 653
A ... Literaturverzeichnis ... 653
Das Autorenteam ... 655
Index ... 657