cancel
Showing results for 
Search instead for 
Did you mean: 

selection screen

Former Member
0 Kudos

Hi,

my requirement is

stucture zstruct

in selection screen displayed all the fields using VRM

Once u select the field, based on selection field another selection screen is displayed, in that we have to use the select optiones for field

please help me ,

I look forward to your reply or call

thanks & Regards

Sekhar

Accepted Solutions (0)

Answers (8)

Answers (8)

former_member125661
Contributor
0 Kudos

Looks like u need dynamic selection screen. You probably need to write a SAP query on a Logical Database.

Former Member
0 Kudos

Hi Raja,

Do u mean another screen or another selection screen block.

Chk this code if this is your requirement:

PARAMETERS show_all radiobutton group g1 USER-COMMAND flag.
PARAMETERS no_show radiobutton group g1 default 'X'.

SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
PARAMETERS: p1(10) TYPE c,
p2(10) TYPE c,
p3(10) TYPE c.
SELECTION-SCREEN END OF BLOCK b1.

SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.

PARAMETERS: p4(10) TYPE c modif id bl2,
p5(10) TYPE c modif id bl2,
p6(10) TYPE c MODIF ID bl2.
SELECTION-SCREEN END OF BLOCK b2.

AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF show_all <> 'X' AND
screen-group1 = 'BL2'.
screen-active = '0'.
ENDIF.
MODIFY SCREEN.
endloop.

Regards,

Anjali

Former Member
0 Kudos

Hello Shekhar,

I think you cannot call another selection screen from initial selection screen.

Another option is to create your own screen and populate the values in ur own screen coming from initial selection screen.

hope, this helps you.

Regards,

Tarun

Award points if u found this helpful.

Former Member
0 Kudos

Hi,

In your selection screen, define screen elements using MODIF ID (group).

then in the event AT SELECTION SCREEN OUTPUT

write code like following sample code.

AT SELECTION SCREEN OUTPUT.

loop at screen.

if screen-group1 = modifid1.

screen-active = 1.

else.

screen-active = 0.

endif.

modify screen.

endloop.

hope it helps.

Regards,

Shashank

Former Member
0 Kudos
TYPE-POOLS: vrm.
TABLES spfli.
TABLES: vbak.

DATA: i_spfli TYPE spfli OCCURS 0 WITH HEADER LINE.
DATA: name TYPE vrm_id,
      list TYPE vrm_values,
      value LIKE LINE OF list.

PARAMETERS ps_parm LIKE spfli-carrid AS LISTBOX VISIBLE LENGTH 10
USER-COMMAND fcodex.

SELECT-OPTIONS: s_vbeln FOR vbak-vbeln MODIF ID mod.

INITIALIZATION.
  LOOP AT i_spfli.
    value-key = i_spfli-carrid.
    value-text = i_spfli-carrid.
    APPEND value TO list.
  ENDLOOP.

  CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING
      id     = name
      values = list.
  DATA temp.

AT SELECTION-SCREEN.
  IF sy-ucomm EQ 'FCODEX'.
    LOOP AT SCREEN.
      IF screen-group1 = 'MOD'.
        screen-invisible = '0'.
        MODIFY SCREEN.
        temp = sy-ucomm.
      ENDIF.
    ENDLOOP.
  ENDIF.


AT SELECTION-SCREEN OUTPUT.
  IF temp IS INITIAL.
    LOOP AT SCREEN.
      IF screen-group1 = 'MOD'.
<b>        screen-invisible = '1'.</b>
        MODIFY SCREEN.
        temp = 'X'.
      ENDIF.
    ENDLOOP.
  ENDIF.
Former Member
0 Kudos

HI raja

you have to use CALL SELECTION-SCREEN in AT SELECTION-SCREEN OUTPUT event which will call your selection screen when you select a value in the listbox.

regards

kishore

vinod_gunaware2
Active Contributor
0 Kudos

Use At selection-screen Output.

then use

Loop at screen.

screen-activate = '1'.

Screen-visible = '1'.

modify screen.

endloop.

it may be useful.

regards

vinod

abdul_hakim
Active Contributor
0 Kudos

hi raja,

your requirement is not clear at all.

if you want to call a selection screen from another selection screen you can use CALL SELECTION-SCREEN statement.Kindly elobrate your requirement so that you will get a correct answer..

Cheers,

Abdul Hakim