Invisible Ranges in the selection screen:
REPORT zmae_radio.
TABLES : eket,
rkpln,
prps,
eban,
ekpo,
proj.
SELECTION-SCREEN BEGIN OF BLOCK b001 WITH FRAME TITLE text-001.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS prd_psp RADIOBUTTON GROUP grp1 DEFAULT 'X' USER-COMMAND uc1.
SELECTION-SCREEN COMMENT 3(28) text-039.
SELECTION-SCREEN POSITION 30.
SELECT-OPTIONS s_pspid FOR proj-pspid NO INTERVALS MODIF ID sg5.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS prd_wbg RADIOBUTTON GROUP grp1.
SELECTION-SCREEN COMMENT 3(28) text-040.
SELECTION-SCREEN POSITION 30.
SELECT-OPTIONS s_wbsgr FOR rkpln-posidgr NO INTERVALS MODIF ID sg6.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS prd_wbs RADIOBUTTON GROUP grp1." DEFAULT 'X'USER-COMMAND uc1.
SELECTION-SCREEN COMMENT 3(27) text-002.
SELECTION-SCREEN POSITION 30.
SELECT-OPTIONS s_wbs FOR prps-posid NO INTERVALS MODIF ID sg1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 3(27) text-004.
SELECTION-SCREEN POSITION 33.
PARAMETERS p_hier AS CHECKBOX.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS prd_preq RADIOBUTTON GROUP grp1 .
SELECTION-SCREEN COMMENT 3(27) text-003.
SELECTION-SCREEN POSITION 30.
SELECT-OPTIONS s_preq FOR eban-banfn NO INTERVALS MODIF ID sg2.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS prd_pord RADIOBUTTON GROUP grp1 .
SELECTION-SCREEN COMMENT 3(27) text-005.
SELECTION-SCREEN POSITION 30.
SELECT-OPTIONS s_pord FOR ekpo-ebeln NO INTERVALS MODIF ID sg3.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS prd_afnm RADIOBUTTON GROUP grp1 .
SELECTION-SCREEN COMMENT 3(27) text-036.
SELECTION-SCREEN POSITION 30.
SELECT-OPTIONS s_afnam FOR ekpo-afnam NO INTERVALS MODIF ID sg4.
SELECTION-SCREEN END OF LINE.
**Begin CR#3876
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS r_vernr RADIOBUTTON GROUP grp1 .
SELECTION-SCREEN COMMENT 3(27) text-048.
SELECTION-SCREEN POSITION 30.
SELECT-OPTIONS s_vernr FOR prps-vernr NO INTERVALS MODIF ID sg7.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS r_fkstl RADIOBUTTON GROUP grp1 .
SELECTION-SCREEN COMMENT 3(27) text-049.
SELECTION-SCREEN POSITION 30.
SELECT-OPTIONS s_fkstl FOR prps-fkstl NO INTERVALS MODIF ID sg8.
SELECTION-SCREEN END OF LINE.
**End CR#3876
SELECTION-SCREEN END OF BLOCK b001.
SELECTION-SCREEN BEGIN OF BLOCK b002 WITH FRAME.
SELECT-OPTIONS : s_knttp FOR ekpo-knttp,
s_ddate FOR eket-eindt.
PARAMETERS : p_open AS CHECKBOX.
SELECTION-SCREEN END OF BLOCK b002.
***********************************************************************
* SELECTION SCREEEN EVENTS
************************************************************************
*At selection screen output---------------------------------------------
AT SELECTION-SCREEN OUTPUT.
SET CURSOR FIELD 'S_PSPID-LOW'.
PERFORM modify_screen. "To modify screen according to radio buttons
*&---------------------------------------------------------------------*
*& Form modify_screen
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
FORM modify_screen.
IF prd_psp = 'X'.
PERFORM disable_screen USING 'SG5'.
REFRESH: s_preq,
s_pord,
s_afnam,
s_wbsgr,
s_wbs.
CLEAR p_hier.
ELSEIF prd_wbg = 'X'.
PERFORM disable_screen USING 'SG6'.
REFRESH: s_preq,
s_pord,
s_afnam,
s_wbs,
s_pspid.
CLEAR p_hier.
ELSEIF prd_wbs = 'X'.
PERFORM disable_screen USING 'SG1'.
REFRESH: s_preq,
s_pord,
s_afnam,
s_pspid,
s_wbsgr.
ELSEIF prd_preq = 'X'.
PERFORM disable_screen USING 'SG2'.
REFRESH: s_wbs,
s_pord,
s_afnam.
CLEAR p_hier.
ELSEIF prd_pord = 'X'.
PERFORM disable_screen USING 'SG3'.
REFRESH: s_wbs,
s_preq,
s_afnam,
s_pspid,
s_wbsgr.
CLEAR p_hier.
ELSEIF prd_afnm = 'X'.
PERFORM disable_screen USING 'SG4'.
REFRESH: s_wbs,
s_preq,
s_pord,
s_pspid,
s_wbsgr.
CLEAR p_hier.
**Begin CR#3876
ELSEIF r_vernr = 'X'.
PERFORM disable_screen USING 'SG7'.
REFRESH: s_wbs,
s_preq,
s_pord,
s_pspid,
s_wbsgr.
ELSE.
PERFORM disable_screen USING 'SG8'.
REFRESH: s_wbs,
s_preq,
s_pord,
s_pspid,
s_wbsgr.
CLEAR p_hier.
**End CR#3876
ENDIF.
ENDFORM. " modify_screen
*&---------------------------------------------------------------------*
*& Form DISABLE_SCREEN
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* -->P_0354 text
*----------------------------------------------------------------------*
FORM disable_screen USING value(p_group).
LOOP AT SCREEN.
IF screen-group1 NE p_group AND
NOT screen-group1 IS INITIAL.
screen-input = 0.
screen-output = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDFORM. " DISABLE_SCREEN
No comments:
Post a Comment