ALV-Control (ABAP): Unterschied zwischen den Versionen
Aus MattWiki
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 1: | Zeile 1: | ||
Mit folgendem Listing wird eine Datenbanktabelle | Mit folgendem Listing wird eine definierte Datenbanktabelle in eine interne Tabelle gelesen und in einem ALV-Control ausgegeben. | ||
in eine interne Tabelle gelesen und in einem | |||
ALV-Control ausgegeben. | Für varianten mit zur Laufzeit bestimmten Tabellen siehe | ||
<syntaxhighlight lang="abap"> | <syntaxhighlight lang="abap"> |
Version vom 2. April 2018, 14:56 Uhr
Mit folgendem Listing wird eine definierte Datenbanktabelle in eine interne Tabelle gelesen und in einem ALV-Control ausgegeben.
Für varianten mit zur Laufzeit bestimmten Tabellen siehe
REPORT zmattitabalv.
" Datenreferenz erstellen. Diese kann auf einen typisierten oder
" untypisierten Datenspeicher zeigen. Hier: untypisiert.
DATA: ls_scarr TYPE scarr,
lt_scarr TYPE TABLE OF scarr.
" Feldsymbol für interne Tabelle
FIELD-SYMBOLS: <lt_table> LIKE LINE OF lt_scarr.
" Datenbanktabelle in interne Tabelle laden
SELECT * FROM scarr INTO TABLE lt_scarr.
" Interne Tabelle zeilenweise durchlaufen und eine Zeile der Feldreferenz
" zuordnen. Diese Feldreferenz bearbeiten.
LOOP AT lt_scarr ASSIGNING <lt_table>.
<lt_table>-url = <lt_table>-url && '/subpage/'.
ENDLOOP.
" ALV-Control als Referenzvariable definieren
DATA: lr_alv TYPE REF TO cl_salv_table.
" ALV-Control erstellen und ausgeben
cl_salv_table=>factory(
IMPORTING
r_salv_table = lr_alv
CHANGING
t_table = lt_scarr ).
lr_alv->display( ).