TABLES:mara.
DATA:lt_mara TYPE TABLE OF mara WITH HEADER LINE.
SELECTION-SCREEN BEGIN OF SCREEN 100 as SUBSCREEN.
SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:mat1 FOR mara-matnr .
SELECTION-SCREEN SKIP 1.
PARAMETERS:chk1 AS CHECKBOX .
SELECTION-SCREEN END OF BLOCK a1.
SELECTION-SCREEN END OF SCREEN 100.
SELECTION-SCREEN BEGIN OF SCREEN 200 as SUBSCREEN.
PARAMETERS:mat2 LIKE mara-matnr.
SELECTION-SCREEN END OF SCREEN 200.
SELECTION-SCREEN:BEGIN OF TABBED BLOCK mytab for 5 lines,
tab (20) button1 USER-COMMAND push1,
tab (20) button2 USER-COMMAND push2,
END OF BLOCK mytab.
INITIALIZATION.
button1 = text-010.
button2 = text-020.
mytab-prog = sy-repid.
mytab-dynnr = 100.
AT SELECTION-SCREEN.
CASE sy-ucomm.
WHEN 'PUSH1'.
mytab-dynnr = 100.
mytab-activetab = 'BUTTON1'.
WHEN 'PUSH2'.
mytab-dynnr = 200.
mytab-activetab = 'BUTTON2'.
ENDCASE.
START-OF-SELECTION.
IF mytab-dynnr = 100.
IF chk1 eq 'X'.
PERFORM select_data.
PERFORM show_alv.
ENDIF.
ENDIF.
*&---------------------------------------------------------------------*
*& Form SELECT_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM SELECT_DATA .
SELECT *
FROM mara
INto CORRESPONDING FIELDS OF TABLE lt_mara.
ENDFORM. " SELECT_DATA
*&---------------------------------------------------------------------*
*& Form SHOW_ALV
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM SHOW_ALV .
LOOP AT lt_mara.
WRITE:/ lt_mara-matnr.
ENDLOOP.
ENDFORM. " SHOW_ALV
DATA:lt_mara TYPE TABLE OF mara WITH HEADER LINE.
SELECTION-SCREEN BEGIN OF SCREEN 100 as SUBSCREEN.
SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
SELECT-OPTIONS:mat1 FOR mara-matnr .
SELECTION-SCREEN SKIP 1.
PARAMETERS:chk1 AS CHECKBOX .
SELECTION-SCREEN END OF BLOCK a1.
SELECTION-SCREEN END OF SCREEN 100.
SELECTION-SCREEN BEGIN OF SCREEN 200 as SUBSCREEN.
PARAMETERS:mat2 LIKE mara-matnr.
SELECTION-SCREEN END OF SCREEN 200.
SELECTION-SCREEN:BEGIN OF TABBED BLOCK mytab for 5 lines,
tab (20) button1 USER-COMMAND push1,
tab (20) button2 USER-COMMAND push2,
END OF BLOCK mytab.
INITIALIZATION.
button1 = text-010.
button2 = text-020.
mytab-prog = sy-repid.
mytab-dynnr = 100.
AT SELECTION-SCREEN.
CASE sy-ucomm.
WHEN 'PUSH1'.
mytab-dynnr = 100.
mytab-activetab = 'BUTTON1'.
WHEN 'PUSH2'.
mytab-dynnr = 200.
mytab-activetab = 'BUTTON2'.
ENDCASE.
START-OF-SELECTION.
IF mytab-dynnr = 100.
IF chk1 eq 'X'.
PERFORM select_data.
PERFORM show_alv.
ENDIF.
ENDIF.
*&---------------------------------------------------------------------*
*& Form SELECT_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM SELECT_DATA .
SELECT *
FROM mara
INto CORRESPONDING FIELDS OF TABLE lt_mara.
ENDFORM. " SELECT_DATA
*&---------------------------------------------------------------------*
*& Form SHOW_ALV
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM SHOW_ALV .
LOOP AT lt_mara.
WRITE:/ lt_mara-matnr.
ENDLOOP.
ENDFORM. " SHOW_ALV
983

被折叠的 条评论
为什么被折叠?



