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

skip selection screen

Former Member
0 Likes
2,480

Hello,

I have a report with a selection screen containing one parameter.

I want that, in certain conditions, the selection screen to be skipped.

I think I can use the AT SELECTION-SCREEN OUTPUT event and modify the screen table, but I don't know what to modify in order to skip the selection screen.

Any ideeas?

7 REPLIES 7
Read only

Former Member
0 Likes
1,257

Hi,

You can set parameter property

LOOP AT SCREEN.

IF SCREEN-NAME = PARAMETER/SELECTI-OPTION-HIGH/LOW

SCREEN-INPUT = '0'.

ENDIF.

ENDLOOP.

e.g. PARAMETER NAME = 'P_MATNR'

SELECT-OPTION = 'P_MATNR-HIGH'

You can also check SELECT-OPTIONS - screen_options (NO-DISPLAY ).

***reward if helpful.

Message was edited by:

Sachchidanand Aphale

Read only

Former Member
0 Likes
1,257

Hi George see this code,

REPORT zm_selectoutput .

TABLES : lfa1, kna1 .

SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME .

PARAMETERS : r1 RADIOBUTTON GROUP gr1 USER-COMMAND flag DEFAULT 'X',

r2 RADIOBUTTON GROUP gr1.

SELECTION-SCREEN END OF BLOCK blk1 .

SELECTION-SCREEN BEGIN OF BLOCK blk2 WITH FRAME .

SELECT-OPTIONS : p_lifnr FOR lfa1-lifnr MODIF ID ide.

SELECTION-SCREEN END OF BLOCK blk2 .

SELECTION-SCREEN BEGIN OF BLOCK blk3 WITH FRAME .

SELECT-OPTIONS : p_kunnr FOR kna1-kunnr MODIF ID idf.

SELECTION-SCREEN END OF BLOCK blk3 .

AT SELECTION-SCREEN OUTPUT.

LOOP AT SCREEN .

IF r1 IS NOT INITIAL AND screen-group1 = 'IDE' .

screen-active = '0' .

MODIFY SCREEN.

ENDIF.

ENDLOOP.

LOOP AT SCREEN .

IF r2 IS NOT INITIAL AND screen-group1 = 'IDF' .

screen-active = '0' .

MODIFY SCREEN.

ENDIF.

ENDLOOP.

Regards,

Nihar Swain ,,,,,,,,,,,,,,

Read only

0 Likes
1,257

Using screen-active = 0 is just hiding the parameter, the selection screen is still there and I have ti press "Execute button". How cand I skip that too?

Read only

Former Member
0 Likes
1,257

hi,

try like this.

for any standard transaction when we want to skip initial screen we do like this.

CALL TRANSACTION 'MM01' AND SKIP FIRST SCREEN.

in ur case i think use SY-DYNNR [to hold current screen no] and try like this.

where chkbox is any condition to skip selection screen for u.

if chkbox = 'X'.

call screen '200' and SKIP FIRST SCREEN.

where 200 is next screen after selection screen.

or find out by debugging the scrno of selection screen [SY-DYNNR] and try like this

call screen '200' and skip SY-DYNNR.

if helpful reward some points.

with regards,

Suresh Aluri.

Read only

former_member404244
Active Contributor
0 Likes
1,257

Hi,

Instead of going for a parameters option.Try with a single screen ,putting the parameter field in it. and then try to call the screen when ever u want.

call screen 100. In screen 100 use ur parameter field.

Try like this.

if x is initial.

call screen 100.

endif.

Regards,

Nagaraj

Read only

0 Likes
1,257

Is there a way to do something like this?

if condition = true.

parameters: param1 type type1 no-display.

else.

parameters: param1 type type1.

endif.

Read only

Former Member
0 Likes
1,257

Hi

You can use the skip keyword to skip group of field from selction screen.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 16(10) TEXT-010.

SELECTION-SCREEN COMMENT 37(10) TEXT-020.

SELECTION-SCREEN END OF LINE.

SKIP.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN COMMENT 05(10) TEXT-040.

PARAMETERS X_M01 LIKE RESB-MATNR.

SELECTION-SCREEN COMMENT 35(01) TEXT-050.

PARAMETERS X_Q01 LIKE RESB-ERFMG.

SELECTION-SCREEN END OF LINE.

SKIP.

Thanks and Best Regards,

Vinoth