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

List Box

Former Member
0 Likes
1,216

Can anyone gimme the source code to create a list box and some 2 to 3 values in it...Pls its a bit urgent..

6 REPLIES 6
Read only

Former Member
0 Likes
710

hi,

check this example..

<b>DEMO_DYNPRO_DROPDOWN_LISTBOX</b>

REPORT demo_dynpro_dropdown_listbox.

TYPE-POOLS vrm.

DATA: name  TYPE vrm_id,
      list  TYPE vrm_values,
      value LIKE LINE OF list.

DATA: wa_spfli TYPE spfli,
      ok_code TYPE sy-ucomm,
      save_ok TYPE sy-ucomm.

TABLES demof4help.

name = 'DEMOF4HELP-CONNID'.

CALL SCREEN 100.

MODULE cancel INPUT.
  LEAVE PROGRAM.
ENDMODULE.

MODULE init_listbox OUTPUT.

  CLEAR demof4help-connid.

  SELECT  connid cityfrom cityto deptime
    FROM  spfli
    INTO  CORRESPONDING FIELDS OF wa_spfli
   WHERE  carrid = demof4help-carrier2.

    value-key  = wa_spfli-connid.

    WRITE wa_spfli-deptime TO value-text USING EDIT MASK '__:__:__'.

    CONCATENATE value-text
                wa_spfli-cityfrom
                wa_spfli-cityto
                INTO value-text SEPARATED BY space.
    APPEND value TO list.

  ENDSELECT.

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

ENDMODULE.

MODULE user_command_100.
  save_ok = ok_code.
  CLEAR ok_code.
  IF save_ok = 'CARRIER' AND NOT demof4help-carrier2 IS INITIAL.
    LEAVE TO SCREEN 200.
  ELSE.
    SET SCREEN 100.
  ENDIF.
ENDMODULE.

MODULE user_command_200.
  save_ok = ok_code.
  CLEAR ok_code.
  IF save_ok = 'SELECTED'.
    MESSAGE i888(sabapdocu) WITH text-001 demof4help-carrier2
                                        demof4help-connid.
  ENDIF.
ENDMODULE.

regards

vijay

Read only

0 Likes
710

thanks for ur reply i want this functionallity in a normal report program not in module pool program....

Read only

0 Likes
710

HI

try this code for dynamic loading the list box

TYPE-POOLS: VRM.

TABLES SPFLI.

TABLES SSCRFIELDS.

DATA flag.

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.

data: i_spfli type spfli occurs 0 with header line.

PARAMETERS PQ_PARAM LIKE SPFLI-connid AS LISTBOX VISIBLE LENGTH 15

USER-COMMAND

fcodey.

*DS AS CHECKBOX USER-COMMAND FLAG.

INITIALIZATION.

NAME = 'PS_PARM'.

DATA T TYPE I VALUE 0.

SELECT DISTINCT carrid into corresponding fields of table i_spfli FROM

SPFLI.

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.

AT SELECTION-SCREEN.

if sy-ucomm eq 'FCODEX'.

REFRESH LIST.

CLEAR LIST.

PQ_PARAM = ' '.

NAME = 'PQ_PARAM'.

SELECT * FROM SPFLI WHERE CARRID = PS_PARM.

VALUE-KEY = SPFLI-connid.

VALUE-TEXT = SPFLI-connid.

APPEND VALUE TO LIST.

ENDSELECT.

endif.

AT SELECTION-SCREEN OUTPUT.

LOOP AT SCREEN.

IF SY-UCOMM NE 'FCODEX' OR SY-UCOMM NE 'FCODEY'.

CALL FUNCTION 'VRM_SET_VALUES'

EXPORTING

ID = NAME

VALUES = LIST.

MODIFY SCREEN.

ENDIF.

ENDLOOP.

START-OF-SELECTION.

clear i_spfli.

refresh i_spfli.

select * into table i_spfli from spfli where carrid = ps_parm and connid

= pq_param.

loop at i_spfli.

WRITE: / 'CITY FROM:', I_SPFLI-CITYFROM, 'CITY TO :',I_SPFLI-CITYTO,

'DEPARTURE TIME :', I_SPFLI-DEPTIME.

ENDLOOP.

Read only

Former Member
0 Likes
710

check tx: abapdocu

inside tree abap user dialogs->screens-> processing screens->drop down boxes

regards

Read only

Former Member
0 Likes
710

HI

REPORT ZLIST.

TYPE-POOLS: VRM.

DATA: NAME TYPE VRM_ID,

LIST TYPE VRM_VALUES,

VALUE LIKE LINE OF LIST.

PARAMETERS: PS_PARM(10) AS LISTBOX VISIBLE LENGTH 10.

AT SELECTION-SCREEN OUTPUT.

NAME = 'PS_PARM'.

VALUE-KEY = '1'.

VALUE-TEXT = 'LINE 1'.

APPEND VALUE TO LIST. VALUE-KEY = '2'.

VALUE-TEXT = 'LINE 2'.

APPEND VALUE TO LIST.

CALL FUNCTION 'VRM_SET_VALUES' EXPORTING ID = NAME VALUES = LIST.

START-OF-SELECTION.

WRITE: / 'PARAMETER:', PS_PARM.

Read only

Former Member
0 Likes
710
REPORT  TEST_CODE_VRM.

TYPE-POOLS: vrm.

TYPES: name TYPE vrm_value-text.
DATA: v_vbeln LIKE vbak-vbeln.
DATA: it_values TYPE STANDARD TABLE OF vrm_value.
DATA: wa TYPE vrm_value.
TABLES: kna1.

SELECT-OPTIONS: s_vbeln FOR v_vbeln.
PARAMETERS: p_kunnr AS CHECKBOX USER-COMMAND abc.
PARAMETERS: p_chk1 AS CHECKBOX USER-COMMAND abc.
PARAMETERS: p_kunnr1 TYPE name AS LISTBOX VISIBLE LENGTH 30.

INITIALIZATION.
  s_vbeln-low = '123'.
  APPEND s_vbeln.

  wa-key = '1'.
  wa-text = 'One'.
  APPEND wa TO it_values.
  CLEAR wa.

  wa-key = '2'.
  wa-text = 'Two'.
  APPEND wa TO it_values.
  CLEAR wa.



AT SELECTION-SCREEN.
  CLEAR s_vbeln.
  REFRESH s_vbeln.
  s_vbeln-low = '456'.
  APPEND s_vbeln.


AT SELECTION-SCREEN ON p_kunnr.
* This event should fire only only for parameters not for select options
  p_kunnr = 'X'.

*
AT SELECTION-SCREEN OUTPUT.

  IF p_kunnr = 'X'.
    p_kunnr = ' '.
  ENDIF.
  IF p_chk1 = ' '.
    p_chk1 = 'X'.
  ELSE.
    p_chk1 = ' '.
  ENDIF.

  CALL FUNCTION 'VRM_SET_VALUES'
    EXPORTING
      id              = 'P_KUNNR1'
      values          = it_values
    EXCEPTIONS
      id_illegal_name = 1
      OTHERS          = 2.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.