ABAPCREATE_DATA - CREATE DATA

RFUMSV00 - Advance Return for Tax on Sales/Purchases   RFUMSV00 - Advance Return for Tax on Sales/Purchases  
Diese Dokumentation steht unter dem Copyright der SAP AG.

CREATE DATA

Kurzreferenz



Syntaxformen



Datentyp implizit festlegen

1. CREATE DATA dref [area_handle].

Datentyp über eingebaute ABAP-Typen festlegen

2. CREATE DATA dref [area_handle]
                   TYPE {abap_type|(name)}
                        [LENGTH len] [DECIMALS dec].

Datentyp über vorhandenen Typ festlegen

3. CREATE DATA dref [area_handle]
                   { {TYPE [LINE OF] {type|(name)}}
                   | {LIKE [LINE OF] dobj} }.

Daten mit Bezug auf ein Typobjekt erzeugen

4. CREATE DATA dref [area_handle]
                   TYPE HANDLE handle.

Referenzvariablen erzeugen

5. CREATE DATA dref [area_handle]
                   TYPE REF TO {type|(name)}.

Interne Tabellen erzeugen

6. CREATE DATA dref [area_handle]
                   { {TYPE [STANDARD]|SORTED|HASHED TABLE
                      OF [REF TO] {type|(name)}}
                   | {LIKE [STANDARD]|SORTED|HASHED TABLE OF dobj} }
                   [WITH [UNIQUE|NON-UNIQUE]
                         {KEY {comp1 comp2 ...}|(keytab)}|{DEFAULT KEY}]

                   [INITIAL SIZE n].

Wirkung

Die Anweisung CREATE DATA erzeugt ein anonymes Datenobjekt und weist die Referenz auf das Datenobjekt der Referenzvariablen dref zu.

Standardmäßig wird das Datenobjekt iminternenModus des aktuellen Programms angelegt und lebt dort so lange, wie es benötigt wird. Wenn es von keiner Referenzvariablen mehr referenziert wird, wird es vomGarbageCollector gelöscht. Mit dem Zusatz area_handle kann das Datenobjekt alsShared Object angelegt werden.

Die Referenzvariable dref muss als Datenreferenzvariable deklariert sein. Auf den Inhalt einesmit CREATE DATA erzeugten Datenobjekts kann nur über dereferenzierte Datenreferenzvariablen oder Feldsymbole zugegriffen werden (siehe Datenobjekte in Operandenpositionen).

Der Datentyp des erzeugten Datenobjekts kann mit dem Zusatz TYPE und einer Typangabe oder mitdem Zusatz LIKE und der Angabe eines Datenobjekts definiert werden. Die Syntax erlaubt die dynamischeDefinition von elementaren Datentypen, Referenztypen und Tabellentypen. Mit dem Zusatz HANDLE kann Bezug auf beliebige Typobjekte derRTTS genommen werden. Der statische Typ der Datenreferenzvariablen muss nach den Regeln im AbschnittZuweisungenzwischen Datenreferenzvariablen allgemeiner als der Datentyp des erzeugten Datenobjekts oder mit diesem identisch sein.

Wenn bei der Erzeugung des Datenobjekts eine behandelbare Ausnahme auftritt, wird das Objekt nicht erzeugt und die Datenreferenzvariable dref behält ihren vorherigen Zustand.

Hinweise

  • Im Gegensatz zur Anweisung DATAerzeugt CREATE DATA das Datenobjekt zum Zeitpunkt der Ausführung. Mit DATA deklarierte Datenobjekte werden beim Laden der zugehörigen Programmeinheit erzeugt.
  • Die Anweisung CREATE DATA erzeugt eine selbstständige Datenreferenz.


Ausnahmen

Behandelbare Ausnahmen

CX_SY_CREATE_DATA_ERROR

  • Ursache: Unzulässiger Wert für den Zusatz DECIMALS.
    Laufzeitfehler: CREATE_DATA_ILLEGAL_DECIMALS (abfangbar)
  • Ursache: Unzulässiger Wert für den Zusatz INITIAL SIZE.
    Laufzeitfehler: CREATE_DATA_ILLEGAL_INIT_SIZE (abfangbar)
  • Ursache: Unzulässiger Wert für den Zusatz LENGTH.
    Laufzeitfehler: CREATE_DATA_ILLEGAL_LENGTH (abfangbar)
  • Ursache: Der Zusatz LENGTH wurde für einen Typ ungleich c, n, x oder p verwendet.
    Laufzeitfehler: CREATE_DATA_LEN_NOT_ALLOWED (abfangbar)
  • Ursache: Der im Zusatz TYPE dynamisch angegebene Typ ist nicht vollständig typisiert.
    Laufzeitfehler: CREATE_DATA_NOT_ALLOWED_TYPE (abfangbar)
  • Ursache: Der im Zusatz TYPE angegebene Typ ist unbekannt.
    Laufzeitfehler: CREATE_DATA_UNKNOWN_TYPE (abfangbar)


Unbehandelbare Ausnahmen

  • Ursache: Die Variable dref hat nicht den richtigen Typ.
    Laufzeitfehler: CREATE_DATA_REFERENCE_EXPECTED







General Material Data   BAL_S_LOG - Application Log: Log header data  
Diese Dokumentation steht unter dem Copyright der SAP AG.


Length: 9089 Date: 20120526 Time: 193628     triton ( 239 ms )