
Create Tabs for Maintenance Dialogs
Use
You can use tabs with local pages to structure and organize large maintenance dialogs.
You can only use tabs in maintenance dialogs which are not affected by customizing. Tabs cannot be used for customizing maintenance dialogs.

Do not use local tabs if
In these cases, use an oversized screen, in which you can group related fields in boxes.
Prerequisites
Create Subscreens
Modify the Main Detail Screen
The main detail screen is the detail screen which contains the TabStrip. This main detail screen must have the screen number which is specified in SE54 for the detail screen. The key fields, and explanatory text fields for the key fields, remain in the main detail screen.
Flow logic
PBO
Insert an individual module after DETAIL_INIT, which does the following
No screen fields in the detail screen are ready for input in display and transport mode. You must make them ready for input again explicitly for tabs, in an individual module.
PAI
Modify Subscreens
Flow logic
PBO
Replace the module call of DETAIL_INIT by VIM_MODIF_DETAIL.
PAI
For views with read only fields to referred tables: The call of the module COMPLETE_<viewname> in this chain is only necessary in the tabs which contain read only fields to referred tables.
The complete SET_TXT_UPDATE_FLAG module chain command, including module call, can be deleted, if the subscreen contains no text table fields ready for input.
Delete the complete DETAIL_PAI module CHAIN command, including module call, because the tabs contain no key fields.
Declare data in the generated function group
Put a tab controls statement in the Top Include of the generated function group L<fu gr>TOP:
CONTROLS: xxxx TYPE TAPSTRIP.
where xxxx is the name of the tab as specified in the Screen Painter.
Flow logic examples
Enter appropriate values in the fields in angle brackets <...>.
Example main detail screen flow logic
process before output.
module detail_init.
module <set_tabstrip>. "individual module see 5.2
call subscreen <subscr1> including 'SAPL<fugr>' '<dnr1>'. "Tab page 1
call subscreen <subscr1> including 'SAPL<fugr>' '<dnr1>'. "Tab page 2
*
process after input.
module detail_exit_command at exit-command.
module detail_set_pfstatus.
call subscreen <subscr1>. "Tab page 1
call subscreen <subscr2>. "Tab page 2
chain.
* only show the fields which can be changed in this screen
field <tab/view>-<field1>.
field <tab/view>-<field2>.
...
module set_update_flag on chain-request.
endchain.
* only relevant in table+text table dialog
* only show the text table fields which can be changed in this screen
chain.
field <tab/view>-<field1>.
module set_txt_update_flag on chain-request.
endchain.
chain.
field <tab/view>-<key1>.
field <tab/view>-<key2>.
...
module detail_pai.
endchain.
Example implementation for the module SET_TABSTRIP
module set_tabstrip output.
* set appropriate tab page
if <my_tabstrip>-activetab is initial.
<my_tabstrip>-activetab = '<Fcode>'.
endif.
* No fields are ready for input in view maintenance
* display mode.
* --> make tabs ready for input
loop at screen.
if screen-name = '<tab1>' or screen-name = '<tab2>' or ... .
screen-active = 1.
screen-input = 1.
modify screen.
endif.
endloop.
endmodule. " SET_TABSTRIP OUTPUT
Example subscreen flow logic
process before output.
module vim_modif_detail. "TabStrip
*
process after input.
chain.
* only show the fields which can be changed in this screen
field <tab/view>-<field1>.
field <tab/view>-<field2>.
...
module set_update_flag on chain-request.
* only for view with read only fields in referred tabes
* if there are any in this screen
module complete_<viewname> on chain-request.
endchain.
* only relevant in table+text table dialog
* only show the text table fields which can be changed in this screen
chain.
field <tab/view>-<field1>.
module set_txt_update_flag on chain-request.
endchain.
Examples
The following examples of the use of tabs with local pages in the view maintenance detail screen are available in the system:
Function group: TVCL
Main detail screen: 0021
Tab detail screens: 0022, 0023
Function group: TVCL
Main detail screen: 0041
Tab detail screens: 0042, 0043