10-19-2007 6:27 PM
Hi all,
I have 3 radiobuttons and 3 input fields.
if i have select the 1 radiobutton , the 1 first input only accept the value and other 2,3 input fields are grayed out .
if i have select 2 radio button , the 2 second input filed accept the value and other1 and 3 are grayed out respectively.
please give me the logic.
regards,
Aj
10-19-2007 6:43 PM
Hi,
Please check this sample code.
PARAMETERS: P_RAD1 RADIOBUTTON GROUP GRP1 DEFAULT 'X'
USER-COMMAND CHECK.
PARAMETERS: P_RAD2 RADIOBUTTON GROUP GRP1,
P_RAD3 RADIOBUTTON GROUP GRP1.
PARAMETERS: P_FIELD1 TYPE C,
P_FIELD2 TYPE C,
P_FIELD3 TYPE C.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF ( P_RAD1 = 'X' AND ( SCREEN-NAME = 'P_FIELD2' OR
SCREEN-NAME = 'P_FIELD3' ) )
OR ( P_RAD2 = 'X' AND ( SCREEN-NAME = 'P_FIELD1' OR
SCREEN-NAME = 'P_FIELD3' ) )
OR ( P_RAD3 = 'X' AND ( SCREEN-NAME = 'P_FIELD1' OR
SCREEN-NAME = 'P_FIELD2' ) ).
SCREEN-INPUT = '0'.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Regards,
Ferry Lianto
10-19-2007 6:31 PM
You can handle this in event AT SELECTION-SCREEN OUTPUT -
IF RB1 = 'X'
LOOP AT SCREEN
IF SCREEN-NAME = RB2 / RB3, change screen input property to o
endloop.
endif.
Similar code you can do for remaining radio buttons.
Hope this helps.
AT SELECTION-SCREEN OUTPUT.
if rad1 = 'X'.
LOOP AT SCREEN.
IF SCREEN-NAME = 'RAD2' or SCREEN-NAME = 'RAD3'.
SCREEN-INPUT = 0. "TO make it read only
SCREEN-ACTIVE = 0. " TO Hide based on your requirement use any one line
MODIFY SCREEN.
ENDIF.
ENDLOOP.
endif.
ashish
Message was edited by:
Ashish Gundawar
10-19-2007 6:43 PM
Hi,
Please check this sample code.
PARAMETERS: P_RAD1 RADIOBUTTON GROUP GRP1 DEFAULT 'X'
USER-COMMAND CHECK.
PARAMETERS: P_RAD2 RADIOBUTTON GROUP GRP1,
P_RAD3 RADIOBUTTON GROUP GRP1.
PARAMETERS: P_FIELD1 TYPE C,
P_FIELD2 TYPE C,
P_FIELD3 TYPE C.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF ( P_RAD1 = 'X' AND ( SCREEN-NAME = 'P_FIELD2' OR
SCREEN-NAME = 'P_FIELD3' ) )
OR ( P_RAD2 = 'X' AND ( SCREEN-NAME = 'P_FIELD1' OR
SCREEN-NAME = 'P_FIELD3' ) )
OR ( P_RAD3 = 'X' AND ( SCREEN-NAME = 'P_FIELD1' OR
SCREEN-NAME = 'P_FIELD2' ) ).
SCREEN-INPUT = '0'.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Regards,
Ferry Lianto
10-19-2007 6:59 PM