Code: Alles auswählen.
DATA: BEGIN OF s_but OCCURS 0,
field1(10) TYPE c,
field2(20) TYPE c,
field3(20) TYPE c,
END OF s_but.
DATA: itab_but LIKE TABLE OF s_but,
wa_but LIKE LINE OF itab_but.
START-OF-SELECTION.
*$*$---Staustext lesen...
PERFORM STATUS_TEXT_LESEN
USING SY-TITLE.
PERFORM _FIELDCAT_INIT
USING ALV_FIELDCAT[].
*$*$ Selektion individuell Daten......
PERFORM DATEN_SELEKTIEREN.
*$*$---Einträge prüfen...
PERFORM CHECK_ENTRIES
TABLES itab_but.
END-OF-SELECTION.
*$*$---Daten per ALV-Verfahren ausgeben....
PERFORM DATEN_AUSGABE.
FORM _FIELDCAT_INIT
USING ALV_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
DATA: LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
CLEAR ls_fieldcat.
ls_fieldcat-ifieldname = 'Test'.
ls_fieldcat-fieldname = 'field1'.
ls_fieldcat-col_pos = 1.
ls_fieldcat-outputlen = 12.
ls_fieldcat-ref_tabname = 'itab_but'.
APPEND ls_fieldcat TO alv_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-ifieldname = 'Test'.
ls_fieldcat-fieldname = 'field2'.
ls_fieldcat-col_pos = 1.
ls_fieldcat-outputlen = 12.
ls_fieldcat-ref_tabname = 'itab_but'.
APPEND ls_fieldcat TO alv_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-ifieldname = 'Test'.
ls_fieldcat-fieldname = 'field3'.
ls_fieldcat-col_pos = 1.
ls_fieldcat-outputlen = 12.
ls_fieldcat-ref_tabname = 'itab_but'.
APPEND ls_fieldcat TO alv_fieldcat.
ENDFORM. " _FIELDCAT_INIT
FORM DATEN_SELEKTIEREN.
SELECT field1 field2 field3 FROM but INTO CORRESPONDING FIELDS OF wa_but.
INSERT wa_but INTO TABLE itab_but.
ENDSELECT.
ENDFORM.
FORM DATEN_AUSGABE.
DATA: s_variant TYPE disvariant.
s_variant-report = sy-repid.
G_REPID = SY-REPID.
*$*$---ALV-Grid aufrufen....
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_BACKGROUND_ID = 'ALV_BACKGROUND'
I_CALLBACK_PROGRAM = G_REPID
IS_LAYOUT = ALV_LAYOUT
IT_FIELDCAT = ALV_FIELDCAT[]
IT_SORT = GT_SORT[]
IT_EVENTS = ALV_EVENTS[]
i_save = 'U'
is_variant = s_variant
TABLES
T_OUTTAB = itab_but.
ENDFORM. " DATEN_AUSGABE
Code: Alles auswählen.
ls_fieldcat-ifieldname = 'Test'.
ls_fieldcat-fieldname = 'field1'. Code: Alles auswählen.