Ansicht
Dokumentation
ABENABP_MAP_MESSAGES_ABEXA - ABP MAP MESSAGES ABEXA
BAL Application Log Documentation General Material DataDiese Dokumentation steht unter dem Copyright der SAP AG.
Beispiel für RAP-Saver-Methode map_messages
Mit diesem Beispiel wird die RAP-Saver-Methode map_messages innerhalb einer RAP-Saver-Klasse mithilfe eines nicht verwalteten RAP BOs demonstriert.
Datenmodell
Das CDS-Datenmodell besteht aus der Wurzelentität DEMO_UNMANAGED_MAP_MESSAGES, die das exponierte RAP-BO darstellt, und der
fremden Entität
DEMO_UNMANAGED_FOREIGN_ENTITY, nämlich dem nicht exponierten RAP-BO.
CDS-Datenmodell des exponierten BOs:
CDS-Datenmodell der fremden Entität:
Verhaltensdefinition
Folgende in CDS BDL definierte CDS-Verhaltensdefinitionen sind für das Beispiel relevant:
Verhaltensimplementierung
Für jede der oben genannten CDS-Verhaltensdefinitionen wird ein ABP angelegt.
- Globale Klasse des Behavior-Pools: BP_DEMO_UNMANAGED_MAP_MESSAGES. Die eigentliche Verhaltensimplementierung findet in lokalen Klassen statt, die im BP_DEMO_UNMANAGED_MAP_MESSAGESCCIMP des Behavior-Pools definiert und implementiert werden.
- Globale Klasse des Behavior-Pools: BP_DEMO_UNMANAGED_FOREIGN_ENTI. BP_DEMO_UNMANAGED_FOREIGN_ENTICCIMP enthält die eigentliche Verhaltensimplementierung.
Um das Beispiel übersichtlich zu machen, enthalten die ABPs nur wenige Methodenimplementierungen. In diesem Fall wird nur die Methode create auf Seite des Behandlers implementiert. Auf Seite des Savers wird nur die Methode save implementiert. Der ABP des exponierten BOs enthält auch die Implementierung der Methode map_messages.
In diesem einfachen Beispiel wird die Methode map_messages wie folgt implementiert: Die in der Tabelle REPORTED LATE vorhandenen Nachrichten der fremden Entität werden sequentiell innerhalb einer LOOP AT-Anweisung verarbeitet. Dabei wird die Nachricht aus der fremden Entität erst ersetzt und danach in die Tabelle REPORTED LATE des exponierten BOs eingefügt. Nach der Schleife wird der Inhalt der Tabelle REPORTED LATE der fremden Entität gelöscht.
Quelltext
Beschreibung
Zugriff mit ABAP über EML
Der obige Quelltext verwendet EML, um auf das RAP-Business-Objekt aus einem ABAP-Programm zuzugreifen:
Das Beispiel enthält zwei -MODIFY-Anforderungen innerhalb einer RAP-LUW. Jede der MODIFY-Anforderungen enthält eine Create-Operation mit CREATE-Anweisungen, die zwei Instanzen für das exponierte BO und die fremde Entität anlegt. Mit einer COMMIT ENTITIES-Anweisung wird die Sicherungssequenz ausgelöst und die RAP-LUW beendet.
In der Ausgabe wird das Ergebnis der MODIFY-Anforderungen gezeigt. Die auf der Datenbanktabelle gespeicherten Instanzen werden aus der Datenbanktabelle selektiert und in eine interne Tabelle eingefügt. Die Anweisung COMMIT ENTITIES enthält die Antwort REPORTED. Der Inhalt dieser Antwort ist ebenfalls in der Ausgabe enthalten und die Wirkung der Methode map_messages wird somit demonstriert. Die ursprünglichen Nachrichten für die Instanzen der fremden Entität sind für das exponierte BO verfügbar. Darüber hinaus sind die Nachrichten geändert worden und in der Tabelle REPORTED der fremden Entität werden keine Einträge gezeigt, da der Inhalt gelöscht wurde.
CL_GUI_FRONTEND_SERVICES - Frontend Services Fill RESBD Structure from EBP Component Structure
Diese Dokumentation steht unter dem Copyright der SAP AG.
Length: 5497 Date: 20240523 Time: 172613 sap01-206 ( 73 ms )