Interne Tabellen (ABAP): Unterschied zwischen den Versionen
Aus MattWiki
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 39: | Zeile 39: | ||
Der für die interne Tabelle benötigte Tabellentyp kann im Dictionary oder im ABAP Code definiert werden.Beispiele für Definition in ABAP: | Der für die interne Tabelle benötigte Tabellentyp kann im Dictionary oder im ABAP Code definiert werden.Beispiele für Definition in ABAP: | ||
Beispiel für implizite Definition:<syntaxhighlight lang="abap"> | |||
DATA: gt_buchregal TYPE TABLE OF gst_buch | DATA: gt_buchregal TYPE TABLE OF gst_buch | ||
</syntaxhighlight> | </syntaxhighlight>Beispiele für explizite Definition:<syntaxhighlight lang="abap"> | ||
" Struktur für Buch | |||
TYPES: BEGIN OF gst_buch, | TYPES: BEGIN OF gst_buch, | ||
buch_titel type string, | buch_titel type string, | ||
Zeile 47: | Zeile 48: | ||
END OF gst_buch. | END OF gst_buch. | ||
" Tabellentyp für Standard-Tabelle | |||
TYPES: gtt_buchregal TYPE STANDARD TABLE OF gst_buch | TYPES: gtt_buchregal TYPE STANDARD TABLE OF gst_buch | ||
WITH NON-UNIQUE DEFAULT KEY. | WITH NON-UNIQUE DEFAULT KEY. | ||
" Tabellentyp für sortierte Tabelle | |||
TYPES: gtt_buchregal_sortiert TYPE SORTED TABLE OF gst_buch | |||
WITH NON-UNIQUE DEFAULT KEY. | |||
" Tabellentyp für hashed Tabelle | |||
TYPES: gtt_buchregal_hashed TYPE HASHED TABLE OF gst_buch | |||
WITH UNIQUE DEFAULT KEY. | |||
DATA: gt_buchregal TYPE gtt_buchregal | DATA: gt_buchregal TYPE gtt_buchregal |
Version vom 28. August 2016, 21:05 Uhr
Interne Tabellen sind Tabellen, die im Hauptspeicher gehalten werden. Im Gegensatz dazu werden Datenbanktabellen im Datenbanksystem abgelegt.
Interne Tabellen benötigen einen Tabellentyp. Ein Tabellentyp kann per Code oder im Dictionary definiert werden. Er definiert:
- Tabellenart: z. B. STANDARD
- Zeilentyp
- Schlüsseldefinition: z. B. WITH NON_UNIQUE DEFAULT KEY
Tabellenarten
Typ | Any | ||
---|---|---|---|
Generisch | Index Table | Hashed Table | |
Tabellenart | STANDARD TABLE | SORTED TABLE | HASHED TABLE |
Indexzugriff | Ja | Ja | Nein |
Schlüsselzugriff | Ja | Ja | Ja |
Schlüsseleindeutigkeit | NON-UNIQUE | UNIQUE oder NON-UNIQUE | UNIQUE |
Definition einer internen Tabelle
Der für die interne Tabelle benötigte Tabellentyp kann im Dictionary oder im ABAP Code definiert werden.Beispiele für Definition in ABAP:
Beispiel für implizite Definition:
DATA: gt_buchregal TYPE TABLE OF gst_buch
Beispiele für explizite Definition:
" Struktur für Buch
TYPES: BEGIN OF gst_buch,
buch_titel type string,
anz_seiten type int4,
END OF gst_buch.
" Tabellentyp für Standard-Tabelle
TYPES: gtt_buchregal TYPE STANDARD TABLE OF gst_buch
WITH NON-UNIQUE DEFAULT KEY.
" Tabellentyp für sortierte Tabelle
TYPES: gtt_buchregal_sortiert TYPE SORTED TABLE OF gst_buch
WITH NON-UNIQUE DEFAULT KEY.
" Tabellentyp für hashed Tabelle
TYPES: gtt_buchregal_hashed TYPE HASHED TABLE OF gst_buch
WITH UNIQUE DEFAULT KEY.
DATA: gt_buchregal TYPE gtt_buchregal
Dabei könnte die Struktur gst_buch
und der Tabellentyp gtt_buchregal
auch im Dictionary definiert werden.