E-Book, Deutsch, 606 Seiten
Reihe: SAP Press
Tiebing / Kunold / Jungk ABAP Cloud
2. Auflage 2025
ISBN: 978-3-367-10241-9
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
ABAP Environment in SAP BTP und SAP S/4HANA Cloud
E-Book, Deutsch, 606 Seiten
Reihe: SAP Press
ISBN: 978-3-367-10241-9
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
Entdecken Sie die Zukunft der ABAP-Entwicklung – direkt in der Cloud! Programmieren Sie eigenständige ABAP-Anwendungen und Erweiterungen für Ihre SAP-S/4HANA-Lösungen, ohne in den Standard-Code eingreifen zu müssen. Mit diesem praktischen Handbuch lernen Sie die ABAP-Umgebungen der SAP Business Technology Platform und von SAP S/4HANA Cloud kennen und erfahren alles über den verfügbaren Sprachumfang und die Arbeit mit dem ABAP RESTful Application Programming Model.
Aus dem Inhalt:
SAP Business Technology Platform
SAP S/4HANA Cloud
ABAP Development Tools
ABAP RESTful Application Programming Model
SAP Fiori Elements
Core Data Services
Customizing
Software Lifecycle Management
ABAP Cloud für On-Premise-Systeme
Autoren/Hrsg.
Weitere Infos & Material
Einleitung ... 17
TEIL I. Einführung in das neue Entwicklungsmodell für ABAP ... 23
1. Die SAP-Anwendungsentwicklung im Wandel ... 25
1.1 ... Herausforderungen des digitalen Zeitalters ... 26
1.2 ... Cloud-Computing und die SAP Business Technology Platform ... 33
1.3 ... Konzepte der SAP Business Technology Platform ... 36
1.4 ... Cloud Foundry als Basis für das ABAP Environment ... 45
1.5 ... Dienste der SAP Business Technology Platform ... 49
1.6 ... Zusammenfassung ... 52
2. ABAP-Plattform ... 55
2.1 ... SAP S/4HANA Cloud und on premise ... 56
2.2 ... SAP Business Technology Platform, ABAP Environment ... 65
2.3 ... Einordnung in die SAP-Systemlandschaft ... 76
2.4 ... Zusammenfassung ... 77
3. Das ABAP-Cloud-Entwicklungsmodell ... 79
3.1 ... Evolution der ABAP-Programmiermodelle ... 79
3.2 ... Was ist ABAP Cloud? ... 82
3.3 ... Freigegebener Sprachumfang und Objekte ... 85
3.4 ... Zusammenfassung ... 100
4. Die Arbeitsumgebung einrichten ... 101
4.1 ... Das Dashboard als Administrationsoberfläche ... 101
4.2 ... Identitäts- und Zugriffsverwaltung ... 104
4.3 ... ABAP Development Tools als Entwicklungsumgebung einrichten ... 107
4.4 ... Zusammenfassung ... 113
TEIL II. Entwicklung von Geschäftsobjekten und Erweiterung von SAPAnwendungen ... 115
5. Aufbau des Datenmodells der Beispielanwendung ... 117
5.1 ... Einführung in die Beispielanwendung ... 118
5.2 ... Softwarekomponenten ... 120
5.3 ... Datenmodell implementieren ... 131
5.4 ... Eine Konsolenanwendung anlegen ... 143
5.5 ... Virtuelles Datenmodell ... 147
5.6 ... Zusammenfassung ... 155
6. Geschäftsobjekte modellieren ... 157
6.1 ... ABAP RESTful Application Programming Model als Grundlage für die Geschäftsobjektmodellierung ... 157
6.2 ... Aufbau des Geschäftsobjekts ... 160
6.3 ... Geschäftsobjektmodellierung mittels CDS-Views ... 163
6.4 ... Business-Services erstellen ... 167
6.5 ... Zusammenfassung ... 180
7. Geschäftslogik entwickeln ... 181
7.1 ... Implementierungsszenarien ... 181
7.2 ... Transaktionales Verhalten implementieren ... 186
7.3 ... Nummerierung implementieren ... 198
7.4 ... Entity Manipulation Language ... 208
7.5 ... Ermittlungen implementieren ... 214
7.6 ... Validierungen implementieren ... 221
7.7 ... Aktionen implementieren ... 227
7.8 ... Zusätzliche Feldeigenschaften definieren ... 231
7.9 ... Sperrkonzepte ... 238
7.10 ... Zusammenfassung ... 244
8. Erweiterung des Speicherverhaltens ... 247
8.1 ... Erweitertes Speicherverhalten implementieren ... 248
8.2 ... Eigene Speicherroutinen implementieren ... 256
8.3 ... Zusammenfassung ... 262
9. Verwendung von Geschäftsobjekten ... 263
9.1 ... Flexible Konsumierung von Geschäftsobjekten mittels Projektionsschicht ... 264
9.2 ... Projektionsschicht erstellen ... 267
9.3 ... Virtuelle Elemente modellieren ... 278
9.4 ... Geschäftsobjekte freigeben ... 282
9.5 ... Zusammenfassung ... 290
10. Gestalten von Benutzeroberflächen ... 293
10.1 ... Einheitliche Benutzeroberflächen mit SAP Fiori Elements ... 294
10.2 ... UI-Annotationen ... 300
10.3 ... Metadatenerweiterungen ... 325
10.4 ... Aktive Annotationen ... 327
10.5 ... Benutzeroberflächen mit dem SAP Business Application Studio anlegen ... 329
10.6 ... Benutzeroberflächen bereitstellen ... 336
10.7 ... Zusammenfassung ... 337
11. Berechtigungen implementieren ... 339
11.1 ... Berechtigungsobjekte ... 340
11.2 ... Berechtigungsprüfungen für Geschäftsobjekte ... 347
11.3 ... Anwendungsbenutzer*innen Berechtigungen zuweisen ... 357
11.4 ... Technischen Benutzern Berechtigungen zuweisen ... 371
11.5 ... Zugriff auf SAP-Fiori-Anwendungen bereitstellen ... 373
11.6 ... Zusammenfassung ... 379
12. Business Configuration bereitstellen ... 383
12.1 ... Eine Business-Configuration-Anwendung entwickeln ... 384
12.2 ... Customizing Lifecycle Management ... 395
12.3 ... Zusammenfassung ... 403
13. Erweiterung von Geschäftsobjekten ... 405
13.1 ... Erweiterbare Geschäftsobjekte ermitteln ... 406
13.2 ... Geschäftsobjekt erweitern ... 411
13.3 ... Zusammenfassung ... 431
TEIL III. Weiterführende Konzepte ... 433
14. Kommunikation mit externen Systemen ... 435
14.1 ... Kommunikationsmanagement ... 436
14.2 ... Mit APIs arbeiten ... 447
14.3 ... Anbindung an On-Premise-SAP-Systeme ... 458
14.4 ... Mit Events arbeiten ... 473
14.5 ... Zusammenfassung ... 485
15. Kundeneigenen Quellcode migrieren ... 489
15.1 ... Cloud-Readiness-Prüfungen durchführen ... 490
15.2 ... Migration in das ABAP Environment ... 506
15.3 ... Halbautomatische Quellcodeanpassungen ... 522
15.4 ... Zusammenfassung ... 532
16. Software Lifecycle Management ... 535
16.1 ... Git ... 536
16.2 ... Git-fähiges Change and Transport System ... 539
16.3 ... Software Lifecycle Management im SAP BTP, ABAP Environment ... 540
16.4 ... Software Lifecycle Management in SAP S/4HANA ... 552
16.5 ... Zusammenfassung ... 556
17. ABAP Cloud für On-Premise-Systeme anwenden ... 557
17.1 ... Embedded ABAP Environment ... 558
17.2 ... Vorgehen bei der On-Stack-Erweiterung ... 561
17.3 ... Wahl der richtigen Erweiterungsstrategien ... 570
17.4 ... Zusammenfassung ... 575
Anhang ... 577
A ... Eine ABAP-Serviceinstanz anlegen ... 579
B ... Quellen- und Literaturverzeichnis ... 587
Das Autorenteam ... 591
Index ... 593
Einleitung
Seit Ende 2020 die erste Auflage unseres Buches unter dem Titel »ABAP-Entwicklung auf der SAP Cloud Platform« erschien, hat sich im Bereich der cloudfähigen ABAP-Entwicklung viel getan. Während die erste Auflage vor allem das seit September 2018 verfügbare SAP BTP, ABAP Environment (kurz ABAP Environment) behandelte, liegt der Schwerpunkt dieser zweiten Auflage auf der modernen ABAP-Entwicklung mit dem Entwicklungsmodell ABAP Cloud. Durch ABAP Cloud und das mit SAP S/4HANA 2208 eingeführte SAP S/4HANA Cloud, ABAP Environment (kurz Embedded ABAP Environment) haben Sie heute die Möglichkeit, eng gekoppelte, cloudfähige und upgrade-stabile Entwicklungen direkt in Ihrem SAP-S/4HANA-System vorzunehmen. ABAP Cloud steht nicht nur in SAP S/4HANA Cloud Public Edition und SAP S/4HANA Cloud Private Edition zur Verfügung, sondern auch in SAP-S/4HANA-On-Premise-Systemen. Damit ermöglicht ABAP Cloud eine flexible und zukunftssichere ABAP-Programmierung, die den Anforderungen der modernen Geschäftswelt gerecht wird. Die neuesten ABAP-Innovationen stehen weiterhin als Erstes im SAP BTP, ABAP Environment zur Verfügung und werden erst zu einem späteren Zeitpunkt in SAP S/4HANA bereitgestellt. Das ABAP Environment dient somit als Innovationsplattform für die ABAP-Entwicklung. Unterstützt wird dieses Konzept durch einen quartalsweisen Releasezyklus. Im Gegensatz zu SAP S/4HANA, mit unterschiedlichen Releasezyklen abhängig von der Edition, profitieren Sie im ABAP Environment auf der BTP somit von einem schnelleren Innovationszyklus. Dieses Buch richtet sich vor allem an ABAP-Expert*innen, die an den neuesten Technologien im Bereich der ABAP-Entwicklung interessiert sind. Sie sind in ihrem Unternehmen für die technische Umsetzung von betriebswirtschaftlichen Prozessen zuständig. Ihre Kernkompetenz ist die ABAP-Entwicklung, das heißt, sie kennen sich vor allem mit den technischen Gegebenheiten der ABAP-Plattform aus. Unser Ziel ist es, Ihnen mit diesem Buch detaillierte Kenntnisse der ABAP-Entwicklung mit dem ABAP-Cloud-Entwicklungsmodell zu vermitteln. Dazu gehören neben der Fähigkeit, Anwendungen nach dem ABAP RESTful Application Programming Model zu entwickeln, auch Kenntnisse der Architektur von ABAP Environment und Embedded ABAP Environment. Folgende Fragestellungen behandeln wir in diesem Buch: Was ist das ABAP Environment/das Embedded ABAP Environment und wie ordnen sich diese Umgebungen in die SAP-Systemlandschaft ein? Welche Funktionalitäten bietet das ABAP-Cloud-Entwicklungsmodell und wie setzen Sie diese ein? Wie entwickeln Sie mit dem ABAP RESTful Application Programming Model moderne SAP-Fiori-Anwendungen und ABAP-Services auf Basis von ABAP Cloud? Wie können Sie ABAP Cloud in Ihren ABAP-Systemen verwenden und so Ihre Geschäftsprozesse um innovative Services ergänzen? Der Großteil dieses Buches ist auf Basis von Release 2405 des ABAP Environments entstanden, das im Mai 2024 veröffentlicht wurde. Durch den quartalsweisen Releasezyklus werden fortlaufend neue Funktionen und Services bereitgestellt. Zum Zeitpunkt der Veröffentlichung dieses Buches wird daher bereits Release 2411 aktuell sein. Daher empfehlen wir Ihnen, die von SAP bereitgestellte Roadmap stets im Blick zu haben, um über die neuesten Funktionen auf dem Laufenden zu sein. SAP Roadmaps finden Sie auf der Internetseite https://roadmaps.sap.com/. Suchen Sie auf dieser Seite ganz einfach nach dem Stichwort »SAP BTP, ABAP Environment«. Wir verwenden in diesem Buch eine durchgehende Beispielanwendung. Im Zentrum dieser Beispielanwendung steht das Geschäftsobjekt Rabattaktion. Im Verlauf des Buches werden wir diese Anwendung gemeinsam mit Ihnen Schritt für Schritt aufbauen, angefangen beim Datenbankmodell über die Modellierung des Geschäftsobjekts und die Definition einer Benutzeroberfläche bis hin zur finalen Bereitstellung auf der SAP BTP. Sollte Ihnen kein ABAP Environment zur Verfügung stehen, können Sie die Beispielanwendung ab Release 2208 auch auf einem SAP-S/4HANA-System im Embedded ABAP Environment implementieren. Materialien zu der Beispielanwendung finden Sie auf der Webseite zum Buch unter www.sap-press.de/5921 im Bereich Materialien. Das Buch teilt sich in 17 Kapitel auf, die Sie chronologisch durcharbeiten, aber auch zum Nachschlagen einzelner Themen verwenden können. Teil I, »Einführung in das neue Entwicklungsmodell für ABAP«, umfasst die ersten vier Kapitel. In Kapitel 1, »Die SAP-Anwendungsentwicklung im Wandel«, stellen wir Ihnen die Grundlagen des Cloud-Computings und die SAP Business Technology Platform (SAP BTP) vor. Dieses Kapitel richtet sich vor allem an diejenigen, die mit den grundlegenden Prinzipen und Konzepten des Cloud-Computings und speziell der SAP BTP noch nicht vertraut sind. In Kapitel 2, »ABAP-Plattform«, erfahren Sie, auf welchen verschiedenen Plattformen Sie mit ABAP Cloud entwickeln können. Wir vergleichen die verschiedenen SAP-S/4HANA-Editionen miteinander und stellen Ihnen das ABAP Environment und das Embedded ABAP Environment im Detail vor. Kapitel 3, »Das ABAP-Cloud-Entwicklungsmodell«, befasst sich mit der Evolution der ABAP-Programmiermodelle, ausgehend von ABAP/4 bis hin zu ABAP Cloud. Eine zentrale Rolle bei ABAP Cloud spielt der Umfang an freigegebenen ABAP-Sprachelementen und Repository-Objekten. Sie erfahren in diesem Kapitel daher, wie Sie Objekte finden, die für die Verwendung in ABAP Cloud freigegeben sind. In Kapitel 4, »Die Arbeitsumgebung einrichten«, zeigen wir Ihnen Schritt für Schritt, wie Sie über die ABAP Development Tools for Eclipse eine ABAP-Cloud-Systemverbindung herstellen. Des Weiteren stellen wir Ihne die Administrationsoberfläche des ABAP Environments vor. In Teil II, »Entwicklung von Geschäftsobjekten und Erweiterung von SAP-Anwendungen«, beginnen wir mit unserer Bespielanwendung, die Sie während der gesamten Lektüre dieses Buches begleiten wird. Wir starten in Kapitel 5, »Aufbau des Datenmodells der Beispielanwendung«, mit einem Überblick über die Anforderungen. Anschließend werden Sie selbst aktiv und legen die Datenbasis der Anwendung in Form von Datenbanktabellen, einer Konsolenanwendung und Basic Interface Views an. Im Zentrum von Kapitel 6, »Geschäftsobjekte modellieren«, steht die Modellierung des Geschäftsobjekts Rabattaktion. Bei ABAP Cloud kommt dazu das ABAP RESTful Application Programming Model zum Einsatz, das wir Ihnen in diesem Kapitel ausführlich vorstellen. Wie Sie die Geschäftslogik einer Anwendung definieren und implementieren, zeigen wir Ihnen in Kapitel 7, »Geschäftslogik entwickeln«. Dazu gehen wir auf die verschiedenen Implementierungsszenarien des ABAP RESTful Application Programming Models ein und zeigen Ihnen anhand der Beispielanwendung, wie Sie Ermittlungen, Validierungen und Aktionen für Geschäftsobjekte bereitstellen können. Abschließend gehen wir auf die unterstützten Sperrkonzepte ein. In Kapitel 8, »Erweiterung des Speicherverhaltens«, lernen Sie die Möglichkeit kennen, in das Speicherverhalten des ABAP RESTful Application Programming Models einzugreifen. Sie können so Einfluss auf die Persistierung von Geschäftsobjektdaten nehmen und das Speicherverhalten durch eigene Funktionalitäten erweitern bzw. ersetzen. Kontextabhängige Services stellen Sie im ABAP Environment durch Projektionsschichten zur Verfügung. In Kapitel 9, »Verwendung von Geschäftsobjekten«, bringen wir Ihnen daher die Möglichkeit näher, eine Projektionsschicht mithilfe von CDS-Projektions-Views zu erstellen und so nur bestimmte Teile eines Geschäftsobjekts als Service bereitzustellen. Wie Sie mithilfe von SAP Fiori Elements benutzerfreundliche SAP-Fiori-Anwendungen bereitstellen können, ohne tiefgreifende Kenntnisse im Bereich der SAPUI5-Entwicklung zu haben, demonstrieren wir Ihnen in Kapitel 10, »Gestalten von Benutzeroberflächen«. Dieses Thema ist unserer Meinung nach von zentraler Bedeutung, da das ABAP-Cloud-Entwicklungsmodell Oberflächentechnologien wie Dynpro oder Web Dynpro nicht mehr unterstützt. Zugriffschutz...