Objektreferenz aus Container lesen
Voraussetzungen
Folgende Voraussetzungen müssen erfüllt sein, um eine Objektreferenz aus einen Container zu lesen:
Diese Voraussetzungen sind immer erfüllt, wenn Sie sich im
Container, die über eine Funktionsbaustein-Schnittstelle übergeben werden, enthalten immer persistente Objektreferenzen. Bevor Sie Objektreferenzen aus einem Container lesen und in einer Variable ablegen, müssen Sie alle Objektreferenzen im Container zu Laufzeitreferenzen machen. Führen Sie dazu folgenden Makrobefehl aus:
SWC_CONTAINER_TO_RUNTIME <Container>.
Sie müssen einen Container mit diesem Makro bearbeiten, wenn Sie
Vorgehensweise
DATA <Objekt> TYPE SWC_OBJECT.
SWC_GET_ELEMENT <Container> <Containerelement> <Objekt>.
Sie können aus der Objektreferenz den Objekttyp und den Schlüssel herauslesen. Verwenden Sie dazu die Makros
SWC_GET_OBJECT_TYPE bzw. SWC_GET_OBJECT_KEY. Weitere Informationen finden Sie unter Makrobefehle zum Zugriff auf Objekte, Attribute und Methoden.Wollen Sie nur eine Objektreferenz lesen, sollten Sie aus Performance-Gründen auch nur diese Objektreferenz in eine Laufzeitreferenz umwandeln. Gehen Sie dazu wie folgt vor:
DATA <Objekt> TYPE SWC_OBJECT
<Variable> LIKE SWOTOBJID.
SWC_GET_ELEMENT <Container> <Containerelement> <Variable>.
SWC_OBJECT_FROM_PERSISTENT <Variable> <Objekt>.