I have a program like the one below. Once I select "p_test" it opens up another field to allow the input of a range.
However, if I change my mind and want to deselect "p_test", it seems like select options are not evaluated again, and it insists that I input values.
Is there a way I can turn off p_test, or do I have to exit the program and start again, once I select it?
PROGRAM zz_test. DATA g_s_sflight TYPE sflight. SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME. PARAMETERS p_test AS CHECKBOX USER-COMMAND p_test. SELECT-OPTIONS s_carrid FOR g_s_sflight-carrid MODIF ID car. SELECTION-SCREEN END OF BLOCK b1. SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME. PARAMETERS p_report AS CHECKBOX USER-COMMAND p_report. SELECTION-SCREEN END OF BLOCK b2. AT SELECTION-SCREEN OUTPUT. LOOP AT SCREEN. IF p_test = 'X'. IF screen-group1 = 'CAR'. screen-active = '1'. screen-required = '1'. MODIFY SCREEN. ENDIF. ELSE. IF screen-group1 = 'CAR'. screen-active = '0'. screen-required = '0'. MODIFY SCREEN. ENDIF. ENDIF. ENDLOOP. START-OF-SELECTION. SELECT * FROM sflight INTO g_s_sflight WHERE carrid IN s_carrid. ENDSELECT.