屏幕定义
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
*--200作为第二个子屏幕
SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN.
SELECTION-SCREEN SKIP.
PARAMETERS: tab1_01 TYPE c LENGTH 10,
tab1_02 TYPE c LENGTH 10.
SELECTION-SCREEN END OF SCREEN 100.
*--200作为第二个子屏幕
SELECTION-SCREEN BEGIN OF SCREEN 200 AS SUBSCREEN.
SELECTION-SCREEN SKIP.
PARAMETERS: tab2_01 TYPE c LENGTH 10,
tab2_02 TYPE c LENGTH 10.
SELECTION-SCREEN END OF SCREEN 200.
*--将子屏幕存放到页签mytab中,
*--随着页签的mytab的建立,系统自动创建一个名称为MYTAB的变量,用于控制页签的当前子屏幕
SELECTION-SCREEN: BEGIN OF TABBED BLOCK mytab FOR 5 LINES,
*--两个页签分别为button1 button2 并指定响应事件的功能码 push1 push2
TAB (20) button1 USER-COMMAND push1,
TAB (20) button2 USER-COMMAND push2,
END OF BLOCK mytab.
INITIALIZATION.
button1 = 'TAB1'.
button2 = 'TAB2'.
mytab-prog = sy-repid.
"初始化页签的当前显示页
mytab-dynnr = 100.
mytab-activetab = 'PUSH1'.
AT SELECTION-SCREEN.
"在选择屏幕中,单击页签时刷新屏幕
CASE sy-ucomm.
WHEN 'PUSH1'.
mytab-dynnr = 100.
WHEN 'PUSH2'.
mytab-dynnr = 200.
WHEN OTHERS.
...
ENDCASE.
START-OF-SELECTION.
WRITE mytab-dynnr.
TABLES: mara, marc.
DATA: BEGIN OF it_tab ,
matnr LIKE mara-matnr,
ernam LIKE mara-ernam,
ersda LIKE mara-ersda,
matkl LIKE mara-matkl,
werks LIKE marc-werks,
lgpro LIKE marc-lgpro,
END OF it_tab.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-s01.
SELECT-OPTIONS:
s_ersda FOR mara-ersda,
s_ernam FOR mara-ernam,
s_matnr FOR mara-matnr OBLIGATORY.
PARAMETERS:
p_werks TYPE marc-werks DEFAULT 1101.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN SKIP 1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE text-s01.
SELECT-OPTIONS:
s_lgpro FOR marc-lgpro NO-EXTENSION,
s_matkl FOR mara-matkl NO INTERVALS.
SELECTION-SCREEN END OF