Da die Datenbanktabelle auf die ich Bezug nehme auch erst zur Laufzeit angegeben wird ist das nicht so einfach.Wenn Du eine interne Tabelle analog der Datenbanktabelle definierst...
Code: Alles auswählen.
TYPE-POOLS: slis.
DATA int_fcat TYPE slis_t_fieldcat_alv.
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = tabellenname
CHANGING
ct_fieldcat = int_fcat
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3.
CALL METHOD cl_alv_table_create=>create_dynamic_table
EXPORTING
it_fieldcatalog = int_fcat
IMPORTING
ep_table = it_tab1
Code: Alles auswählen.
SELECT * FROM (wa_tabellenname) INTO <wa_tab1>.
APPEND <wa_tab1> TO <it_tab1>.
ENDSELECT.
Code: Alles auswählen.
DATA wa_tab1 TYPE REF TO data.
FIELD-SYMBOLS: <wa_tab1> TYPE ANY.
CREATE DATA wa_tab1 TYPE (wa_tabellenname).
ASSIGN wa_tab1->* TO <wa_tab1>.
Code: Alles auswählen.
FIELD-SYMBOLS: <wa_tab1> TYPE ANY
Code: Alles auswählen.
ASSIGN COMPONENT wa_zuordnung-komponente
OF STRUCTURE <wa_tab1> TO <komponente>.