选择屏幕(SELECTION-SCREEN)中SUBSCREEN如何使用的例子。
[@more@]REPORT ZSUBSCREEN.
*----------------------------------------------------------------------*
* PARAMETERS
*----------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK BLK1 WITH FRAME TITLE T_001.
PARAMETERS:
P_MATNR LIKE MARD-MATNR. "品目コード
SELECTION-SCREEN END OF BLOCK BLK1.
SELECTION-SCREEN BEGIN OF SCREEN 9001 AS SUBSCREEN.
PARAMETERS:
P_WERKS LIKE MARD-WERKS. "プラント
SELECTION-SCREEN END OF SCREEN 9001.
SELECTION-SCREEN BEGIN OF SCREEN 9002 AS SUBSCREEN.
PARAMETERS:
P_LGORT LIKE MARD-LGORT. "保管場所
SELECTION-SCREEN END OF SCREEN 9002.
SELECTION-SCREEN BEGIN OF TABBED BLOCK TABSCR FOR 10 LINES.
SELECTION-SCREEN TAB (20) TAB01 USER-COMMAND PUSH1.
SELECTION-SCREEN TAB (20) TAB02 USER-COMMAND PUSH2.
SELECTION-SCREEN END OF BLOCK TABSCR.
*----------------------------------------------------------------------*
* INITIALIZATION
*----------------------------------------------------------------------*
INITIALIZATION.
TAB01 = '抽出条件(ヘッダ)'.
TAB02 = '抽出条件(明細)'.
TABSCR-PROG = SY-REPID.
TABSCR-DYNNR = 9001.
TABSCR-ACTIVETAB = 'PUSH1'.
T_001 = '品目'.
%_P_MATNR_%_APP_%-TEXT = '品目コード'.
*----------------------------------------------------------------------*
* AT SELECTION-SCREEN
*----------------------------------------------------------------------*
AT SELECTION-SCREEN.
CHECK SY-DYNNR = '1000'.
CASE SY-UCOMM.
WHEN 'PUSH1'.
TABSCR-DYNNR = 9001.
WHEN 'PUSH2'.
TABSCR-DYNNR = 9002.
ENDCASE.
*----------------------------------------------------------------------*
* AT SELECTION-SCREEN OUTPUT
*----------------------------------------------------------------------*
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
* 従属画面テキスト名セット
PERFORM SET_SCREEN_TEXTNM USING SCREEN.
MODIFY SCREEN.
ENDLOOP.
*----------------------------------------------------------------------*
* START-OF-SELECTION
*----------------------------------------------------------------------*
START-OF-SELECTION.
WRITE: 05 P_MATNR,
30 P_WERKS,
40 P_LGORT.
*&---------------------------------------------------------------------*
*& FORM SET_SCREEN_TEXTNM
*&---------------------------------------------------------------------*
* 従属画面テキスト名セット
*----------------------------------------------------------------------*
FORM SET_SCREEN_TEXTNM USING U_SCREEN STRUCTURE SCREEN.
* ヘッダ項目
IF SY-DYNNR = '9001'.
IF U_SCREEN-NAME CS '%_P_WERKS_%_APP_%'.
%_P_WERKS_%_APP_%-TEXT = 'プラント'.
ENDIF.
ENDIF.
* 明細項目
IF SY-DYNNR = '9002'.
IF U_SCREEN-NAME CS '%_P_LGORT_%_APP_%'.
%_P_LGORT_%_APP_%-TEXT = '保管場所'.
ENDIF.
ENDIF.
ENDFORM. " SET_SCREEN_TEXTNM
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8214011/viewspace-910894/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/8214011/viewspace-910894/