Anfang des InhaltsbereichsVorgehensweisen Objektreferenz in Container schreiben Dokument im Navigationsbaum lokalisieren

Voraussetzungen

Folgende Voraussetzungen müssen erfüllt sein, um eine Objektreferenz in einen Container zu schreiben:

Hinweis

Diese Voraussetzungen sind immer erfüllt, wenn Sie sich im Implementierungsprogramm befinden. Der Container wird dann unter dem Namen CONTAINER angesprochen.

Vorgehensweise

  1. Legen Sie eine Variable zur Aufnahme der Objektreferenz an. Verwenden Sie dazu folgenden Befehl:
  2. DATA <Objekt> TYPE SWC_OBJECT.

  3. Erzeugen Sie die Objektreferenz. Verwenden Sie dazu folgenden Befehl:
  4. SWC_CREATE_OBJECT <Objekt> <Objekttyp> <Objektschlüssel>.

  5. Schreiben Sie mit folgendem Makrobefehl die Objektreferenz in den Container:
  6. SWC_SET_ELEMENT <Container> <Containerelement> <Objekt>.

    Achtung

    Bei der Kennung des Containerelements wird nicht zwischen Groß- und Kleinbuchstaben unterschieden. Wenn der Container im Datenfluss eines Workflow benutzt wird, müssen Sie darauf achten, dass in der Containerdefinition ein gleichnamiges Containerelement definiert ist.

  7. Wiederholen Sie ggf. die Schritte 2 und 3, bis der Container gefüllt ist.
  8. Machen Sie mit folgendem Makrobefehl die Objektreferenzen des Containers persistent:

SWC_CONTAINER_TO_PERSISTENT <Container>.

Hinweis

Sie benötigen persistente Objektreferenzen, wenn der Container in einem anderen Programmkontext weiterverwendet wird. Dies ist der Fall, wenn Sie den Container bei einem Funktionsaufruf als Parameter übergeben, z.B. wenn Sie den Container

Ergebnis

Die erzeugte Objektreferenz ist ein Laufzeitreferenz, die nur im Umfeld des erzeugenden Programms existiert. Diese Objektreferenz wird in einem Containerelement in den Container geschrieben. Wenn das Containerelement unter dieser Kennung noch nicht im Container vorhanden ist, wird es mit seinem Wert in den Container eingefügt. Wenn schon ein Containerelement unter dieser Kennung im Container vorhanden ist, wird der alte Wert mit dem neuen Wert überschrieben. Wenn der Container in einem anderen Programmkontext benötigt wird, müssen Sie die enthaltenen Objektreferenzen persistent machen.

Beispiel

Ein Objekt des Typs KNA1 (Kunde) wird durch die Kundennummer als Schlüsselfeld beschrieben. Die Kundennummer steht unter dem Namen KUNNR in der Tabelle KNA1 (Kundenstamm: allgemeiner Teil).

* Typdeklaration für Schlüsselfeld
* Objekt: Kunde (Debitor)
DATA KUNNR LIKE KNA1-KUNNR. "Kundennummer

Das Feld KUNNR wird mit einem Wert gefüllt:

* Kundennummer
KUNNR = '0000004711'.

Die Variable CUSTOMER wird als Objektreferenz deklariert.

* Typdeklarationen für Objekt
DATA CUSTOMER TYPE SWC_OBJECT.

Für den oben erwähnten Objekttyp KNA1 (Kunde) wird eine Objektreferenz erzeugt.

* Objektreferenz für Objekttyp KNA1 erzeugen
SWC_CREATE_OBJECT CUSTOMER 'KNA1' KUNNR.

Im Containerelement Kunde wird der Kunde in den Container MY_CONTAINER eingetragen.

* Objektreferenz in Container schreiben
SWC_SET_ELEMENT MY_CONTAINER 'Kunde' CUSTOMER.

Die Objektreferenzen des Containers werden persistent gemacht.

SWC_CONTAINER_TO_PERSISTENT MY_CONTAINER.

Ende des Inhaltsbereichs