Anfang des InhaltsbereichsDefinition eines TabStrips im Screen Painter  Dokument im Navigationsbaum lokalisieren

Folgende Schritte sind notwendig, um ein einfaches TabStrip zu erzeugen.

  1. TabStrip-Bereich festlegen
  2. Tab-Reiter definieren
  3. Subscreenbereich definieren und zuweisen
  4. Ablauflogik programmieren

TabStrip-Bereich festlegen

Sie definieren einen TabStrip-Bereich, indem Sie:

  1. Aus der Werkzeugpalette des Screen Painters die TabStrip-Ikone wählen
  2. Den Bereich durch Ziehen mit der Maus auf dem Dynpro bestimmen
  3. Einen Feldnamen für das neue Element angeben

Der Feldname ist der Bereichsname, der in der Control-Anweisung im ABAP anzugeben ist (s.u. Definition im ABAP).

Tab-Reiter definieren

Das neu definierte TabStrip ist im Standard mit zwei Reitern vorbelegt. Tab-Reiter sind aus technischer Sicht genau wie Drucktasten zu behandeln. Dies wird nach einem Doppelklick auf einen Tab-Reiter im Attributefenster deutlich. Für jeden Reiter bestimmen Sie einen Feldnamen, einen Feldtext, und einen Funktionscode.

Tab-Reiter können auch als Schablone definiert und zur Laufzeit mit Text versorgt werden.

Zusätzliche Tab-Reiter werden erzeugt, indem Drucktasten in die Tab-Reiterzeile gezogen werden.

Subscreenbereich zuweisen

Jedem Tab-Reiter wird ein Subscreenbereich zugewiesen. Hierbei gibt es unterschiedliche Vorgehensweisen, die im Abschnitt Blättern im TabStrip näher erläutert wurden.

Prinzipiell ist wie folgt vorzugehen:

Manuell kann die Zuweisung auch über das sogenannte Referenzfeld im Attributefenster oder der Feldliste erfolgen, indem dort der Name des Subscreenbereiches eingetragen wird.

Hinweis

Weitere Informationen zur Einrichtung eines TabStrips im alphanumerischen Screen Painter finden Sie unter Strukturlink TabStrips anlegen.

Definition im ABAP

Im Modulpool wird das TabStrip analog zum TableControl mit der CONTROLS Anweisung deklariert.

CONTROLS: MYTABSTRIP TYPE TABSTRIP .

Hierbei ist MYTABSTRIP der Feldname im Screen Painter für das TabStrip. Zur Laufzeit steht im Moment nur das Attribut ACTIVETAB zur Verfügung, welches die gerade aktive TabStrip-Seite bestimmt und mit dem der Funktionscode des dazugehörenden Tab-Reiters versehen wird.

Die Anweisung MYTABSTRIP-ACTIVETAB = 'F1'. bewirkt, daß der Tab-Reiter mit dem Funktionscode F1 zum aktiven Reiter wird.

Hinweis

Das TabStrip-Contol ist in das Dynprokonzept integriert, sodaß TabStrips auch bei Abläufen im Batch-Input kein Problem darstellen.

Ablauflogik programmieren

Entsprechend der oben dargestellten Möglichkeiten, entweder lokal im GUI oder über den Applikationsserver zu blättern, ergeben sich verschiedene Arten der Programmierung.

Blättern auf dem Applikationsserver

Beispiel

data: dynpronr(4) type c,
      modul(30) type c value ‘Programmname’,
      ok_code like SY-UCOMM
   ....

controls: tabstrip1 type tabstrip.
...

 

Ablauflogik:

PROCESS BEFORE OUTPUT.
  Module setpage.
  Module modifyscreen.
  CALL SCUBSCREEN sub1 INCLUDING modul dynpronr.
...

PROCESS AFTER INPUT.
  CALL SUBSCREEN SUB1.
  Module fcode.
...

*-------------------------------------------*

Module setpage output.
  if dynpronr is initial.
    dynpronr = ‘0200’.
    tabstrip1-activetab = ‘TAB1’.
  endif.
endmodule.

*-------------------------------------------*

Module modifyscreen output.
  LOOP AT SCREEN.
   ...
    MODIFY SCREEN.
  ENDLOOP.

*-------------------------------------------*

Module fcode.
  case ok_code.
    when ‘TAB1’.
      dynpronr = ‘0200’.
      tabstrip1-activetab = ok_code.
      clear ok-code.
    when ‘TAB2’.
      dynpronr = ‘0300’.
      tabstrip1-activetab = ok_code.
 ....

Blättern im SAPGUI

Beispiel

Ablauflogik:

PROCESS BFORE OUTPUT.

  CALL SUBSCREEN sub1 INCLUDING ‘modul1’ ‘0100’.
  CALL SUBSCREEN sub2 INCLUDING ‘modul2’ ‘0101’.
  CALL SUBSCREEN sub3 INCLUDING ‘modul3’ ‘0102’.
...

PROCESS AFTER INPUT.

  CALL SUBSCREEN sub1.
  CALL SUBSCREEN sub2.
  CALL SUBSCREEN sub3.
...

Hinweis

Weiterführende Informationen zur Programmierung von TabStrips finden Sie im ABAP Benutzerhandbuch unter Strukturlink TabStrips.

 

Ende des Inhaltsbereichs