SAP SELECTION-SCREEN TABBED ABAP Statements Get Example source ABAP code based on a different SAP table
ABAP Statement
• BEGIN OF TABBED BLOCK SELECTION-SCREEN
• END OF TABBED BLOCK SELECTION-SCREEN
• FOR LINES SELECTION-SCREEN
• TAB SELECTION-SCREEN
• MODIF ID SELECTION-SCREEN TAB
SELECTION-SCREEN>, TABBED BLOCK> Short Reference > ABAP_SYNTAX SELECTION-SCREEN BEGIN OF TABBED BLOCK tblock FOR n LINES $[NO INTERVALS$].> ...> $[SELECTION-SCREEN TAB (len) tab USER-COMMAND fcode> $[DEFAULT $[PROGRAM prog$] SCREEN dynnr$]> $[MODIF ID modid>$]> $[ ldb_additions>$].$]> ...> SELECTION-SCREEN END OF BLOCK tblock.> ABAP Addition 1 ... NO INTERVALS> 2 ... USER-COMMAND fcode> 3 ... DEFAULT $[PROGRAM prog$] SCREEN dynnr> What does it do? The first and last statements define a tabstrip> area with the name tblock> on the current selection screen>. The name tblock> must be specified directly and can contain a maximum of 16 characters. The number of lines in the tabstrip area is determined by a number n>, which must be specified directly and can contain a maximum of three characters but must not exceed 197. The current selection screen cannot be defined as a subscreen dynpro> using AS SUBSCREEN>>. Within the statements defining a tabstrip area, there can only be SELECTION-SCREEN> statements with a TAB> addition, and these can only be used here. These statements define tab titles> with the name tab> and a length of len>. The names tab> must be specified directly and can contain a maximum of 8 characters. The lengths len> must be specified directly as positive numbers with a maximum of two digits and a value of no more than 79. If the width of all tab titles is greater than the width of this area, a scroll bar is configured automatically so that all pages can be accessed. The system automatically creates an identically named global variable with type c> and with a length of 83 for each tab title. The content of the variables is displayed as the label for the tab title on the selection screen. The addition MODIF ID>> assigns the tab title to the modification group> modid>. The ldb_additions>> can only be used in the selection include of a logical database>. If no SELECTION-SCREEN> statement with the addition TAB> is included within the statements for the definition of a tab area, a tab area is defined without a tab title. This special case acts as the definition of a subscreen area> for the integration of a single subscreen dynpro> on the selection screen. The subscreen dynpro is assigned dynamically (see below). • NO INTERVALS SELECTION-SCREEN - TABBED BLOCK ABAP Addition What does it do? The tabstrip area is created narrow enough that a subscreen dynpro> created using the addition NO INTERVALS> of AS SUBSCREEN>> can fit in it. Latest notes: The addition NO INTERVALS> of TABBED BLOCK> has no effect on the selection criteria> of selection screens, which are integrated as subscreen dynpros in the tab area. ABAP_HINT_END • USER-COMMAND SELECTION-SCREEN TAB ABAP Addition What does it do? Each tab title must be assigned a function code fcode > using the addition USER-COMMAND>. The function codes fcode > must be specified directly and can contain a maximum of 20 characters. When the user selects a tab, the associated function code can be taken from the component ucomm> of the structure sscrfields> after the event AT SELECTION-SCREEN>>. For this purpose, this component must be declared as an interface work area > with reference to the structure SSCRFIELDS>> using the statement TABLES>>. Latest notes: If a function code used in the GUI status of the selection screen is specified for fcode>, the selection screen processing> is affected accordingly. It is not recommended that the system field sy-ucomm> instead of sscrfields-ucomm> is evaluated, since this does not guarantee that sy-ucomm> is always given the correct value in selection screen processing>. ABAP_HINT_END • DEFAULT SCREEN SELECTION-SCREEN TAB • DEFAULT PROGRAM SELECTION-SCREEN TAB ABAP Addition What does it do? Each tab title must be assigned a subscreen dynpro> whose screen layout> is displayed as a tab page when the tab title is selected. If this assignment is missing or incorrect when the selection screen is sent, an uncatchable exception is raised. Dynamic Assignment> For each tabstrip area, an identically named global structure is created in the current program. This structure has the following three components: prog> of type c> with length 40, dynnr> of type c > and length 4, and activetab> of type c> with length 132. If the addition DEFAULT> is not specified, the name of the ABAP program in which the required subscreen dynpro is defined, the number of the subscreen dynpro, and the function code of the tab title must be assigned to these components before the selection screen is sent. An assignment to the component activetab> at the event AT SELECTION-SCREEN>> is ignored. Instead, this is automatically overwritten with the function code of the selected tab title before the event AT SELECTION-SCREEN OUTPUT>> of the current selection screen. For a pure subscreen area, that is, a tabstrip area without a tab title, dynamic assignment must be used. Before the selection screen is sent, the program name must be assigned to the component prog> and the dynpro number of the subscreen dynpro must be assigned to the component dynnr> (for an example, see the program DEMO_SEL_SCREEN_WITH_SUBSCREEN>>). Static Assignment> If the addition DEFAULT> is specified, the tab title is assigned the subscreen dynpro for the number> dynnr> of the program prog>. The dynpro number and program must be specified directly. If the addition PROGRAM> is not specified, the subscreen dynpro is searched for in the current program. A subscreen dynpro that is assigned statically with DEFAULT> can also be overwritten dynamically. If the DEFAULT> addition is specified, it is possible to define that the screen element for a tab page is displayed when the selection screen is sent by assigning the name of the tab title to the component activetab>. The other components are filled with the values specified for DEFAULT> when the selection screen is sent. The first page is displayed as standard. Latest notes: If an assigned subscreen screen is not a selection screen, the dialog modules that are accessed during its flow logic must be defined in the current program. If an assigned subscreen dynpro is a selection screen, user actions on the subscreen> produce the event AT SELECTION-SCREEN>>. This includes the selection of a tab title. The event AT SELECTION-SCREEN> is executed first for the included subscreen in the selection screen and then for the including selection screen. ABAP_HINT_END Example ABAP Coding Defines a tabstrip control mytab> on the standard selection screen> and includes the selection screens 100> and 200>, which are defined as subscreen dynpros, in an executable program. The assignment of the subscreen screens to the tab titles takes place dynamically. For an example of a static assignment with the addition DEFAULT>, refer to SELECTION-SCREEN - AS SUBSCREEN>>. ABEXA 00581 ABAP_EXAMPLE_END Return to menu