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

Problem in dynamic selection screen

Former Member
0 Likes
449

Hi,

I have a parameter P1 on the selection screen.When i am entering some value in that field some more field should be displayed below it on the selection screen.For ex. when i am entering 1 P2,P3,P4 should come.Whe i am entering 2 P3,P4,P5 should come.I also need a validation that the user cannot execute without pressing enter after entering the value in P1.

Mukesh Kumar

3 REPLIES 3
Read only

Former Member
0 Likes
418

Hi Mukesh,

I can suggest one solution. Instead of taking selection screen directly take a screen generated thru screen painter and call it in place of selection screen. Here u can get the remaining paramters displayed by setting the properties in the PAI block.

awrd points if useful

Bhupal

Read only

Former Member
0 Likes
418

Hi,

Check this out.

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

PARAMETER : p1 type < > USER-COMMAND change,

PARAMETER : p2 type < > MODIF ID m3,

p3 type < > MODIF ID m3,

p4 type < > MODIF ID m3,

p5 type < > MODIF ID m4,

p6 type < > MODIF ID m4.

SELECTION-SCREEN:END OF BLOCK blk2.

AT SELECTION-SCREEN OUTPUT.

check p1 is not initial.

LOOP AT SCREEN.

if p1 = '1'.

IF screen-group1 = 'M3'.

screen-INPUT = 1.

ELSE.

screen-INPUT = 0.

screen-invisible = 1.

ENDIF.

endif.

if p1 = '2'.

IF screen-group1 = 'M4'.

screen-INPUT = 1.

ELSE.

screen-INPUT = 0.

screen-invisible = 1.

ENDIF.

endif.

MODIFY SCREEN.

ENDLOOP.

For validation for pressing enter, check sy-ucomm.

Reward if helpful.

Regards,

Ramya

.

Read only

Former Member
0 Likes
418

Hi,

Please declare all the P2,P3.P4.P5 in the select-options.Make all the all the fields except P1 as screen-visible = '0'.

Now if user enter anything put the corresponding logic in AT selection-screen output saying if P1 = 1 then make LOOP at SCREEN with name as P2,P3,p5 and make VISIBLE = '1'.

Suppose user directly executes then code at selection screen if P1 = 1 the LOOP at screen for P2 and check if it si still invisible if so throw message saying "Please enter after making entry in P1 field".

Regards,

Prakash