*&---------------------------------------------------------------------*
*& Report Z_SELSCREEN_DEMO
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
REPORT Z_SALAH_SEL.
DATA GT_01 TYPE STANDARD TABLE OF EKKO.
DATA GV_STR TYPE STRING.
TYPES:BEGIN OF TYP_MONAT,
MONAT TYPE ZDATA_E_N,
END OF TYP_MONAT.
DATA GT_MONAT TYPE STANDARD TABLE OF TYP_MONAT.
DATA GS_MONAT TYPE TYP_MONAT.
**********************************************************************
*选择屏幕
**********************************************************************
"PARAMETERS P_MATNR TYPE CHAR18 MATCHCODE OBJECT ZHELP_DEMO. "搜索帮助
PARAMETERS P_GJAHR(4) TYPE N MODIF ID YEA.
PARAMETERS P_MONAT(2) TYPE N MODIF ID MON.
PARAMETERS P_AEDAT TYPE EKKO-AEDAT MODIF ID DAT.
SELECTION-SCREEN BEGIN OF BLOCK BL_01 WITH FRAME TITLE TEXT-000.
PARAMETERS RADI1 RADIOBUTTON GROUP G1 USER-COMMAND UC01 DEFAULT 'X'.
PARAMETERS RADI2 RADIOBUTTON GROUP G1.
PARAMETERS RADI3 RADIOBUTTON GROUP G1.
SELECTION-SCREEN END OF BLOCK BL_01.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_MONAT.
PERFORM FRM_SET_VALUE.
AT SELECTION-SCREEN OUTPUT.
CASE abap_true.
WHEN radi1.
LOOP AT SCREEN.
IF screen-group1 = 'MON' OR screen-group1 = 'DAT'.
screen-active = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
WHEN radi2.
LOOP AT SCREEN.
IF screen-group1 = 'DAT'.
screen-active = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
WHEN radi3.
LOOP AT SCREEN.
IF screen-group1 = 'MON' OR screen-group1 = 'YEA'.
screen-active = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDCASE.
START-OF-SELECTION.
CASE ABAP_TRUE.
WHEN RADI1. "年
IF P_GJAHR IS INITIAL.
MESSAGE '请输入' TYPE 'I'.
EXIT.
ENDIF.
WHEN RADI2. "月
IF P_GJAHR IS INITIAL OR P_MONAT IS INITIAL.
MESSAGE '请输入' TYPE 'I'.
EXIT.
ENDIF.
WHEN RADI3. "日期
IF P_AEDAT IS INITIAL.
MESSAGE '请输入' TYPE 'I'.
EXIT.
ENDIF.
ENDCASE.
CASE ABAP_TRUE