This is an example of dynamic changes at selection screen. When you click on the second radio button, another field will be displayed. The tip here is when changing state of objects in the screen, internal table SCREEN has to be edited in SELECTION-SCREEN OUTPUT, otherwise it wont’t work.
REPORT ZSELECTION_SCREEN.
* Text-symbols
*001 Lorem ipsum ei mei affert eruditi necessitatibus, id nec tota ullum
*002 Nibh maluisset scripserit et
**********************************************************************
* Selection Screen
**********************************************************************
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_radio TYPE sprps RADIOBUTTON GROUP a1 USER-COMMAND radio.
SELECTION-SCREEN: COMMENT 4(67) text-001.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE.
PARAMETERS: p_radio2 TYPE sprps RADIOBUTTON GROUP a1.
SELECTION-SCREEN: COMMENT 4(28) text-002.
SELECTION-SCREEN END OF LINE.
PARAMETERS: p_test TYPE char1.
**********************************************************************
* AT SELECTION-SCREEN OUTPUT
**********************************************************************
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF screen-name = 'P_TEST' or
screen-name = '%_P_TEST_%_APP_%-TEXT'.
IF p_radio2 = 'X'.
screen-active = '1'.
ELSE.
screen-active = '0'.
ENDIF.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
START-OF-SELECTION.
WRITE: 'End'.
Modify screen,dynamic screen in module programming http://saptechnicals.blogspot.com/2013/04/modify-screen-in-module-programming.html