Previous slide
Next slide
Toggle fullscreen
Open presenter view
ABAP RAP Advanced
Augmentations in RAP
Smartere UIs
Einleitendes Beispiel
Ein Material wird angelegt und verwendet
Jeder Anwender möchte den Materialtext in seiner eigenen Sprache sehen und bearbeiten
Im Datenmodell gibt es unterschiedliche Texte pro Sprache
Das UI soll dennoch eine einheitliche, einfache Bearbeitungsoberfläche bieten
Motivation für Augmentations
Datenmodell und User Experience können unterschiedlich sein
Beispiel: Nur letzter Kommentar soll gezeigt und geändert werden
Hinter den Kulissen wird jeder Kommentar als neuer Eintrag gespeichert
Views zur Aggregation
ZI_##_Comment_Max
: Aggregiert den neuesten Zeitstempel (CreatedAt) je Task
ZI_##_Comment_Latest
: Join auf Max-Timestamp, holt den kompletten Kommentar
Key in Latest View ist TaskKey, da je Task nur ein Eintrag zurückgegeben
Erweiterung im Task-Modell
Neue Association zur View
ZI_##_Comment_Latest
in der Task I-View
Projektion
ZC_##_Task_NoDraft
erweitert um
CommentText
aus der Association
MDE Annotation zur Sichtbarkeit und Position des neuen Felds
Behavior Definition & Implementation
Neue Implementierungsklasse
ZBP_C_##_Task_NoDraft
für Projection
Verwendung von
use update ( augment )
für zusätzliche Update-Logik
Feld
CommentText
als
modify
gekennzeichnet für Editierbarkeit
Augmentiertes Update erzeugt über Create-By-Association neue Kommentare
Wichtig:
MODIFY AUGMENTING ENTITIES
statt reguläres MODIFY
Relating-Tabellen verwalten Verbindung zwischen Parent und Child
Klassische Beispiel-Methode: augment_update
Schreibt bei Änderung von CommentText neue Einträge an Kommentare
Verwaltet Relations-Tabellen um Zusammenhang zu Tasks zu sichern
Nutzt Behavior Framework (cl_abap_behavior_handler) und MODIFY AUGMENTING
Nutzen von Augmentations
Trennung von User-Interface und Datenpersistenz
Flexible Umsetzung von individuellen UX-Anforderungen
Nutzung mächtiger RAP-Mechanismen zur sauberen Erweiterung ohne Modellbruch
Fazit
Augmentation erlaubt gezielte Erweiterung von Standardoperationen
Ideal für Szenarien mit abweichender Bearbeitungslogik
Erhöht Wartbarkeit und Flexibilität im RAP-Datenmodell