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: 

At selection screen output

Former Member
0 Kudos

I have 3 radio buttons and 3 parameters.

when p_nofile is selected, all the parameters has to disabled.

when p_email is selected, p_emaila and p_filnam has to enabled and p_intid has to disabled.

When p_ftpfil is selected, p_intid and p_filnam has to enabled and p_email has to enabled.

I tried in different ways but i couldnot achieve it.

**************my selection screen***********

SELECTION-SCREEN: BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.

*Radiobuttons.

PARAMETER: p_nofile RADIOBUTTON GROUP g1 DEFAULT 'X' USER-COMMAND ucomm,

p_email RADIOBUTTON GROUP g1,

p_ftpfil RADIOBUTTON GROUP g1,

*Parameters.

p_emaila TYPE adr6-smtp_addr,

p_intid(6) TYPE c modif id s2,

p_filnam(35) TYPE c LOWER CASE.

SELECTION-SCREEN: END OF BLOCK b2.

********End of selection screen*******

Any suggestions will be gladly appreciated. Thanks in advance!

7 REPLIES 7

Former Member
0 Kudos

Hi ,

Try this code.

TABLES: mara,ekko.

SELECTION-SCREEN begin of line .

PARAMETERS: rad1 RADIOBUTTON GROUP grp1.

SELECT-OPTIONS: date FOR mara-matnr MODIF ID mo1.

SELECTION-SCREEN end of line .

SELECTION-SCREEN begin of line .

PARAMETERS: rad2 RADIOBUTTON GROUP grp1.

SELECT-OPTIONS: date1 FOR mara-matnr MODIF ID mo1.

SELECTION-SCREEN end of line .

AT SELECTION-SCREEN OUTPUT.

IF rad2 = 'X'.

LOOP

AT SCREEN. IF screen-name = 'DATE-LOW' OR screen-name =

'DATE-HIGH'. screen-input = 0. MODIFY SCREEN. ENDIF.

ENDLOOP. ENDIF.

IF rad1 = 'X'.

LOOP

AT SCREEN. IF screen-name = 'DATE1-LOW' OR screen-name =

'DATE1-HIGH'. screen-input = 0. MODIFY SCREEN. ENDIF.

ENDLOOP. ENDIF.

Regards,

Sumit.

Former Member
0 Kudos

Hi,

check the following code.


SELECTION-SCREEN : BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
SELECTION-SCREEN : BEGIN OF BLOCK b1 WITH FRAME TITLE text-002.
PARAMETER: r_crea  RADIOBUTTON GROUP g1 USER-COMMAND radio1 DEFAULT 'X',
           r_temp  RADIOBUTTON GROUP g1 .
SELECTION-SCREEN : END OF BLOCK b1.

SELECTION-SCREEN : BEGIN OF BLOCK b2 WITH FRAME TITLE text-003.
PARAMETER:p_a(10)  type c MODIF ID gr1,
          p_b(10)  type c MODIF ID gr2.
SELECTION-SCREEN : END OF BLOCK b2.
SELECTION-SCREEN : END OF BLOCK a1.



AT SELECTION-SCREEN OUTPUT.
*   clear ps_pack.
 IF r_crea = 'X' .
    LOOP AT SCREEN.
      IF screen-group1 = 'GR1'.
        screen-input       = '0'.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
  ELSEif r_temp = 'X'.
    LOOP AT SCREEN.
      IF screen-group1 = 'GR2'.
        screen-input       = '0'.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
  ENDIF.

Hope this helps.

Regards,

Kinshuk

Former Member
0 Kudos

Parameters: rd1 RADIOBUTTON group g1 default 'X' user-command ch ,

kishan1(10) type c modif id ID1,

rd2 RADIOBUTTON group g1 ,

kishan2(10) TYPE C modif id ID2,

rd3 RADIOBUTTON group g1 ,

kishan3(10) TYPE C modif id ID3.

AT SELECTION-SCREEN.

check sy-ucomm = 'CH'.

AT SELECTION-SCREEN output.

IF rd1 = 'X'.

LOOP AT SCREEN.

IF screen-group1 = 'ID1' or screen-group1 = 'ID2' or screen-group1 = 'ID3' .

screen-input = '0'.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

*

ENDIF.

*

IF RD2 = 'X'.

LOOP AT SCREEN.

IF screen-group1 = 'ID3' .

screen-input = '0'.

*

ENDIF.

*

MODIFY SCREEN.

ENDLOOP.

*

ENDIF.

*

IF RD3 = 'X'.

LOOP AT SCREEN.

IF screen-group1 = 'ID1' .

screen-input = '0'.

*

ENDIF.

*

*

MODIFY SCREEN.

ENDLOOP.

*

ENDIF.

Former Member
0 Kudos

AT SELECTION-SCREEN ON RADIOBUTTON GROUP G1.

IF R1 = 'X'.

NUMB = 1.

ELSEIF R2 = 'X'

NUMB = 3

ELSEIF R3 = 'X'

NUMB = 3

ENDIF.

AT SELECTION-SCREEN OUTPUT.

CASE NUMB.

WHEN 1.

LOOP AT SCREEN.

CHECK THE NAME OF THE OF THE FIELDS REQUIRED

AND MAKE THEIR INPUT = 0.

MODIFY SCREEN

ENDLOOP.

WHEN 2.

LOOP AT SCREEN.

CHECK THE NAME OF THE OF THE FIELDS REQUIRED

AND MAKE THEIR INPUT = 0.

MODIFY SCREEN

ENDLOOP.

WHEN 3.

LOOP AT SCREEN.

CHECK THE NAME OF THE OF THE FIELDS REQUIRED

AND MAKE THEIR INPUT = 0.

MODIFY SCREEN

ENDLOOP.

ENDCASE.

Former Member
0 Kudos

Hi Rupa......

you have to use screen modify according to your need....

IF r1 = 'X' .

LOOP AT SCREEN.

IF screen-group1 = 'GP1'.

screen-input = '0'.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ELSEif r2 = 'X'.

LOOP AT SCREEN.

IF screen-group1 = 'GP2'.

screen-input = '0'.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

Reward Points if helpful

Regards

Abhishek

Former Member
0 Kudos

Hi Rupa,

Try this.

SELECTION-SCREEN: BEGIN OF BLOCK b2 WITH FRAME TITLE text-002.

*Radiobuttons.

PARAMETER: p_nofile RADIOBUTTON GROUP g1 DEFAULT 'X' USER-COMMAND ucomm,

p_email RADIOBUTTON GROUP g1,

p_ftpfil RADIOBUTTON GROUP g1,

*Parameters.

p_emaila TYPE adr6-smtp_addr MODIF ID gr1,

p_intid(6) TYPE c MODIF ID gr2,

p_filnam(35) TYPE c LOWER CASE MODIF ID gr3.

SELECTION-SCREEN: END OF BLOCK b2.

AT SELECTION-SCREEN OUTPUT.

IF p_nofile = 'X'.

LOOP AT SCREEN.

IF screen-group1 = 'GR1' OR screen-group1 = 'GR2'

OR screen-group1 = 'GR3'.

screen-input = '0'.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ELSEIF p_email = 'X'.

LOOP AT SCREEN.

IF screen-group1 = 'GR2'.

screen-input = '0'.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

regards,

Asha

Former Member
0 Kudos

if p_nofile = 'X'.

loop at screen.

screen-input = ' '.

endloop.

elseif p_email = 'X'.

loop at screen.

if ( ( screen-name = 'p_emaila') or ( screen-name = 'p_filenam') )).

screen-input = 'X'.

elseif screen-name = 'P_intid'.

screen-input = ' '.

endif.

endloop.

elseif p_ftpfile = 'X'.

loop at screen.

if ( ( screen-name = 'p_intid') or ( screen-name = 'p_filenam') )).

screen-input = 'X'.

elseif screen-name = 'P_email'.

screen-input = ' '.

endif.

endloop.

endif.