Application Development 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: 

Parameter may be disabled in Report

Former Member
0 Kudos

Hi abapers,

I am giving 1 radiobutton and 1 parameter in selection screen.

Now,if radiobutton is selected then parameter should be disabled...Is this possible??How

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi,

Check this sample code


REPORT z_sdn.

PARAMETERS:
  p_num RADIOBUTTON GROUP rad1 DEFAULT 'X' USER-COMMAND abc,
  p_char RADIOBUTTON GROUP rad1.


PARAMETERS:
  p_field(10) TYPE c MODIF ID chr.


AT SELECTION-SCREEN OUTPUT.

  IF p_num EQ 'X'.
    LOOP AT SCREEN.
      IF screen-group1 EQ 'CHR'.
        screen-input = 0.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
  ENDIF.

Regards

Abhijeet

5 REPLIES 5

Former Member
0 Kudos

use loop at screen, statement

SELECTION-SCREEN: BEGIN OF BLOCK RADIOBUTTON WITH FRAME TITLE TEXT-002.

PARAMETERS: R_DIRECT RADIOBUTTON GROUP G1 USER-COMMAND UCOM DEFAULT 'X',

R_DISC RADIOBUTTON GROUP G1 .

SELECTION-SCREEN:END OF BLOCK RADIOBUTTON.

AT SELECTION-SCREEN OUTPUT.

IF R_DISC = 'X' .

LOOP AT SCREEN.

IF SCREEN-GROUP1 = 'A'.

SCREEN-INVISIBLE = 1.

SCREEN-INPUT = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

IF R_DISC = 'X' .

LOOP AT SCREEN.

IF SCREEN-GROUP1 = 'C'.

SCREEN-INVISIBLE = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

IF R_DIRECT = 'X' .

LOOP AT SCREEN.

IF SCREEN-GROUP1 = 'B'.

SCREEN-INVISIBLE = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

IF R_DIRECT = 'X' .

LOOP AT SCREEN.

IF SCREEN-GROUP1 = 'C'.

SCREEN-INVISIBLE = 1.

SCREEN-INPUT = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

Regards

Anbu B

Former Member
0 Kudos

You need to use MODIF ID and AT SELECTION-SCREEN OUTPUT here.

Refer below code -

PARAMETERS: r1 RADIOBUTTON GROUP rad USER-COMMAND ch.

PARAMETERS: par(10) MODIF ID id1.

AT SELECTION-SCREEN OUTPUT.

IF r1 = 'X'.

LOOP AT SCREEN.

IF screen-group1 = 'ID1' .

SCREEN-INPUT = '0'. ->> parameter disabled

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ELSE.

LOOP AT SCREEN.

IF screen-group1 = 'ID1' .

SCREEN-INPUT = '1'. ->> parameter enabled

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ENDIF.

Regards,

Aparna Gaikwad

Former Member
0 Kudos

Hi,

Check this sample code


REPORT z_sdn.

PARAMETERS:
  p_num RADIOBUTTON GROUP rad1 DEFAULT 'X' USER-COMMAND abc,
  p_char RADIOBUTTON GROUP rad1.


PARAMETERS:
  p_field(10) TYPE c MODIF ID chr.


AT SELECTION-SCREEN OUTPUT.

  IF p_num EQ 'X'.
    LOOP AT SCREEN.
      IF screen-group1 EQ 'CHR'.
        screen-input = 0.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
  ENDIF.

Regards

Abhijeet

former_member181995
Active Contributor
0 Kudos

What about search results of AT SELECTION-SCREEN OUTPUT or loop at screen or Parameter disable?

Amit.

0 Kudos

hi,

In a radio button group, only one parameter can be defined with the addition DEFAULT, and the specified value must be "X". By default, the first parameter in a radio button group is set to the value "X", and the rest are set to " ".

Thanks,

Nelson