E-Book, Deutsch, 751 Seiten
Reihe: SAP Press
Englbrecht / Pflugrad Das neue SAPUI5-Handbuch
1. Auflage 2020
ISBN: 978-3-8362-8256-7
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
E-Book, Deutsch, 751 Seiten
Reihe: SAP Press
ISBN: 978-3-8362-8256-7
Verlag: Rheinwerk
Format: EPUB
Kopierschutz: 0 - No protection
Für Einsteiger und SAPUI5-Profis : Programmieren Sie Schritt für Schritt Ihre erste eigene Anwendung , oder starten Sie direkt mit Performanceoptimierung und Fehleranalyse . Dieses Buch beantwortet Ihre Fragen rund um die Anwendungsentwicklung mit SAPUI5. Beginnen Sie z. B. mit der Implementierung einfacher Controls und lernen Sie im Anschluss, wie Smart Controls Ihre Arbeit vereinfachen. Sie möchten lieber gleich wissen, wie Sie Ihre Apps um eigene Controls erweitern? Schlagen Sie es einfach nach!
Aus dem Inhalt:
- Bootstrapping
- Lifecycle Management
- Oberfächen und Dialoge gestalten
- Komponentenorientiertes Programmieren
- Anwendungsdeskriptor
- Sortieren, Gruppieren und Filtern
- Eingabevalidierung
- Eventbasierte Kommunikation
- Entwicklungsinfrastruktur
- Einführung in die Konzepte von SAP Fiori
Autoren/Hrsg.
Weitere Infos & Material
Einleitung ... 19
Teil I. Einführung ... 27
1. SAPUI5 -- ein Überblick ... 29
1.1 ... Was ist SAPUI5? ... 29
1.2 ... Anwendungsfälle ... 43
2. Grundlegender Aufbau und Ressourcen ... 47
2.1 ... Die Model-View-Controller-Architektur in SAPUI5 ... 47
2.2 ... Aufbau und Struktur einer SAPUI5-Anwendung ... 51
2.3 ... Bibliotheken und Namensräume ... 55
2.4 ... Typen von Views ... 67
2.5 ... Modelle ... 72
2.6 ... Datenbindung ... 81
2.7 ... Entwicklungs- und Laufzeitumgebung ... 89
Teil II. SAPUI5 -- Anwendungsentwicklung ... 99
3. In 7 Schritten zur ersten eigenen Anwendung ... 101
3.1 ... Ablaufumgebung aufsetzen ... 101
3.2 ... Einführung in den Aufbau einer UI5-Anwendung ... 105
3.3 ... Einführung in die Arbeit mit einfachen UI5-Controls ... 115
3.4 ... Verwendung von komplexen UI5-Controls ... 121
3.5 ... Die Programmierschnittstelle von SAPUI5 ... 127
3.6 ... Implementierung von Eventhandlern ... 131
3.7 ... Komponentenorientierte Anwendungsentwicklung ... 137
4. Das Bootstrapping ... 143
4.1 ... Einführung in das Bootstrapping von SAPUI5 ... 143
4.2 ... Komponentenerstellung ... 147
4.3 ... Weitere Konfigurationsmöglichkeiten ... 149
5. Instanziierung und Lebenszyklus ... 153
5.1 ... Einführung in das Lifecycle-Management von SAPUI5 ... 153
5.2 ... Ressourcen verwenden ... 160
6. Benutzeroberflächen und Dialoge gestalten ... 163
6.1 ... Gestaltung von einfachen Benutzeroberflächen ... 163
6.2 ... Gestaltung von komplexen Benutzeroberflächen ... 170
6.3 ... Arbeiten mit Fragmenten ... 178
6.4 ... Dialoge implementieren und verwenden ... 189
7. Arbeiten mit Layouts ... 197
7.1 ... Einführung in die Arbeit mit Layouts ... 197
7.2 ... Standardlayouts zur Anordnung von UI-Controls ... 201
7.3 ... Arbeiten mit Formularlayouts ... 205
7.4 ... Arbeiten mit Fullscreen-Layouts ... 210
8. Responsive und adaptive Benutzeroberflächen ... 217
8.1 ... Responsiv versus adaptiv ... 217
8.2 ... Implementierung responsiver SAPUI5-Anwendungen ... 219
8.3 ... Implementierung adaptiver SAPUI5-Anwendungen ... 233
9. Komponentenorientiertes Programmieren ... 241
9.1 ... Aufbau einer Komponente ... 241
9.2 ... Integration von Komponenten ... 257
10. Anwendungsdeskriptor ... 267
10.1 ... Aufbau des Anwendungsdeskriptors ... 268
10.2 ... Zugriff auf die Konfigurationsdaten zur Laufzeit ... 285
11. Routing und Navigation ... 289
11.1 ... Einführung in die Navigationskonzepte von SAPUI5 ... 289
11.2 ... Navigation am Beispiel einer Master-Detail-Anwendung ... 301
11.3 ... Erweiterte Routingkonzepte ... 315
12. Arbeiten mit Modellen ... 321
12.1 ... JSON-Modell ... 321
12.2 ... Ressourcenmodell ... 325
12.3 ... OData-Modell ... 335
13. Sortieren, gruppieren und filtern ... 351
13.1 ... Sortieren ... 352
13.2 ... Gruppieren ... 362
13.3 ... Filtern ... 371
14. CUDQ mit OData ... 381
14.1 ... Create ... 382
14.2 ... Update ... 397
14.3 ... Delete ... 406
14.4 ... Query ... 408
14.5 ... Funktionsimport ... 414
14.6 ... Das OData-Modell der 4-Version -- ein Ausblick ... 416
15. Eingabevalidierung und eigene Datentypen ... 425
15.1 ... Einführung in die Arbeit mit Datentypen ... 425
15.2 ... Implementierung eigener Datentypen ... 435
Teil III. Weiterführende Themen ... 449
16. Smart Controls ... 451
16.1 ... Einführung in Smart Controls ... 451
16.2 ... Verwendung der »SmartTable« ... 452
16.3 ... »SmartFilterBar« ... 460
16.4 ... »SmartForm« ... 468
17. Implementierung eigener Controls ... 473
17.1 ... Grundlagen der SAPUI5-Control-Entwicklung ... 473
17.2 ... UI-Controls erweitern ... 478
17.3 ... Eigene UI-Controls implementieren ... 483
17.4 ... XML Composite Controls implementieren ... 490
18. Eventbasierte Kommunikation mit dem Event Bus ... 495
18.1 ... Einführung in das eventbasierte Anwendungsdesign ... 495
18.2 ... Der Event Bus in SAPUI5 ... 497
18.3 ... Implementierung einer eventgesteuerten Anwendungskommunikation ... 499
19. Drag and Drop ... 507
19.1 ... Grundlagen der Implementierung von Drag and Drap in SAPUI5 ... 508
19.2 ... Einsatzszenarien von Drag and Drop und ihre Implementierung ... 514
20. Theming ... 527
20.1 ... CSS ... 527
20.2 ... UI Theme Designer ... 530
21. Testen von SAPUI5-Anwendungen ... 547
21.1 ... Grundlagen von Tests in SAPUI5 ... 547
21.2 ... Unit-Tests mit QUnit ... 553
21.3 ... Oberflächentests mit OPA5 ... 563
21.4 ... Daten simulieren mit dem UI5 MockServer ... 577
21.5 ... End-to-End-Tests mit UIVeri5 ... 581
22. Entwicklungsinfrastruktur ... 589
22.1 ... Einführung und Übersicht ... 589
22.2 ... Projektsetup mit dem UI5 Tooling ... 591
22.3 ... Automatisierte Tests für CI ... 600
22.4 ... Versionsverwaltung mit Git ... 606
22.5 ... Aufbau einer Continuous-Deployment-Pipeline ... 617
23. Performanceoptimierung und Fehleranalyse ... 625
23.1 ... Grundlagen der Performanceoptimierung von SAPUI5-Anwendungen ... 626
23.2 ... Der Support Assistant ... 638
23.3 ... Einführung in die Performanceanalyse ... 657
23.4 ... Typische Fehlersituationen in SAPUI5, ihre Ursache und Lösung ... 661
24. SAP Fiori ... 667
24.1 ... Überblick ... 667
24.2 ... Implementierung einer SAPUI5-Anwendung mit der SAP Web IDE ... 677
24.3 ... Fundamental Library Styles ... 699
24.4 ... SAP Fiori Elements ... 705
24.5 ... Integration in das SAP Fiori Launchpad ... 727
Die Autoren ... 739
Index ... 741
Einleitung
Die Entwicklung moderner Anwendungen, die sich auf unterschiedlichen Endgeräte verwenden lassen, steht seit Jahren im Fokus von Unternehmen. Nutzer wollen und müssen auf Funktionen und Daten schnell und einfach zugreifen. Die Installation von Software auf dem jeweiligen Endgerät sollte dabei so gut wie möglich vermieden werden, gleichzeitig soll das Nutzererlebnis so gut wie nur möglich sein. SAP hat schon früh die Zeichen der Zeit erkannt und gesehen, dass mit ABAP Web Dynpro oder Dynpro nur bedingt auf die neuen Anforderungen des Markts reagiert werden kann. Mit dem SAP UI Development Toolkit für HTML5, oder kurz SAPUI5, wurde ein HTML-Framework implementiert, das sich über die Jahre hinweg zu einem echten Konkurrenten für andere Webframeworks gemausert hat. Anwendungen, die mit SAPUI5 entwickelt werden, sind unabhängig von Endgeräten, benötigen lediglich einen Webbrowser und haben somit beim Einsatz eine niedrige Hemmschelle.
Die Jahre haben gezeigt, dass SAP sich bei der Weiterentwicklung von SAPUI5 nicht ausruhen darf und so hat SAP die Schlagzahl bei der Innovation des Frameworks mächtig erhöht. Für Unternehmen ist es nicht leicht, hier schrittzuhalten, gerade nachdem die vorherigen Jahrzehnte nicht von schneller Innovation bei Oberflächentechnologien seitens SAP geprägt waren. Heute, zu Beginn der 2020er-Jahre, ist SAPUI5 aus der SAP Landschaft nicht mehr wegzudenken und stellt de facto den Standard für die Entwicklung von modernen Oberflächen für SAP-Anwendungen dar.
Was ist das Ziel dieses Buches?
Mit diesem Buch möchten wir erreichen, Ihnen einen guten und detaillierten Überblick über das SAPUI5-Framework zu bieten. Anhand vieler Programmbeispiele zeigen wir Ihnen, wie Sie mit SAPUI5 erfolgreich Unternehmensanwendungen implementieren. Wir zeigen Ihnen auch, was hinter den Kulissen des Frameworks passiert und erläutern Ihnen neben dem Framework, wie Ihre Entwicklungsinfrastruktur aussehen kann und soll, damit Sie erfolgreich SAPUI5-Anwendungen entwickeln können. Das Buch ist größtenteils werkzeugagnostisch aufgebaut. Wir erläutert somit nicht, wie Sie mit einem konkreten Werkzeug, wie beispielsweise der SAP Web IDE oder mit Visual Studio Code, Anwendungen mit SAPUI5 entwickeln, sondern haben den Fokus auf das Framework an sich gelegt. Wo es unabdingbar ist, zeigen wir Ihnen aber auch, wie Sie SAPUI5-Anwendungen mit einem bestimmten Werkzeug implementieren.
Zielgruppe dieses Buches
Dieses Buch richtet sich an Softwareentwickler mit oder ohne SAPUI5-Erfahrung, die bereits solide Vorkenntnisse der Techniken zur Entwicklung von Web-Anwendungen besitzen. Das Buch ist auch für technische Berater und Entscheider eine gute Hilfe, um die Zusammenhänge und Möglichkeiten von SAPUI5 zu erlernen. Sie müssen nicht zwingend SAP-Wissen besitzen, es hilft jedoch, die technischen Grundaspekte moderner SAP-Landschaften zu kennen.
Zum Aufbau dieses Buches
Das vorliegende Buch gliedert sich in drei Teile: Teil I, »Einführung«, gibt Ihnen eine Einführung in SAPUI5 und ordnet für Sie die wichtigsten Begriffe und Themen rund um SAPUI5 ein. In Teil II, »SAPUI5 – Anwendungsentwicklung«, gehen wir auf alle wichtigen Konzepte und Techniken des Frameworks ein und zeigen Ihnen detailliert, wie Sie SAPUI5-Anwendungen aufbauen. Wir geben Ihnen einen tiefergehenden Einblick in die Technologie und zeigen Ihnen neben der Theorie auch den praktischen Einsatz anhand von Programmbeispielen. Teil III, »Weiterführende Themen«, gibt Ihnen einen Überblick über weiterführende Themen, die rund um das Thema SAPUI5 und SAPUI5-Entwicklung wichtig sind.
Teil I: Einführung in SAPUI5
Kapitel 1, »SAPUI5 – ein Überblick«, gibt Ihnen eine Einführung in die Welt von SAPUI5. Es gibt Aufschluss darüber, warum es SAPUI5 gibt und welchen Stellenwert das Framework mittlerweile bei SAP hat. Es zeigt zudem, wo SAPUI5-Anwendungen eingesetzt werden können und liefert eine Einführung in das Thema SAP Fiori.
Kapitel 2, »Grundlegender Aufbau und Ressourcen«, bringt Ihnen die Grundlagen von SAPUI5 näher. Von der Funktionsweise des Frameworks über dessen Architektur und Bibliotheken bis hin zu Aspekten der Entwicklungs- und Laufzeitumgebung erhalten Sie hier einen ersten Einblick in die zentralen Module und Konzepte, der Sie auf die zahlreichen Detailkapitel vorbereitet.
Teil II: SAPUI5 Anwendungsentwicklung
Kapitel 3, »In 7 Schritten zur ersten eigenen Anwendung«, führt Sie Schritt für Schritt in die Entwicklung einer SAPUI5-Anwendung ein. Wir zeigen Ihnen, wie Sie mit UI5 Tooling die Projektgrundlagen schaffen. An einem praktischen Beispiel zeigen wir Ihnen, wie Sie nach und nach die unterschiedlichen Techniken des SAPUI5-Frameworks praktisch einsetzen und am Ende eine als Komponenten gekapselte Anwendung implementieren.
Kapitel 4, »Das Bootstrapping«, steht im Zeichen der clientseitigen Laufzeitumgebung. Wir führen Sie in das Bootstrapping der clientseitigen Laufzeitumgebung von SAPUI5 ein. Wir zeigen Ihnen, wie Sie über die Konfiguration des Bootstrapping entsprechend Einfluss auf die Anwendung nehmen können.
Das SAPUI5-Framework besteht aus einer Vielzahl von Klassen und Artefakten, die zur Laufzeit durch das Framework bereitgestellt werden. Kapitel 5, »Instanziierung und Lebenszyklus«, gibt Ihnen einen Überblick über den Lebenszyklus der Artefakte und zeigt Ihnen, wie Sie Klassen des Frameworks referenzieren, instanziieren und initialisieren. Wir zeigen Ihnen den Lebenszyklus von Views, Controller, Komponente und Controls und wie Sie ihn beeinflussen können.
Das SAPUI5-Framework bietet eine große Menge an UI-Controls, mit denen es möglich ist, komplexe Anwendungen zu implementieren. Kapitel 6, »Benutzeroberflächen und Dialoge gestalten«, gibt Ihnen eine Einführung in die Nutzung der UI-Controls. In Abschnitt 6.1 zeigen wir, wie einfache UI-Controls verwendet werden. In Abschnitt 6.2 stellen wir die Implementierung von Wertehilfen und die Nutzung komplexer UI-Controls vor. Abschnitt 6.3 zeigt Ihnen, wie Sie mithilfe von Fragmenten Anwendungen strukturieren. In Abschnitt 6.4 zeigen wir, wie Sie eigene Dialoge implementieren und im SAPUI5-Framework enthaltene Dialog-Controls nutzen.
Kapitel 7, »Arbeiten mit Layouts«, zeigt Ihnen die Verwendung von Layouts, mit denen Sie die von SAPUI5 gebotenen UI-Controls im kleinen und großen Rahmen zu sinnvollen Gesamtkompositionen anordnen können. Dabei erhalten Sie Einblicke in die Best Practices zur Layoutgestaltung für verschiedene Anwendungsfälle.
Kapitel 8, »Responsive und adaptive Benutzeroberflächen«, führt diese Konzepte einen Schritt weiter und berücksichtigt die Anforderungen von modernen, responsiven Browseranwendungen in Bezug auf ihre Anpassbarkeit und Benutzbarkeit auf verschiedenen Endgeräten und Bildschirmgrößen. Sie erfahren, welche Konzepte Sie anwenden können, um Ihre Anwendungen für einen universellen Einsatz fit zu machen.
Die Wiederverwendung von Bestandteilen einer Anwendung ist ein wichtiges Ziel bei der Anwendungswicklung. Wir zeigen Ihnen in Kapitel 9, »Komponentenorientiertes Programmieren«, wie Sie Anwendungsbestandteile als Komponenten kapseln können. Das Kapitel führt Sie in die Entwicklung von Faceless- und Facefull-Komponenten ein.
SAPUI5-Anwendungen benötigten zur Laufzeit viele Informationen über Abhängigkeiten, Backenddienste und andere Konfigurationsaspekte. Diese können im Quelltext direkt oder über eine Manifest-Datei, den sogenannten Applikationsdeskriptor, implementiert werden. Kapitel 10, »Anwendungsdeskriptor«, gibt Ihnen eine Einführung in die unterschiedlichen Konfigurationsaspekte des Applikationsdeskriptors von SAPUI5. Wir zeigen Ihnen die wichtigsten Attribute und Konfigurationsobjekte.
Anwendungen bestehen oftmals aus mehreren Seiten oder Komponenten, zwischen denen es zu navigieren und Daten zu übertragen gilt. In Kapitel 11, »Routing und Navigation«, zeigen wir Ihnen, wie Sie die Navigation zwischen den Seiten Ihrer Anwendung und das Routing zu eingebetteten Komponenten für verschiedene Szenarien realisieren.
Für ein MVC-Framework wie SAPUI5 spielt die Datenhaltung in Modellen eine sehr wichtige Rolle. Kapitel 12, »Arbeiten mit Modellen«, gibt einen Überblick über die unterschiedlichen in SAPUI5 bereitgestellten Modellarten. Es zeigt Ihnen, wie Sie mit Ressource-Modellen sprachunabhängige Anwendungen implementieren und wie JSON-Modelle für die lokale Verarbeitung von Daten verwendet werden. Den Abschluss des Kapitels bietet eine Einführung in die Verwendung von OData-Diensten unter Zuhilfenahme des OData-Modells von SAPUI5.
In Kapitel 13, »Sortieren, gruppieren und filtern«, beschreiben wir, welche Möglichkeiten SAPUI5 für...




