TabStrips auf dem Selektionsbild

Dieses Beispielprogramm zeigt die Verwendung von Tabellenreitern (Registerkarte/ TabReiter/ TabStrip) auf einem Report-Selektionsbild.

REPORT zzenno08 .
* Definition der einzelnen Masken *
SELECTION-SCREEN BEGIN OF SCREEN 1001 AS SUBSCREEN.
PARAMETERS: p_eins(10),
p_all AS CHECKBOX.
SELECT-OPTIONS: s_eins FOR sy-uname.
SELECTION-SCREEN END OF SCREEN 1001.

SELECTION-SCREEN BEGIN OF SCREEN 1002 AS SUBSCREEN.
PARAMETERS: p_zwei(3).
SELECTION-SCREEN INCLUDE PARAMETERS p_all.
SELECT-OPTIONS: s_zwei FOR sy-datum.
SELECTION-SCREEN END OF SCREEN 1002.

* Definition der TabStrip-Maske *
SELECTION-SCREEN:
BEGIN OF TABBED BLOCK abc FOR 5 LINES,
TAB (30) t_eins USER-COMMAND t_eins DEFAULT SCREEN 1001,
TAB (30) t_zwei USER-COMMAND t_zwei DEFAULT SCREEN 1002,
END OF BLOCK abc.

INITIALIZATION.
* Bezeichnung der Reiter *
  t_eins = ‚Eins‘.
t_zwei = ‚Zwei‘.

* Nach „Ausführen“ und Rücksprung wird wieder der
* erste Reiter aktiv. Um dies zu verhindern:
* merken des gedrückten Reiters in Start-of-Selection
* und bei Initialization wieder importieren:
  IMPORT abc FROM MEMORY ID ‚ABC_ACTIVE‘.

* TabStrip je nach User-Command setzen (Wird auch durch
* den Zusatz „DEFAULT SCREEN 1001“ erreicht).
AT SELECTION-SCREEN.
IF sy-ucomm = ‚T_EINS‘.
abc-prog      = sy-cprog.
abc-dynnr     = 1001.
abc-activetab = ‚T_EINS‘.
ENDIF.

START-OF-SELECTION.
* Zuletzt aktiven Reiter merken:
  EXPORT abc TO MEMORY ID ‚ABC_ACTIVE‘.

  WRITE: / ‚Aktiver Reiter:‘, abc-activetab.

Und so sieht’s aus:


Die beiden Tabellenreiter „Eins“ und „Zwei“
image_pdfimage_print