‎2008 Jun 17 8:24 AM
hi all,
i am using a statement to add dropdown with parameter like:
PARAMETERS p_type TYPE but0id-type
AS LISTBOX VISIBLE LENGTH 30 .
Now i want to add my own values or some internal table to this parameter .how will i do it ?
Thanks in advance.
Points assured.
‎2008 Jun 17 9:37 AM
Hi,
Try like this
type-pools :vrm.
PARAMETERS p_type TYPE but0id-type
AS LISTBOX VISIBLE LENGTH 30 .
INITIALIZATION.
DATA : values TYPE vrm_values,
value LIKE LINE OF values.
DATA : id TYPE vrm_id VALUE 'P_TYPE'.
Assign key and text to values table
value-key =
value-text =
APPEND value TO values.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = id
values = values
EXCEPTIONS
ID_ILLEGAL_NAME = 1
OTHERS = 2.
.
‎2008 Jun 17 9:43 AM
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.
or check this....
TYPE-POOLS : vrm.
TABLES:vbak,vbap.
DATA : v(80) TYPE c.
DATA: wa_vbak TYPE vbak,
it_vbak TYPE vbak OCCURS 0 WITH HEADER LINE,
wa_vbap TYPE vbap,
it_vbap TYPE vbap OCCURS 0 WITH HEADER LINE.
DATA: l_name TYPE vrm_id,
li_list TYPE vrm_values ,
v_count TYPE i,
l_value LIKE LINE OF li_list.
PARAMETERS: p_test(20) AS LISTBOX VISIBLE LENGTH 60 MODIF ID DAT.
INITIALIZATION.
AT SELECTION-SCREEN OUTPUT.
PERFORM get_data.
LOOP AT it_vbak.
l_value-key = it_vbak-vbeln .
l_value-text = it_vbak-vbeln .
APPEND l_value TO li_list.
ENDLOOP.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_TEST'
values = li_list
EXCEPTIONS
id_illegal_name = 1
OTHERS = 2.
AT SELECTION-SCREEN ON P_TEST.
clear : li_list , li_list[].
SELECT vbeln
matnr
meins
FROM vbap
INTO CORRESPONDING FIELDS OF TABLE it_vbap
WHERE vbeln = p_test.
START-OF-SELECTION.
SELECT vbeln
matnr
meins
FROM vbap
INTO CORRESPONDING FIELDS OF TABLE it_vbap
WHERE vbeln = p_test.
LOOP AT it_vbap.
WRITE 😕 it_vbap-vbeln, it_vbap-matnr,it_vbap-meins.
ENDLOOP.
&----
*& Form get_Data
&----
text
----
--> p1 text
<-- p2 text
----
FORM get_data .
SELECT vbeln
FROM vbak
INTO CORRESPONDING FIELDS OF TABLE it_vbak.
ENDFORM. " get_Data
‎2008 Jun 17 9:45 AM
Hi,
You can have a drop down for parameters with the help of following code.
TYPE-POOLS: VRM.
DATA: NAME TYPE VRM_ID,
LIST TYPE VRM_VALUES,
VALUE LIKE LINE OF LIST.
PARAMETERS: P_NAME(10) AS LISTBOX VISIBLE LENGTH 10.
AT SELECTION-SCREEN OUTPUT.
NAME = 'P_NAME'.
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.This will surely help you,
Plz reward if useful.
Thanks,
Dhanashri.
‎2008 Jun 17 9:58 AM
Hi,
Check this Code
TYPE-POOLS : vrm.
SELECTION-SCREEN: BEGIN OF BLOCK B4 WITH FRAME TITLE TEXT-050.
PARAMETERS: TYPE(20) AS LISTBOX VISIBLE LENGTH 35.
SELECTION-SCREEN: END OF BLOCK B4.
DATA : NAME1 TYPE VRM_ID,
LIST1 TYPE VRM_VALUES,
VALUE LIKE LINE OF LIST1,
VALUE1 LIKE LINE OF LIST1.
AT SELECTION-SCREEN OUTPUT.
CLEAR LIST1. REFRESH LIST1.
NAME1 = TEXT-006.
VALUE1-KEY = '1'.
VALUE1-TEXT = '123456'.
APPEND VALUE1 TO LIST1.
VALUE1-KEY = '2'.
VALUE1-TEXT = 'abcde'.
APPEND VALUE1 TO LIST1.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
ID = 'TYPE' " type is input parameter field
VALUES = LIST1.
Reward if usefull
Thanks,
Durai.V