‎2007 Apr 27 11:21 AM
Dear Friends,
I have two blocks in my selection-screen. I have to control the display of the second block on the basis of a check-box present in my first block i.e. only if the user clicks the check-box, the second block should appear on the selection screen, otherwise not.
Pls advice how to achieve this with the help of an example code.
Regards,
Alok.
‎2007 Apr 27 11:24 AM
hi check this code
this code actually removes the block data when check box is checked and shows the block on deselecting it.U can change the chk box condition according to ur requirement.
SELECTION-SCREEN BEGIN OF BLOCK FPATH .
SELECTION-SCREEN : BEGIN OF LINE .
PARAMETERS : p_EU AS CHECKBOX USER-COMMAND CHK MODIF ID BL1.
SELECTION-SCREEN : COMMENT 4(15) TEXT-106 FOR FIELD P_EU.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN : BEGIN OF LINE.
PARAMETERS : P_LOCL AS CHECKBOX MODIF ID BL1.
SELECTION-SCREEN : COMMENT 4(15) TEXT-002 FOR FIELD P_LOCL.
SELECTION-SCREEN POSITION 33.
PARAMETER: P_FILE1 LIKE RLGRAP-FILENAME MODIF ID BL1.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN : BEGIN OF LINE .
PARAMETERS: P_APPL AS CHECKBOX DEFAULT 'X' MODIF ID BL1.
SELECTION-SCREEN : COMMENT 4(13) TEXT-003 FOR FIELD P_APPL.
SELECTION-SCREEN POSITION 33.
PARAMETER: FNAM2 LIKE RLGRAP-FILENAME MODIF ID BL1.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN END OF BLOCK FPATH.
SELECTION-SCREEN BEGIN OF BLOCK FPATH1 .
SELECTION-SCREEN : BEGIN OF LINE .
PARAMETERS : p_APAC AS CHECKBOX MODIF ID BL2 USER-COMMAND CH.
SELECTION-SCREEN : COMMENT 4(15) TEXT-105 FOR FIELD P_APAC.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN : BEGIN OF LINE.
PARAMETERS : P_LOCL1 AS CHECKBOX MODIF ID BL2.
SELECTION-SCREEN : COMMENT 4(15) TEXT-102 FOR FIELD P_LOCL1.
SELECTION-SCREEN POSITION 33.
PARAMETER: P_FILE11 LIKE RLGRAP-FILENAME MODIF ID BL2.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN : BEGIN OF LINE .
PARAMETERS: P_APPL1 AS CHECKBOX DEFAULT 'X' MODIF ID BL2.
SELECTION-SCREEN : COMMENT 4(13) TEXT-103 FOR FIELD P_APPL1.
SELECTION-SCREEN POSITION 33.
PARAMETER: FNAM21 LIKE RLGRAP-FILENAME MODIF ID BL2.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN END OF BLOCK FPATH1.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF P_EU = 'X' AND SCREEN-GROUP1 = 'BL2'.
SCREEN-ACTIVE = 0.
ENDIF.
IF P_APAC = 'X' AND SCREEN-GROUP1 = 'BL1'.
SCREEN-ACTIVE = 0.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Message was edited by:
Premalatha G
‎2007 Apr 27 11:24 AM
hi check this code
this code actually removes the block data when check box is checked and shows the block on deselecting it.U can change the chk box condition according to ur requirement.
SELECTION-SCREEN BEGIN OF BLOCK FPATH .
SELECTION-SCREEN : BEGIN OF LINE .
PARAMETERS : p_EU AS CHECKBOX USER-COMMAND CHK MODIF ID BL1.
SELECTION-SCREEN : COMMENT 4(15) TEXT-106 FOR FIELD P_EU.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN : BEGIN OF LINE.
PARAMETERS : P_LOCL AS CHECKBOX MODIF ID BL1.
SELECTION-SCREEN : COMMENT 4(15) TEXT-002 FOR FIELD P_LOCL.
SELECTION-SCREEN POSITION 33.
PARAMETER: P_FILE1 LIKE RLGRAP-FILENAME MODIF ID BL1.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN : BEGIN OF LINE .
PARAMETERS: P_APPL AS CHECKBOX DEFAULT 'X' MODIF ID BL1.
SELECTION-SCREEN : COMMENT 4(13) TEXT-003 FOR FIELD P_APPL.
SELECTION-SCREEN POSITION 33.
PARAMETER: FNAM2 LIKE RLGRAP-FILENAME MODIF ID BL1.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN END OF BLOCK FPATH.
SELECTION-SCREEN BEGIN OF BLOCK FPATH1 .
SELECTION-SCREEN : BEGIN OF LINE .
PARAMETERS : p_APAC AS CHECKBOX MODIF ID BL2 USER-COMMAND CH.
SELECTION-SCREEN : COMMENT 4(15) TEXT-105 FOR FIELD P_APAC.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN : BEGIN OF LINE.
PARAMETERS : P_LOCL1 AS CHECKBOX MODIF ID BL2.
SELECTION-SCREEN : COMMENT 4(15) TEXT-102 FOR FIELD P_LOCL1.
SELECTION-SCREEN POSITION 33.
PARAMETER: P_FILE11 LIKE RLGRAP-FILENAME MODIF ID BL2.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN : BEGIN OF LINE .
PARAMETERS: P_APPL1 AS CHECKBOX DEFAULT 'X' MODIF ID BL2.
SELECTION-SCREEN : COMMENT 4(13) TEXT-103 FOR FIELD P_APPL1.
SELECTION-SCREEN POSITION 33.
PARAMETER: FNAM21 LIKE RLGRAP-FILENAME MODIF ID BL2.
SELECTION-SCREEN : END OF LINE .
SELECTION-SCREEN END OF BLOCK FPATH1.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF P_EU = 'X' AND SCREEN-GROUP1 = 'BL2'.
SCREEN-ACTIVE = 0.
ENDIF.
IF P_APAC = 'X' AND SCREEN-GROUP1 = 'BL1'.
SCREEN-ACTIVE = 0.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Message was edited by:
Premalatha G
‎2007 Apr 27 11:26 AM
Hi,
Use the Function Module DYNP_VALUES_READ to read the value of checkbox present on the screen.
Then use the code below :
AT SELECTION-SCREEN OUTPUT
IF C1 = 'X'.
LOOP AT SCREEN.
IF SCREEN-NAME = 'B1'.
SCREEN-INVISIBLE = 1.
SCREEN-INPUT = 0.
SCREEN-OUTPUT = 0.
MODIFY SCREEN.
ENDIF.
Also use the same code for other fields in the block.
ENDLOOP.
Hope it helps.
Regards,
Himanshu
‎2007 Apr 27 11:27 AM
Hi Alok
Just make use of this code
It will give you the required output.
PARAMETERS: P_CK AS CHECKBOX USER-COMMAND CHK,
P1(10) MODIF ID AAA.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
CASE SCREEN-GROUP1.
WHEN 'AAA'.
IF P_CK <> 'X'.
SCREEN-input = 0.
else.
SCREEN-input = 1.
ENDIF.
ENDCASE.
modify screen.
ENDLOOP.
Regards Rk