ALV-Control (ABAP)
Aus MattWiki
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 Dynamische Programmierung (ABAP)
REPORT zmattitabalv.
" Datenreferenz erstellen. Diese kann auf einen typisierten oder
" untypisierten Datenspeicher zeigen. Hier: untypisiert.
DATA: gs_scarr TYPE scarr,
gt_scarr TYPE TABLE OF scarr.
" Feldsymbol für interne Tabelle
FIELD-SYMBOLS: <gt_table> LIKE LINE OF gt_scarr.
" Datenbanktabelle in interne Tabelle laden
SELECT * FROM scarr INTO TABLE gt_scarr.
" Interne Tabelle zeilenweise durchlaufen und eine Zeile der Feldreferenz
" zuordnen. Diese Feldreferenz bearbeiten.
LOOP AT gt_scarr ASSIGNING <gt_table>.
<gt_table>-url = <gt_table>-url && '/subpage/'.
ENDLOOP.
" ALV-Control als Referenzvariable definieren
DATA: gr_alv TYPE REF TO cl_salv_table.
" ALV-Control erstellen und ausgeben
cl_salv_table=>factory(
IMPORTING
r_salv_table = gr_alv
CHANGING
t_table = gt_scarr ).
gr_alv->display( ).