Renzo Colle, Ralf Dentzer, Jan Hrastnik
Core Data Services für ABAP
CDS-Views und Datenmodelle für SAP S/4HANA - aktuell für Release 2023
Renzo Colle, Ralf Dentzer, Jan Hrastnik
Core Data Services für ABAP
CDS-Views und Datenmodelle für SAP S/4HANA - aktuell für Release 2023
- Gebundenes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
Welche Rolle spielt das virtuelle Datenmodell von SAP S/4HANA für Sie in der Entwicklung? In diesem Buch erfahren Sie, wie Sie CDS-Views anlegen und in analytischen oder transaktionalen ABAP-Anwendungen verwenden. Von der Syntax über Annotationen bis hin zu Zugriffskontrollen lernen Sie alles, was Sie für die Datenmodellierung mit Core Data Services wissen müssen. Die 3. Auflage dieses Bestsellers wurde vollständig aktualisiert und an die Neuerungen des Release 2023 angepasst.
Aus dem Inhalt:
CDS und SAP HANACDS-Syntax und -SprachelementeABAP Editor in…mehr
Andere Kunden interessierten sich auch für
- Felix RothABAP - Das umfassende Handbuch89,90 €
- Thorsten FranzEinstieg in ABAP39,90 €
- Lutz BaumbuschABAP RESTful Application Programming Model89,90 €
- Roland SchwaigerSchrödinger programmiert ABAP49,90 €
- Sabine MaiselIDoc-Entwicklung für SAP89,90 €
- Renzo ColleCore Data Services for ABAP67,99 €
- Felix RothKundeneigene Erweiterungen mit ABAP79,90 €
-
-
-
Welche Rolle spielt das virtuelle Datenmodell von SAP S/4HANA für Sie in der Entwicklung? In diesem Buch erfahren Sie, wie Sie CDS-Views anlegen und in analytischen oder transaktionalen ABAP-Anwendungen verwenden. Von der Syntax über Annotationen bis hin zu Zugriffskontrollen lernen Sie alles, was Sie für die Datenmodellierung mit Core Data Services wissen müssen. Die 3. Auflage dieses Bestsellers wurde vollständig aktualisiert und an die Neuerungen des Release 2023 angepasst.
Aus dem Inhalt:
CDS und SAP HANACDS-Syntax und -SprachelementeABAP Editor in EclipseHierarchienAnnotationenAssoziationenSuchfunktionenABAP-Managed Database ProceduresAnalytische QueriesZugriffskontrollenTestautomatisierung für CDS-ViewsProblembehandlungen
Aus dem Inhalt:
CDS und SAP HANACDS-Syntax und -SprachelementeABAP Editor in EclipseHierarchienAnnotationenAssoziationenSuchfunktionenABAP-Managed Database ProceduresAnalytische QueriesZugriffskontrollenTestautomatisierung für CDS-ViewsProblembehandlungen
Produktdetails
- Produktdetails
- SAP PRESS
- Verlag: Rheinwerk Verlag / SAP PRESS
- Artikelnr. des Verlages: 459/09214
- 3., erw. Aufl.
- Seitenzahl: 824
- Erscheinungstermin: 9. Oktober 2023
- Deutsch
- Abmessung: 246mm x 180mm x 51mm
- Gewicht: 1631g
- ISBN-13: 9783836292146
- ISBN-10: 3836292149
- Artikelnr.: 67566589
- 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/09214
- 3., erw. Aufl.
- Seitenzahl: 824
- Erscheinungstermin: 9. Oktober 2023
- Deutsch
- Abmessung: 246mm x 180mm x 51mm
- Gewicht: 1631g
- ISBN-13: 9783836292146
- ISBN-10: 3836292149
- Artikelnr.: 67566589
- Herstellerkennzeichnung
- Rheinwerk Publishing Inc.
- 2 Heritage Drive
- 11201 Quincy, MA, US
- Info@rheinwerk-verlag.de
- www.rheinwerk-verlag.de
Renzo Colle verantwortet aktuell in der zentralen Architekturgruppe das Programmiermodell für SAP S/4HANA. Er hat Wirtschaftsmathematik an der Universität Karlsruhe studiert und ist seit 20 Jahren ist bei SAP SE in unterschiedlichsten Bereichen und Rollen tätig. Seine Laufbahn bei SAP startete er als Entwickler in der strategischen Kundenentwicklung. Danach war er unter anderem im SAP Extended Warehouse Management tätig. In SAP Business ByDesign verantwortete er den Logistikbereich und war leitender Architekt der ByDesign Plattform für Cloud-Anwendungen. Als Erfinder des Business Object Processing Frameworks beschäftigt er sich seit über 15 Jahren mit modellgetriebener Softwareentwicklung und transaktionalen Anwendungen.
Einleitung ... 17
1. Schritt für Schritt zu Ihren ersten CDS-Views ... 23
1.1 ... Datenmodell der Anwendung definieren ... 24
1.2 ... Datenmodell der Anwendung implementieren ... 27
2. Grundlagen der CDS-Datenmodellierung ... 59
2.1 ... Überblick über die CDS-Modelle ... 60
2.2 ... Überblick über die CDS-View-Syntax ... 65
2.3 ... Schlüsselfelder ... 68
2.4 ... Cast-Anweisungen ... 70
2.5 ... Typisierte Literale ... 72
2.6 ... CDS-Simple-Types ... 74
2.7 ... Case-Anweisungen ... 76
2.8 ... CDS-Sitzungsvariablen ... 78
2.9 ... Mandantenbehandlung ... 79
2.10 ... Select-Distinct-Anweisungen ... 81
2.11 ... Union-Views ... 82
2.12 ... Intersect- und Except-Anweisungen ... 89
2.13 ... Join-Verknüpfungen ... 91
2.14 ... SQL-Aggregationsfunktionen ... 97
2.15 ... Projektionsfelder ... 100
2.16 ... Parameter ... 102
2.17 ... Referenzfelder ... 108
2.18 ... Konvertierungsfunktionen für Währungen und Mengeneinheiten ... 110
2.19 ... CDS-Provider-Kontrakte ... 114
2.20 ... Entitätspufferdefinitionen ... 116
3. CDS-Assoziationen ... 119
3.1 ... Assoziationsdefinitionen ... 120
3.2 ... Exponierung von Assoziationen ... 123
3.3 ... Modellierung von Kompositionsbeziehungen ... 124
3.4 ... Modellierung von m:n-Beziehungen ... 127
3.5 ... Projizierte Assoziationen ... 130
3.6 ... Verwendung von Assoziationen in CDS-Views ... 131
3.7 ... Verwendung von Assoziationen in ABAPImplementierungen ... 143
4. CDS-Annotationen ... 145
4.1 ... Annotationsdefinitionen ... 146
4.2 ... Auswirkungen der Annotationen ... 159
4.3 ... Propagationslogik für Annotationen ... 161
4.4 ... CDS-Metadatenerweiterungen ... 172
4.5 ... Aktive Annotationen ... 176
5. CDS-Zugriffskontrollen ... 179
5.1 ... Grundlagen der CDS-Zugriffskontrollen ... 180
5.2 ... Wirkungsweise der CDS-Zugriffskontrollen ... 185
5.3 ... Implementierungsmuster für CDS-Zugriffskontrollen ... 190
5.4 ... CDS-Zugriffskontrollen testen ... 230
6. Business-Services ... 235
6.1 ... Projektions-Views definieren ... 236
6.2 ... Servicedefinitionen erstellen ... 241
6.3 ... Service-Bindings festlegen ... 247
6.4 ... Business-Services testen ... 257
7. Native SAP-HANA-Funktionen in CDS ... 261
7.1 ... Implementierung einer CDS-Tabellenfunktion ... 262
7.2 ... Anwendungsszenarien ... 271
7.3 ... Performance verbessern und Fehler vermeiden ... 272
8. CDS-Modelle für Anwendungsdaten ... 275
8.1 ... Anwendungsarchitektur in SAP S/4HANA ... 276
8.2 ... Feldbezeichner ... 280
8.3 ... Semantik von Feldern ... 284
8.4 ... Fremdschlüsselbeziehungen ... 291
8.5 ... Textbeziehungen ... 297
8.6 ... Kompositionsbeziehungen ... 299
8.7 ... Zeitabhängige Daten ... 302
9. Das virtuelle Datenmodell von SAP S/4HANA ... 305
9.1 ... Warum ein virtuelles Datenmodell? ... 307
9.2 ... SAP-Objekttypen und SAP-Objektknotentypen ... 308
9.3 ... Kategorien von CDS-Entitäten im VDM ... 311
9.4 ... Namensgebung im virtuellen Datenmodell ... 318
9.5 ... Der Basic-Interface-View für den Kundenauftrag ... 321
9.6 ... Tipps zum Finden von VDM-Views ... 329
10. Modellierung analytischer Anwendungen ... 337
10.1 ... Analysen in SAP S/4HANA ... 338
10.2 ... Analytische Views ... 339
10.3 ... Analytische Queries ... 361
10.4 ... Analytische Infrastruktur ... 395
11. Modellierung transaktionaler Anwendungen ... 399
11.1 ... Transaktionale Anwendungen ... 400
11.2 ... Transaktionale Infrastruktur in SAP S/4HANA ... 402
11.3 ... Transaktionale Objektmodelle ... 405
11.4 ... Verhaltensdefinitionen ... 411
11.5 ... Transaktionale Projektionsobjektmodelle ... 517
11.6 ... Interface-Verhaltensdefinitionen ... 528
11.7 ... Projektionsverhaltensdefinitionen ... 536
11.8 ... Laufzeitorchestrierung ... 545
11.9 ... SAP Fiori und Verwendung über OData ... 551
11.10 ... SAP Event Mesh und lokale Event-Handler ... 564
12. Hierarchien in CDS ... 569
12.1 ... Grundbegriffe und Typen von Hierarchien ... 570
12.2 ... Annotationsbasierte Vater-Kind-Hierarchien ... 572
12.3 ... CDS-Hierarchien ... 581
13. CDS-basierte Suchfunktionen ... 605
13.1 ... Wertehilfen ... 606
13.2 ... Freitext-Suchfunktionen in OData-Services ... 629
13.3 ... Enterprise-Search-Funktion ... 637
14. Lebenszyklus und Stabilität von Core Data Services ... 643
14.1 ... Stabilitätskontrakte ... 644
14.2 ... Lebenszyklus von Entwicklungsobjekten ... 649
14.3 ... Abkündigung von Entwicklungsobjekten ... 651
14.4 ... Verwendung von CDS-Modellen und unterstützte Funktionen ... 654
15. Erweiterungen von CDS-Views und weiteren Entitäten ... 659
15.1 ... Produkte und Sprachversionen ... 660
15.2 ... Stabile CDS-Erweiterungen ... 662
15.3 ... Erweiterungen von transaktionalen Modellen ... 677
16. Testautomatisierung ... 693
16.1 ... Selektionslogik der Anwendungen testen ... 694
16.2 ... Transaktionale Applikationslogik testen ... 721
17. Problembehandlung ... 735
17.1 ... Performance-Aspekte ... 736
17.2 ... Mögliche Fallstricke ... 753
17.3 ... CDS-Implementierungsprobleme behandeln ... 765
17.4 ... CDS-Aktivierungsprobleme behandeln ... 774
17.5 ... Anwendungen des ABAP RESTful Application Programming Model analysieren ... 779
Anhang ... 783
A ... CDS-Annotationsreferenz ... 783
B ... Migration vom ABAP Programming Model for SAP Fiori zum ABAP RESTful Application Programming Model ... 797
Die Autoren ... 805
Index ... 807
1. Schritt für Schritt zu Ihren ersten CDS-Views ... 23
1.1 ... Datenmodell der Anwendung definieren ... 24
1.2 ... Datenmodell der Anwendung implementieren ... 27
2. Grundlagen der CDS-Datenmodellierung ... 59
2.1 ... Überblick über die CDS-Modelle ... 60
2.2 ... Überblick über die CDS-View-Syntax ... 65
2.3 ... Schlüsselfelder ... 68
2.4 ... Cast-Anweisungen ... 70
2.5 ... Typisierte Literale ... 72
2.6 ... CDS-Simple-Types ... 74
2.7 ... Case-Anweisungen ... 76
2.8 ... CDS-Sitzungsvariablen ... 78
2.9 ... Mandantenbehandlung ... 79
2.10 ... Select-Distinct-Anweisungen ... 81
2.11 ... Union-Views ... 82
2.12 ... Intersect- und Except-Anweisungen ... 89
2.13 ... Join-Verknüpfungen ... 91
2.14 ... SQL-Aggregationsfunktionen ... 97
2.15 ... Projektionsfelder ... 100
2.16 ... Parameter ... 102
2.17 ... Referenzfelder ... 108
2.18 ... Konvertierungsfunktionen für Währungen und Mengeneinheiten ... 110
2.19 ... CDS-Provider-Kontrakte ... 114
2.20 ... Entitätspufferdefinitionen ... 116
3. CDS-Assoziationen ... 119
3.1 ... Assoziationsdefinitionen ... 120
3.2 ... Exponierung von Assoziationen ... 123
3.3 ... Modellierung von Kompositionsbeziehungen ... 124
3.4 ... Modellierung von m:n-Beziehungen ... 127
3.5 ... Projizierte Assoziationen ... 130
3.6 ... Verwendung von Assoziationen in CDS-Views ... 131
3.7 ... Verwendung von Assoziationen in ABAPImplementierungen ... 143
4. CDS-Annotationen ... 145
4.1 ... Annotationsdefinitionen ... 146
4.2 ... Auswirkungen der Annotationen ... 159
4.3 ... Propagationslogik für Annotationen ... 161
4.4 ... CDS-Metadatenerweiterungen ... 172
4.5 ... Aktive Annotationen ... 176
5. CDS-Zugriffskontrollen ... 179
5.1 ... Grundlagen der CDS-Zugriffskontrollen ... 180
5.2 ... Wirkungsweise der CDS-Zugriffskontrollen ... 185
5.3 ... Implementierungsmuster für CDS-Zugriffskontrollen ... 190
5.4 ... CDS-Zugriffskontrollen testen ... 230
6. Business-Services ... 235
6.1 ... Projektions-Views definieren ... 236
6.2 ... Servicedefinitionen erstellen ... 241
6.3 ... Service-Bindings festlegen ... 247
6.4 ... Business-Services testen ... 257
7. Native SAP-HANA-Funktionen in CDS ... 261
7.1 ... Implementierung einer CDS-Tabellenfunktion ... 262
7.2 ... Anwendungsszenarien ... 271
7.3 ... Performance verbessern und Fehler vermeiden ... 272
8. CDS-Modelle für Anwendungsdaten ... 275
8.1 ... Anwendungsarchitektur in SAP S/4HANA ... 276
8.2 ... Feldbezeichner ... 280
8.3 ... Semantik von Feldern ... 284
8.4 ... Fremdschlüsselbeziehungen ... 291
8.5 ... Textbeziehungen ... 297
8.6 ... Kompositionsbeziehungen ... 299
8.7 ... Zeitabhängige Daten ... 302
9. Das virtuelle Datenmodell von SAP S/4HANA ... 305
9.1 ... Warum ein virtuelles Datenmodell? ... 307
9.2 ... SAP-Objekttypen und SAP-Objektknotentypen ... 308
9.3 ... Kategorien von CDS-Entitäten im VDM ... 311
9.4 ... Namensgebung im virtuellen Datenmodell ... 318
9.5 ... Der Basic-Interface-View für den Kundenauftrag ... 321
9.6 ... Tipps zum Finden von VDM-Views ... 329
10. Modellierung analytischer Anwendungen ... 337
10.1 ... Analysen in SAP S/4HANA ... 338
10.2 ... Analytische Views ... 339
10.3 ... Analytische Queries ... 361
10.4 ... Analytische Infrastruktur ... 395
11. Modellierung transaktionaler Anwendungen ... 399
11.1 ... Transaktionale Anwendungen ... 400
11.2 ... Transaktionale Infrastruktur in SAP S/4HANA ... 402
11.3 ... Transaktionale Objektmodelle ... 405
11.4 ... Verhaltensdefinitionen ... 411
11.5 ... Transaktionale Projektionsobjektmodelle ... 517
11.6 ... Interface-Verhaltensdefinitionen ... 528
11.7 ... Projektionsverhaltensdefinitionen ... 536
11.8 ... Laufzeitorchestrierung ... 545
11.9 ... SAP Fiori und Verwendung über OData ... 551
11.10 ... SAP Event Mesh und lokale Event-Handler ... 564
12. Hierarchien in CDS ... 569
12.1 ... Grundbegriffe und Typen von Hierarchien ... 570
12.2 ... Annotationsbasierte Vater-Kind-Hierarchien ... 572
12.3 ... CDS-Hierarchien ... 581
13. CDS-basierte Suchfunktionen ... 605
13.1 ... Wertehilfen ... 606
13.2 ... Freitext-Suchfunktionen in OData-Services ... 629
13.3 ... Enterprise-Search-Funktion ... 637
14. Lebenszyklus und Stabilität von Core Data Services ... 643
14.1 ... Stabilitätskontrakte ... 644
14.2 ... Lebenszyklus von Entwicklungsobjekten ... 649
14.3 ... Abkündigung von Entwicklungsobjekten ... 651
14.4 ... Verwendung von CDS-Modellen und unterstützte Funktionen ... 654
15. Erweiterungen von CDS-Views und weiteren Entitäten ... 659
15.1 ... Produkte und Sprachversionen ... 660
15.2 ... Stabile CDS-Erweiterungen ... 662
15.3 ... Erweiterungen von transaktionalen Modellen ... 677
16. Testautomatisierung ... 693
16.1 ... Selektionslogik der Anwendungen testen ... 694
16.2 ... Transaktionale Applikationslogik testen ... 721
17. Problembehandlung ... 735
17.1 ... Performance-Aspekte ... 736
17.2 ... Mögliche Fallstricke ... 753
17.3 ... CDS-Implementierungsprobleme behandeln ... 765
17.4 ... CDS-Aktivierungsprobleme behandeln ... 774
17.5 ... Anwendungen des ABAP RESTful Application Programming Model analysieren ... 779
Anhang ... 783
A ... CDS-Annotationsreferenz ... 783
B ... Migration vom ABAP Programming Model for SAP Fiori zum ABAP RESTful Application Programming Model ... 797
Die Autoren ... 805
Index ... 807
Einleitung ... 17
1. Schritt für Schritt zu Ihren ersten CDS-Views ... 23
1.1 ... Datenmodell der Anwendung definieren ... 24
1.2 ... Datenmodell der Anwendung implementieren ... 27
2. Grundlagen der CDS-Datenmodellierung ... 59
2.1 ... Überblick über die CDS-Modelle ... 60
2.2 ... Überblick über die CDS-View-Syntax ... 65
2.3 ... Schlüsselfelder ... 68
2.4 ... Cast-Anweisungen ... 70
2.5 ... Typisierte Literale ... 72
2.6 ... CDS-Simple-Types ... 74
2.7 ... Case-Anweisungen ... 76
2.8 ... CDS-Sitzungsvariablen ... 78
2.9 ... Mandantenbehandlung ... 79
2.10 ... Select-Distinct-Anweisungen ... 81
2.11 ... Union-Views ... 82
2.12 ... Intersect- und Except-Anweisungen ... 89
2.13 ... Join-Verknüpfungen ... 91
2.14 ... SQL-Aggregationsfunktionen ... 97
2.15 ... Projektionsfelder ... 100
2.16 ... Parameter ... 102
2.17 ... Referenzfelder ... 108
2.18 ... Konvertierungsfunktionen für Währungen und Mengeneinheiten ... 110
2.19 ... CDS-Provider-Kontrakte ... 114
2.20 ... Entitätspufferdefinitionen ... 116
3. CDS-Assoziationen ... 119
3.1 ... Assoziationsdefinitionen ... 120
3.2 ... Exponierung von Assoziationen ... 123
3.3 ... Modellierung von Kompositionsbeziehungen ... 124
3.4 ... Modellierung von m:n-Beziehungen ... 127
3.5 ... Projizierte Assoziationen ... 130
3.6 ... Verwendung von Assoziationen in CDS-Views ... 131
3.7 ... Verwendung von Assoziationen in ABAPImplementierungen ... 143
4. CDS-Annotationen ... 145
4.1 ... Annotationsdefinitionen ... 146
4.2 ... Auswirkungen der Annotationen ... 159
4.3 ... Propagationslogik für Annotationen ... 161
4.4 ... CDS-Metadatenerweiterungen ... 172
4.5 ... Aktive Annotationen ... 176
5. CDS-Zugriffskontrollen ... 179
5.1 ... Grundlagen der CDS-Zugriffskontrollen ... 180
5.2 ... Wirkungsweise der CDS-Zugriffskontrollen ... 185
5.3 ... Implementierungsmuster für CDS-Zugriffskontrollen ... 190
5.4 ... CDS-Zugriffskontrollen testen ... 230
6. Business-Services ... 235
6.1 ... Projektions-Views definieren ... 236
6.2 ... Servicedefinitionen erstellen ... 241
6.3 ... Service-Bindings festlegen ... 247
6.4 ... Business-Services testen ... 257
7. Native SAP-HANA-Funktionen in CDS ... 261
7.1 ... Implementierung einer CDS-Tabellenfunktion ... 262
7.2 ... Anwendungsszenarien ... 271
7.3 ... Performance verbessern und Fehler vermeiden ... 272
8. CDS-Modelle für Anwendungsdaten ... 275
8.1 ... Anwendungsarchitektur in SAP S/4HANA ... 276
8.2 ... Feldbezeichner ... 280
8.3 ... Semantik von Feldern ... 284
8.4 ... Fremdschlüsselbeziehungen ... 291
8.5 ... Textbeziehungen ... 297
8.6 ... Kompositionsbeziehungen ... 299
8.7 ... Zeitabhängige Daten ... 302
9. Das virtuelle Datenmodell von SAP S/4HANA ... 305
9.1 ... Warum ein virtuelles Datenmodell? ... 307
9.2 ... SAP-Objekttypen und SAP-Objektknotentypen ... 308
9.3 ... Kategorien von CDS-Entitäten im VDM ... 311
9.4 ... Namensgebung im virtuellen Datenmodell ... 318
9.5 ... Der Basic-Interface-View für den Kundenauftrag ... 321
9.6 ... Tipps zum Finden von VDM-Views ... 329
10. Modellierung analytischer Anwendungen ... 337
10.1 ... Analysen in SAP S/4HANA ... 338
10.2 ... Analytische Views ... 339
10.3 ... Analytische Queries ... 361
10.4 ... Analytische Infrastruktur ... 395
11. Modellierung transaktionaler Anwendungen ... 399
11.1 ... Transaktionale Anwendungen ... 400
11.2 ... Transaktionale Infrastruktur in SAP S/4HANA ... 402
11.3 ... Transaktionale Objektmodelle ... 405
11.4 ... Verhaltensdefinitionen ... 411
11.5 ... Transaktionale Projektionsobjektmodelle ... 517
11.6 ... Interface-Verhaltensdefinitionen ... 528
11.7 ... Projektionsverhaltensdefinitionen ... 536
11.8 ... Laufzeitorchestrierung ... 545
11.9 ... SAP Fiori und Verwendung über OData ... 551
11.10 ... SAP Event Mesh und lokale Event-Handler ... 564
12. Hierarchien in CDS ... 569
12.1 ... Grundbegriffe und Typen von Hierarchien ... 570
12.2 ... Annotationsbasierte Vater-Kind-Hierarchien ... 572
12.3 ... CDS-Hierarchien ... 581
13. CDS-basierte Suchfunktionen ... 605
13.1 ... Wertehilfen ... 606
13.2 ... Freitext-Suchfunktionen in OData-Services ... 629
13.3 ... Enterprise-Search-Funktion ... 637
14. Lebenszyklus und Stabilität von Core Data Services ... 643
14.1 ... Stabilitätskontrakte ... 644
14.2 ... Lebenszyklus von Entwicklungsobjekten ... 649
14.3 ... Abkündigung von Entwicklungsobjekten ... 651
14.4 ... Verwendung von CDS-Modellen und unterstützte Funktionen ... 654
15. Erweiterungen von CDS-Views und weiteren Entitäten ... 659
15.1 ... Produkte und Sprachversionen ... 660
15.2 ... Stabile CDS-Erweiterungen ... 662
15.3 ... Erweiterungen von transaktionalen Modellen ... 677
16. Testautomatisierung ... 693
16.1 ... Selektionslogik der Anwendungen testen ... 694
16.2 ... Transaktionale Applikationslogik testen ... 721
17. Problembehandlung ... 735
17.1 ... Performance-Aspekte ... 736
17.2 ... Mögliche Fallstricke ... 753
17.3 ... CDS-Implementierungsprobleme behandeln ... 765
17.4 ... CDS-Aktivierungsprobleme behandeln ... 774
17.5 ... Anwendungen des ABAP RESTful Application Programming Model analysieren ... 779
Anhang ... 783
A ... CDS-Annotationsreferenz ... 783
B ... Migration vom ABAP Programming Model for SAP Fiori zum ABAP RESTful Application Programming Model ... 797
Die Autoren ... 805
Index ... 807
1. Schritt für Schritt zu Ihren ersten CDS-Views ... 23
1.1 ... Datenmodell der Anwendung definieren ... 24
1.2 ... Datenmodell der Anwendung implementieren ... 27
2. Grundlagen der CDS-Datenmodellierung ... 59
2.1 ... Überblick über die CDS-Modelle ... 60
2.2 ... Überblick über die CDS-View-Syntax ... 65
2.3 ... Schlüsselfelder ... 68
2.4 ... Cast-Anweisungen ... 70
2.5 ... Typisierte Literale ... 72
2.6 ... CDS-Simple-Types ... 74
2.7 ... Case-Anweisungen ... 76
2.8 ... CDS-Sitzungsvariablen ... 78
2.9 ... Mandantenbehandlung ... 79
2.10 ... Select-Distinct-Anweisungen ... 81
2.11 ... Union-Views ... 82
2.12 ... Intersect- und Except-Anweisungen ... 89
2.13 ... Join-Verknüpfungen ... 91
2.14 ... SQL-Aggregationsfunktionen ... 97
2.15 ... Projektionsfelder ... 100
2.16 ... Parameter ... 102
2.17 ... Referenzfelder ... 108
2.18 ... Konvertierungsfunktionen für Währungen und Mengeneinheiten ... 110
2.19 ... CDS-Provider-Kontrakte ... 114
2.20 ... Entitätspufferdefinitionen ... 116
3. CDS-Assoziationen ... 119
3.1 ... Assoziationsdefinitionen ... 120
3.2 ... Exponierung von Assoziationen ... 123
3.3 ... Modellierung von Kompositionsbeziehungen ... 124
3.4 ... Modellierung von m:n-Beziehungen ... 127
3.5 ... Projizierte Assoziationen ... 130
3.6 ... Verwendung von Assoziationen in CDS-Views ... 131
3.7 ... Verwendung von Assoziationen in ABAPImplementierungen ... 143
4. CDS-Annotationen ... 145
4.1 ... Annotationsdefinitionen ... 146
4.2 ... Auswirkungen der Annotationen ... 159
4.3 ... Propagationslogik für Annotationen ... 161
4.4 ... CDS-Metadatenerweiterungen ... 172
4.5 ... Aktive Annotationen ... 176
5. CDS-Zugriffskontrollen ... 179
5.1 ... Grundlagen der CDS-Zugriffskontrollen ... 180
5.2 ... Wirkungsweise der CDS-Zugriffskontrollen ... 185
5.3 ... Implementierungsmuster für CDS-Zugriffskontrollen ... 190
5.4 ... CDS-Zugriffskontrollen testen ... 230
6. Business-Services ... 235
6.1 ... Projektions-Views definieren ... 236
6.2 ... Servicedefinitionen erstellen ... 241
6.3 ... Service-Bindings festlegen ... 247
6.4 ... Business-Services testen ... 257
7. Native SAP-HANA-Funktionen in CDS ... 261
7.1 ... Implementierung einer CDS-Tabellenfunktion ... 262
7.2 ... Anwendungsszenarien ... 271
7.3 ... Performance verbessern und Fehler vermeiden ... 272
8. CDS-Modelle für Anwendungsdaten ... 275
8.1 ... Anwendungsarchitektur in SAP S/4HANA ... 276
8.2 ... Feldbezeichner ... 280
8.3 ... Semantik von Feldern ... 284
8.4 ... Fremdschlüsselbeziehungen ... 291
8.5 ... Textbeziehungen ... 297
8.6 ... Kompositionsbeziehungen ... 299
8.7 ... Zeitabhängige Daten ... 302
9. Das virtuelle Datenmodell von SAP S/4HANA ... 305
9.1 ... Warum ein virtuelles Datenmodell? ... 307
9.2 ... SAP-Objekttypen und SAP-Objektknotentypen ... 308
9.3 ... Kategorien von CDS-Entitäten im VDM ... 311
9.4 ... Namensgebung im virtuellen Datenmodell ... 318
9.5 ... Der Basic-Interface-View für den Kundenauftrag ... 321
9.6 ... Tipps zum Finden von VDM-Views ... 329
10. Modellierung analytischer Anwendungen ... 337
10.1 ... Analysen in SAP S/4HANA ... 338
10.2 ... Analytische Views ... 339
10.3 ... Analytische Queries ... 361
10.4 ... Analytische Infrastruktur ... 395
11. Modellierung transaktionaler Anwendungen ... 399
11.1 ... Transaktionale Anwendungen ... 400
11.2 ... Transaktionale Infrastruktur in SAP S/4HANA ... 402
11.3 ... Transaktionale Objektmodelle ... 405
11.4 ... Verhaltensdefinitionen ... 411
11.5 ... Transaktionale Projektionsobjektmodelle ... 517
11.6 ... Interface-Verhaltensdefinitionen ... 528
11.7 ... Projektionsverhaltensdefinitionen ... 536
11.8 ... Laufzeitorchestrierung ... 545
11.9 ... SAP Fiori und Verwendung über OData ... 551
11.10 ... SAP Event Mesh und lokale Event-Handler ... 564
12. Hierarchien in CDS ... 569
12.1 ... Grundbegriffe und Typen von Hierarchien ... 570
12.2 ... Annotationsbasierte Vater-Kind-Hierarchien ... 572
12.3 ... CDS-Hierarchien ... 581
13. CDS-basierte Suchfunktionen ... 605
13.1 ... Wertehilfen ... 606
13.2 ... Freitext-Suchfunktionen in OData-Services ... 629
13.3 ... Enterprise-Search-Funktion ... 637
14. Lebenszyklus und Stabilität von Core Data Services ... 643
14.1 ... Stabilitätskontrakte ... 644
14.2 ... Lebenszyklus von Entwicklungsobjekten ... 649
14.3 ... Abkündigung von Entwicklungsobjekten ... 651
14.4 ... Verwendung von CDS-Modellen und unterstützte Funktionen ... 654
15. Erweiterungen von CDS-Views und weiteren Entitäten ... 659
15.1 ... Produkte und Sprachversionen ... 660
15.2 ... Stabile CDS-Erweiterungen ... 662
15.3 ... Erweiterungen von transaktionalen Modellen ... 677
16. Testautomatisierung ... 693
16.1 ... Selektionslogik der Anwendungen testen ... 694
16.2 ... Transaktionale Applikationslogik testen ... 721
17. Problembehandlung ... 735
17.1 ... Performance-Aspekte ... 736
17.2 ... Mögliche Fallstricke ... 753
17.3 ... CDS-Implementierungsprobleme behandeln ... 765
17.4 ... CDS-Aktivierungsprobleme behandeln ... 774
17.5 ... Anwendungen des ABAP RESTful Application Programming Model analysieren ... 779
Anhang ... 783
A ... CDS-Annotationsreferenz ... 783
B ... Migration vom ABAP Programming Model for SAP Fiori zum ABAP RESTful Application Programming Model ... 797
Die Autoren ... 805
Index ... 807