Field-Symbol generisch typisieren

Aus SAP-Wiki
Zur Navigation springenZur Suche springen


Siehe Dynamische/Generische Programmierung.

Siehe Kategorie: Dynamische/Generische Programmierung.

Ein Field-Symbol kann mit "type any", bzw. "type table" oder "type any table" generisch typisiert werden und zur Laufzeit einen konkreten Typ zugewiesen bekommen.

Generisches Field-Symbol TYPE ANY

Das Field-Symbol wird zunächst generisch typisiert.

Field-Symbols: <fs_variable> type any.

Eine CHAR-Variable wird angelegt zur Aufnahme des Namens der Variablen.

Data: lv_output type char10.

Das Feldsymbol erhält einen statischen Typ mit dem Schlüsselbefehl ASSIGN. Das Field-Symbol hat nun den Typ CHAR10.

assign lv_output to <fs_variable>.

Durch die nachfolgende Zuweisung erhält nicht nur lv_output den Wert 'Test', sondern auch <fs_variable>, weil der Zeiger des Field-Symbols auf die Variable lv_output zeigt.

lv_output = 'Test'.

Das Ergebnis wäre nun das gleiche, wenn man statt "lv_output = 'Test'." schreiben würde

<fs_variable> = 'Test'.

Generisches Field-Symbol TYPE TABLE

Das Field-Symbol wird hier als generische Tabelle deklariert mit "type table".

FIELD-SYMBOLS: <gt_pos_data>  TYPE table.

Eine Tabelle wird normal typisiert als Standardtabelle.

DATA: gt_coep_ext TYPE Standard table kaep_coep_ext,

Der Typ der statisch typisieren Tabelle GT_COEP_EXT wird dem Field-Symbol zugewiesen. Nun kann normal mit dem Field-Symbol als Tabelle gearbeitet werden.

ASSIGN gt_coep_ext TO <gt_pos_data>.

Generisches Feild-Symbol TYPE CLIKE, CSEQUENCE, DECFLOAT, NUMERIC und andere

Es gibt noch eine Reihe anderer generischer Datentypen.

Siehe https://help.sap.com/doc/abapdocu_750_index_htm/7.50/de-de/abenbuilt_in_types_generic.htm.

Web-Links

Literatur