TABLES : Z001T,RLGRAP.
*----选择屏幕
TABLES:SSCRFIELDS.
*选择屏幕一
SELECTION-SCREEN BEGIN OF BLOCK A1 WITH FRAME TITLE TEXT-100.
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETERS: RB_1 RADIOBUTTON GROUP GP1 USER-COMMAND SELE DEFAULT 'X' , "数据查询
RB_2 RADIOBUTTON GROUP GP1. "SINGLECLICK. "数据导入
SELECTION-SCREEN END OF BLOCK B1.
*查询界面
SELECTION-SCREEN BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
PARAMETERS : P_BUKRS TYPE Z001T-BUKRS MODIF ID AA .
SELECT-OPTIONS: S_YMONAT FOR Z001T-BUTXT MODIF ID AA ,
S_SAPXM FOR Z001T-SAPXM MODIF ID AA,
S_CRMXM FOR Z001T-CRMXM MODIF ID AA.
SELECTION-SCREEN END OF BLOCK B2.
*数据导入界面
SELECTION-SCREEN BEGIN OF BLOCK B3 WITH FRAME TITLE TEXT-003.
PARAMETERS: P_FPATH TYPE RLGRAP-FILENAME MODIF ID BB..
SELECTION-SCREEN END OF BLOCK B3.
SELECTION-SCREEN FUNCTION KEY 1. "激活工具栏按钮 按钮最多增加5个 KEY 1-5
SELECTION-SCREEN END OF BLOCK A1.
*选择屏幕二
SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN. "定义子屏幕100
*查询界面
SELECTION-SCREEN BEGIN OF BLOCK B5 WITH FRAME TITLE TEXT-005.
PARAMETERS : P_BUKRS1 TYPE Z001T-BUKRS MODIF ID CC .
SELECT-OPTIONS: S_YMONA1 FOR Z001T-BUTXT MODIF ID CC ,
S_SAPXM1 FOR Z001T-SAPXM MODIF ID CC,
S_CRMXM1 FOR Z001T-CRMXM MODIF ID CC.
SELECTION-SCREEN END OF BLOCK B5.
SELECTION-SCREEN END OF SCREEN 100.
SELECTION-SCREEN BEGIN OF SCREEN 200 AS SUBSCREEN. "定义子屏幕200
*数据导入界面
SELECTION-SCREEN BEGIN OF BLOCK B6 WITH FRAME TITLE TEXT-006.
PARAMETERS: P_FPATH1 TYPE RLGRAP-FILENAME MODIF ID DD.
SELECTION-SCREEN END OF BLOCK B6.
SELECTION-SCREEN END OF SCREEN 200. "定义子屏幕200
*定义一个TAB空间,取名为MYTAB,空间高度为15,共分为两个页签,BUTTON1,BUTTON2。
*两个页签的功能代码分别为PU1,PU2
SELECTION-SCREEN : BEGIN OF TABBED BLOCK MYTAB FOR 15 LINES,
TAB (20) BUTTON1 USER-COMMAND PU1,
TAB (20) BUTTON2 USER-COMMAND PU2,
END OF BLOCK MYTAB.
INITIALIZATION.
SSCRFIELDS-FUNCTXT_01 = '模板下载'. "工具栏按钮文本
*为TAB控件分配初始值
BUTTON1 = '数据查询'.
BUTTON2 = '数据导入'.
MYTAB-PROG = SY-REPID.
MYTAB-DYNNR = 100.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_FPATH. "从PC选择文件 路径搜索帮助
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ''
IMPORTING
FILE_NAME = P_FPATH.
AT SELECTION-SCREEN.
CASE SSCRFIELDS-UCOMM .
WHEN 'FC01'. "工具栏按钮FC01-FC05
PERFORM FRM_EXCEL_DOWN.
ENDCASE.
*页签事件
CASE SY-UCOMM.
WHEN 'PU1'.
MYTAB-DYNNR = 100.
MYTAB-ACTIVETAB = BUTTON1.
WHEN 'PU2'.
MYTAB-DYNNR = 200.
MYTAB-ACTIVETAB = BUTTON2.
ENDCASE.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
CASE SCREEN-GROUP1.
WHEN 'AA'.
CLEAR P_FPATH.
IF RB_1 = 'X'. "查询
SCREEN-ACTIVE = '1'.
ELSE.
SCREEN-ACTIVE = '0'.
ENDIF.
WHEN 'BB'.
CLEAR : P_BUKRS, S_YMONAT[], S_SAPXM[],S_CRMXM[].
IF RB_2 = 'X'. "数据导入
SCREEN-ACTIVE = '1'.
ELSE.
SCREEN-ACTIVE = '0'.
ENDIF.
IF SCREEN-NAME = 'P_BUKRS' OR SCREEN-NAME = 'S_YMONAT'.
SCREEN-REQUIRED = '2'.
ENDIF.
ENDCASE.
MODIFY SCREEN.
ENDLOOP.