Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

radio button

madan_ullasa
Contributor
0 Likes
730

frnds,

i want a solution. i have 3 radiobuttons of same group. and under the 1st rad. button i have some more input fields. Now my requirement is , when i select 2nd or 3rd rad.button i want the all the input fields under rad.button 1 to be disabled. i have done this by 'Loop at scree'.. but i want it to happen immediately when i select any of the other 2 Rad.butonsand not after pressing enter.

regrds,

Madan..

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
715

Hi Madan,

Please fidn the below sample code to do that.


PARAMETERS: p_radio1 RADIOBUTTON GROUP g1 USER-COMMAND comm,
p_date1 TYPE sy-datum,
p_radio2 RADIOBUTTON GROUP g1 DEFAULT 'X',
p_date2 TYPE sy-datum.



AT SELECTION-SCREEN OUTPUT.
  IF p_radio1 = 'X'.
    LOOP AT SCREEN.
      CASE screen-name.
        WHEN 'P_DATE1'.
          screen-input = '1'.
        WHEN 'P_DATE2'.
          screen-input = '0'.
      ENDCASE.
      MODIFY SCREEN.
    ENDLOOP.
  ELSEIF p_radio2 = 'X'.
    LOOP AT SCREEN.
      CASE screen-name.
        WHEN 'P_DATE1'.
          screen-input = '0'.
        WHEN 'P_DATE2'.
          screen-input = '1'.
      ENDCASE.
      MODIFY SCREEN.
    ENDLOOP.
  ENDIF.

Hope this will help you.

Thanks&Regards,

Siri.

6 REPLIES 6
Read only

Former Member
0 Likes
716

Hi Madan,

Please fidn the below sample code to do that.


PARAMETERS: p_radio1 RADIOBUTTON GROUP g1 USER-COMMAND comm,
p_date1 TYPE sy-datum,
p_radio2 RADIOBUTTON GROUP g1 DEFAULT 'X',
p_date2 TYPE sy-datum.



AT SELECTION-SCREEN OUTPUT.
  IF p_radio1 = 'X'.
    LOOP AT SCREEN.
      CASE screen-name.
        WHEN 'P_DATE1'.
          screen-input = '1'.
        WHEN 'P_DATE2'.
          screen-input = '0'.
      ENDCASE.
      MODIFY SCREEN.
    ENDLOOP.
  ELSEIF p_radio2 = 'X'.
    LOOP AT SCREEN.
      CASE screen-name.
        WHEN 'P_DATE1'.
          screen-input = '0'.
        WHEN 'P_DATE2'.
          screen-input = '1'.
      ENDCASE.
      MODIFY SCREEN.
    ENDLOOP.
  ENDIF.

Hope this will help you.

Thanks&Regards,

Siri.

Read only

hymavathi_oruganti
Active Contributor
0 Likes
715

in loop at screen only u can do it

u assgn to three modif ids

loop at screen.

IF RAD1 = 'X'.

if screen-group = 'r1'.

screen -active = 1

else.

screen-invisible = 1.

...........

.......

modify screen.

endloop.

Read only

Former Member
0 Likes
715

Use the addition MODIF ID <modid>.

Read only

Former Member
0 Likes
715

hi

THIS WILL WORK

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.

PARAMETERS: R1 RADIOBUTTON GROUP G1 USER-COMMAND flag,

p1(10) TYPE c MODIF ID BL2,

p2(10) TYPE c MODIF ID BL2,

p3(10) TYPE c MODIF ID BL2,

R2 RADIOBUTTON GROUP G1 ,

R3 RADIOBUTTON GROUP G1 .

SELECTION-SCREEN END OF BLOCK b1.

AT SELECTION-SCREEN OUTPUT.

LOOP AT SCREEN.

IF ( R2 = 'X' OR R3 = 'X' ) AND

screen-group1 = 'BL2'.

screen-active = '0'.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

REWARD IF HELPFUL

Read only

Former Member
0 Likes
715

Hi,

Proceed like this,

1. Define all the parameters to be enabled/disabled when you select a radio button like this,

PARAMETERS p_start LIKE sy-datum MODIF ID XX.

2.Then,in the event "AT SELECTION-SCREEN OUTPUT" check which radio button is selected and activate/ deactivate/ visible/ invisible like,

IF r_write EQ gc_mark.

gv_block = 'XX'. ( Where XX is the MODI name as above)

PERFORM form1_deactivate / form2_activate

ENDIF.

3.In the perform,

LOOP AT SCREEN.

screen-active = '1'.

IF screen-group1 = gv_block(gv_block is set in above

event AT SELECTION-SCREEN OUTPUT).

screen-active = '0'.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

I hope this info is suffice.

Regs,

Venkat Ramanan

Read only

Former Member
0 Likes
715

parameters : rad1 radiobutton group g1 user-command u1,

name type char20 modif id ra,

rad2 radiobutton group g1,

rad3 radiobutton group g1.

at selection-screen output.

loop at screen.

if rad1 <> 'X' and screen-group1 = 'RA'.

screen-active = 0.

endif.

modify screen.

endloop.