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

Drop Down list for Parameter

Former Member
0 Likes
2,191

Hi everyone,

I wanted to have a parameter contain a list of selections. What I'm trying to do is with an entered invoice date, it will get the invoice document and retrieve the customer number from those invoices and put it as a list on a parameter field. I have the customer numbers on an internal table. Is it possible to put it in a parameter? How? Will AT SELECTION-SCREEN ON VALUE-REQUEST work??

Thanks!

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,240

hi jill,

u can use the table VRM.

create a internal table for VRM.

TYPE-POOLS VRM.

DATA: IT_VRM TYPE VRM_VALUES,

WA_VRM LIKE LINE OF IT_VRM.

append the value like this

WA_VRM-KEY = '1'.

WA_VRM-TEXT = '5'.

APPEND WA_VRM TO IT_VRM.

key is a unique number.

CALL FUNCTION 'VRM_SET_VALUES'

EXPORTING

ID = 'DUR'

VALUES = IT_VRM

EXCEPTIONS

ID_ILLEGAL_NAME = 1

OTHERS = 2.

DUR is the field name.

thanks

rewards will b usefull

san

5 REPLIES 5
Read only

former_member404244
Active Contributor
0 Likes
1,240

Hi,

chek the below code..

TYPE-POOLS: vrm.

PARAMETER: pr_spart TYPE spart AS LISTBOX VISIBLE LENGTH 7.

*AT SELECTION-SCREEN ON VALUE-REQUEST FOR pr_spart.

INITIALIZATION.

*----Code for Drop down list....

DATA: lit_spart_list TYPE vrm_values, "Table for list of Divisions

lwa_spart_list TYPE vrm_value,

lw_name TYPE vrm_id. "Name of parameter with list-box.

*---Assign selected values to table that would be passed to FM VRM_SET_VALUES

CLEAR : lwa_spart_list,

lw_name.

*---Pass required values for list-box display.

lwa_spart_list-key = 'H'.

lwa_spart_list-text = 'HL'.

APPEND lwa_spart_list TO lit_spart_list.

lwa_spart_list-key = 'S'.

lwa_spart_list-text = 'SL'.

APPEND lwa_spart_list TO lit_spart_list.

lwa_spart_list-key = 'P'.

lwa_spart_list-text = 'PP'.

APPEND lwa_spart_list TO lit_spart_list.

lwa_spart_list-key = 'F'.

lwa_spart_list-text = 'FR'.

APPEND lwa_spart_list TO lit_spart_list.

*Name of parameter to which list is to be assigned

lw_name = 'PR_SPART'.

CALL FUNCTION 'VRM_SET_VALUES'

EXPORTING

id = lw_name

values = lit_spart_list

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.

Reward if helpful..

Regards,

Nagaraj

Read only

Former Member
0 Likes
1,240

Hi,

try this

this will help u in selecting the values from database and giving and option to user to sleect from that list

&----


*& Report YYVF4HELP *

*& *

&----


*& *

*& *

&----


REPORT YYVF4HELP .

DATA: BEGIN OF itab OCCURS 0,

tdid TYPE stxh-tdid,

END OF itab.

PARAMETERS: p_val TYPE stxh-tdid OBLIGATORY.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_val.

SELECT DISTINCT tdid

FROM stxh

INTO TABLE itab.

data: g_field type DFIES-FIELDNAME.

G_FIELD = 'P_VAL'.

DATA: BEGIN OF FIELD OCCURS 0.

INCLUDE STRUCTURE DFIES.

DATA: END OF FIELD.

DATA: BEGIN OF RETURN OCCURS 0.

INCLUDE STRUCTURE DDSHRETVAL.

DATA: END OF RETURN.

DATA: BEGIN OF SEL OCCURS 0.

INCLUDE STRUCTURE DSELC.

DATA: END OF SEL.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

  • DDIC_STRUCTURE = ' '

retfield = 'ITAB-TDID'

  • PVALKEY = ' '

DYNPPROG = 'YYVF4HELP'

DYNPNR = '1000'

  • DYNPROFIELD = ' '

  • STEPL = 0

  • WINDOW_TITLE = ' '

  • VALUE = ' '

VALUE_ORG = 'S'

  • MULTIPLE_CHOICE = ' '

  • DISPLAY = ' '

CALLBACK_PROGRAM = sy-repid

  • CALLBACK_FORM = ' '

  • MARK_TAB =

  • IMPORTING

  • USER_RESET =

tables

value_tab = itab

FIELD_TAB = FIELD

RETURN_TAB = RETURN

DYNPFLD_MAPPING = SEL

EXCEPTIONS

PARAMETER_ERROR = 1

NO_VALUES_FOUND = 2

OTHERS = 3

.

IF sy-subrc <> 0.

MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

P_VAL = RETURN-FIELDVAL.

START-OF-SELECTION.

FORMAT COLOR COL_HEADING.

WRITE:/30 P_VAL.

regards,

Venkatesh

Read only

Former Member
0 Likes
1,241

hi jill,

u can use the table VRM.

create a internal table for VRM.

TYPE-POOLS VRM.

DATA: IT_VRM TYPE VRM_VALUES,

WA_VRM LIKE LINE OF IT_VRM.

append the value like this

WA_VRM-KEY = '1'.

WA_VRM-TEXT = '5'.

APPEND WA_VRM TO IT_VRM.

key is a unique number.

CALL FUNCTION 'VRM_SET_VALUES'

EXPORTING

ID = 'DUR'

VALUES = IT_VRM

EXCEPTIONS

ID_ILLEGAL_NAME = 1

OTHERS = 2.

DUR is the field name.

thanks

rewards will b usefull

san

Read only

Former Member
0 Likes
1,240

Use FM VRM_SET_VALUES to achieve this.

Read only

Former Member
0 Likes
1,240

Hi

check this code you can understand very easily

List Box in ABAP Report

*

  • List Box in ABAP Report

*

*

REPORT ZLIST.

TYPE-POOLS: VRM.

DATA: NAME TYPE VRM_ID,

LIST TYPE VRM_VALUES,

VALUE LIKE LINE OF LIST.

<b>PARAMETERS: PS_PARM(10) AS LISTBOX VISIBLE LENGTH 10.</b>

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.

Check these demo programs

DEMO_DROPDOWN_LIST_BOX

RSDEMO_DROPDOWN_LISTBOX

<b>Reward if usefull</b>