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

Selection -screen

Former Member
0 Likes
694

Hi all,

In the selection screen, i'm having 2 blocks, each block contains 2 input fields.

My Query is i've to make one block to be enabled and another one should be disabled.

How to do this...Radio button can be used.

1 ACCEPTED SOLUTION
Read only

gopi_narendra
Active Contributor
0 Likes
653
  • At Selection-Screen

at selection-screen output.

loop at screen.

if P_02 ne 'X' and

( SCREEN-NAME = 'P_03' or

SCREEN-NAME = 'P_04' or

SCREEN-NAME = 'P_FNAME' or

SCREEN-NAME = 'P_SNAME' ).

SCREEN-INPUT = 0.

modify screen.

elseif P_02 = 'X' and

( SCREEN-NAME = 'P_03' or

SCREEN-NAME = 'P_04' ).

SCREEN-INPUT = 1.

modify screen.

endif.

endloop.

Regards

- Gopi

6 REPLIES 6
Read only

gopi_narendra
Active Contributor
0 Likes
654
  • At Selection-Screen

at selection-screen output.

loop at screen.

if P_02 ne 'X' and

( SCREEN-NAME = 'P_03' or

SCREEN-NAME = 'P_04' or

SCREEN-NAME = 'P_FNAME' or

SCREEN-NAME = 'P_SNAME' ).

SCREEN-INPUT = 0.

modify screen.

elseif P_02 = 'X' and

( SCREEN-NAME = 'P_03' or

SCREEN-NAME = 'P_04' ).

SCREEN-INPUT = 1.

modify screen.

endif.

endloop.

Regards

- Gopi

Read only

0 Likes
653

DATA: saplane_wa TYPE saplane,

saplane_wa1 TYPE saplane.

SELECTION-SCREEN BEGIN OF BLOCK charly

WITH FRAME TITLE text-001.

PARAMETERS parm(5) modif id tes.

SELECT-OPTIONS sel FOR saplane_wa-planetype modif id tes.

SELECTION-SCREEN END OF BLOCK charly.

SELECTION-SCREEN BEGIN OF BLOCK charly1

WITH FRAME TITLE text-002.

PARAMETERS parm1(5) modif id te1.

PARAMETERS parm2(5) modif id te1.

SELECT-OPTIONS sel1 FOR saplane_wa1-planetype modif id te1.

SELECTION-SCREEN END OF BLOCK charly1.

parameters : rad_ctr radiobutton group rad1 default 'X' user-command

ucom,

RAD_SRV radiobutton group rad1 ,

RAD_RV radiobutton group rad1 .

at selection-screen output.

if rad_ctr = 'X'.

loop at screen.

if screen-group1 = 'TES'.

screen-output = 1.

screen-active = 0.

modify screen.

endif.

endloop.

elseif RAD_SRV = 'X'.

loop at screen.

if screen-group1 = 'TE1'.

screen-output = 1.

screen-active = 0.

modify screen.

endif.

endloop.

endif.

Read only

anversha_s
Active Contributor
0 Likes
653

hi,

look this sampple.

*parameters

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

PARAMETERS : p_ship RADIOBUTTON GROUP rb1 DEFAULT 'X' USER-COMMAND chk,

p_cil RADIOBUTTON GROUP rb1.

SELECTION-SCREEN END OF BLOCK b1.

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

SELECT-OPTIONS : s_pernr FOR zmpets_167doc-pernr,

s_docnum FOR zmpets_167doc-docnum,

s_shpdoc FOR zmpets_shiphdr-shipdocno,

s_clno FOR zmpets_claims-claimno,

s_movrsn FOR zmpets_167doc-movreason.

SELECTION-SCREEN END OF BLOCK b2.

SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME TITLE text-004.

SELECT-OPTIONS : s_cpernr FOR zmpets_167doc-pernr,

s_cil FOR zmpets_cil-cashinlieu,

s_cmvrsn FOR zmpets_167doc-movreason.

SELECTION-SCREEN END OF BLOCK b3.

AT SELECTION-SCREEN OUTPUT.

  • To hide the fields on selection screen based on the selection.

PERFORM at_selection_scree_output.

****************************

&----


*& Form at_selection_scree_output

&----


  • text

----


  • --> p1 text

  • <-- p2 text

----


FORM at_selection_scree_output .

LOOP AT SCREEN.

  • If create is selected, then the option fields would be made invisible

IF ( p_ship = 'X' AND

( screen-name = 'S_CPERNR-LOW' OR

screen-name = 'S_CPERNR-HIGH' OR

screen-name = 'S_CIL-LOW' OR

screen-name = 'S_CIL-HIGH' OR

screen-name = 'S_CMVRSN-LOW' OR

screen-name = 'S_CMVRSN-HIGH' OR

screen-name = '%_S_CPERNR_%_APP_%-TEXT' OR

screen-name = '%_S_CPERNR_%_APP_%-VALU_PUSH' OR

screen-name = '%_S_CIL_%_APP_%-TEXT' OR

screen-name = '%_S_CIL_%_APP_%-VALU_PUSH' OR

screen-name = '%_S_CMVRSN_%_APP_%-TEXT' OR

screen-name = '%_S_CMVRSN_%_APP_%-VALU_PUSH') ).

screen-invisible = 1.

screen-input = 0.

MODIFY SCREEN.

REFRESH : s_cpernr, s_cil, s_cmvrsn.

CLEAR : s_cpernr, s_cil, s_cmvrsn.

ENDIF.

IF ( p_cil = 'X' AND

( screen-name = 'S_PERNR-LOW' OR

screen-name = 'S_PERNR-HIGH' OR

screen-name = 'S_DOCNUM-LOW' OR

screen-name = 'S_DOCNUM-HIGH' OR

screen-name = 'S_SHPDOC-LOW' OR

screen-name = 'S_SHPDOC-HIGH' OR

screen-name = 'S_CLNO-LOW' OR

screen-name = 'S_CLNO-HIGH' OR

screen-name = 'S_MOVRSN-LOW' OR

screen-name = 'S_MOVRSN-HIGH' OR

screen-name = '%_S_PERNR_%_APP_%-TEXT' OR

screen-name = '%_S_PERNR_%_APP_%-VALU_PUSH' OR

screen-name = '%_S_DOCNUM_%_APP_%-TEXT' OR

screen-name = '%_S_DOCNUM_%_APP_%-VALU_PUSH' OR

screen-name = '%_S_SHPDOC_%_APP_%-TEXT' OR

screen-name = '%_S_SHPDOC_%_APP_%-VALU_PUSH' OR

screen-name = '%_S_MOVRSN_%_APP_%-TEXT' OR

screen-name = '%_S_MOVRSN_%_APP_%-VALU_PUSH' OR

screen-name = '%_S_CLNO_%_APP_%-TEXT' OR

screen-name = '%_S_CLNO_%_APP_%-VALU_PUSH') ).

screen-invisible = 1.

screen-input = 0.

MODIFY SCREEN.

REFRESH : s_cpernr, s_docnum, s_shpdoc,

s_clno, s_movrsn.

CLEAR : s_cpernr, s_docnum, s_shpdoc,

s_clno, s_movrsn.

ENDIF.

ENDLOOP.

ENDFORM. " at_selection_scree_output

rgds

anver

if hlped pls mark points

Read only

Former Member
0 Likes
653

Hi obuli,

1. Exactly as u want.

2. just copy paste

3.

report abc.

*----


PARAMETERS : R1 RADIOBUTTON GROUP RG USER-COMMAND R DEFAULT 'X'.

PARAMETERS : R2 RADIOBUTTON GROUP RG .

*----


selection-screen begin of block b1 with frame.

parameters : a(10) type c modif id abc.

parameters : b(10) type c modif id abc.

selection-screen end of block b1.

selection-screen begin of block b2 with frame.

parameters : c(20) type c modif id def.

parameters : d(20) type c modif id def.

selection-screen end of block b2.

*----


at selection-screen output.

IF R1 = 'X'.

LOOP AT SCREEN.

IF SCREEN-GROUP1 = 'DEF'.

SCREEN-INPUT = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

IF R2 = 'X'.

LOOP AT SCREEN.

IF SCREEN-GROUP1 = 'ABC'.

SCREEN-INPUT = 0.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

regards,

amit m.

Read only

0 Likes
653

Hi Obuli,

Please use the method described by Amit.

That way, if the selection screen is modified in the future, you don't have to worry about adding the new screen field names in the IF statement that modifies the screen field attribute.

Regards,

-Ramesh

Read only

anversha_s
Active Contributor
0 Likes
653

hi sundar,

pls chk another example.

REPORT ypra_sample56.

SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.

PARAMETER: p_r1 RADIOBUTTON GROUP rg1 USER-COMMAND vend DEFAULT 'X',

p_r2 RADIOBUTTON GROUP rg1,

p_r3 RADIOBUTTON GROUP rg1.

SELECTION-SCREEN END OF BLOCK a1.

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

PARAMETER: p_c1 TYPE c AS CHECKBOX,

p_c2 TYPE c AS CHECKBOX,

p_c3 TYPE c AS CHECKBOX,

p_c4 TYPE c AS CHECKBOX,

p_c5 TYPE c AS CHECKBOX.

SELECTION-SCREEN END OF BLOCK a2.

***********************************************************************

  • INITIALIZATION

***********************************************************************

INITIALIZATION.

PERFORM enable_fields.

***********************************************************************

  • AT SELECTION SCREEN OUTPUT

***********************************************************************

AT SELECTION-SCREEN OUTPUT.

PERFORM sel_screen_output.

&----


*& Form sel_screen_output

&----


  • Selection screen Output

----


FORM sel_screen_output.

IF p_r1 EQ 'X' OR p_r2 EQ 'X'.

PERFORM enable_fields.

ENDIF.

IF p_r3 EQ 'X'.

LOOP AT SCREEN.

IF screen-name EQ 'P_C4' OR screen-name = 'P_C5'.

screen-active = '1'.

ENDIF.

MODIFY SCREEN.

ENDLOOP.

ENDIF.

ENDFORM. " sel_screen_output

&----


*& Form enable_fields

&----


  • enable fields in selection screen

----


FORM enable_fields .

IF p_r1 EQ 'X' OR p_r2 EQ 'X'.

LOOP AT SCREEN.

IF screen-name EQ 'P_C4' OR screen-name EQ 'P_C5'.

screen-active = '0'.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

ENDIF.

rgds

anver