2009 Mar 06 5:11 AM
Hello All ,
i am calling VRM_SET_VALUES for drop down list, by exporting the ID and VALUES.
total i am passing 6 values, so first time when i am in selection screen , it is displaying 6 values. fine ia m happy with this.
after executing the selection screen , if i come back, and see the drop down list , now this contains 7 values, the extra 7th value is what i selected first time. (so what i selected first time is now coming again, this entry is duplicated, now this entry is displaying at the bottom of the list , in capital letters). i dont want this extra entry, can some tell a way how to remove this.
P.S. i searched SDN , i dint find any problem releated this
Thanks in advance.
Best Regards,
Amarender Reddy B.
If the above issue is solved, Can you tell me what you have done for this?
2009 Mar 06 5:14 AM
Hi,
Try clearing the variables to be passed to the FM 'VRM_SET_VALUES ' at end-of-selection event.
Regards,
Mansi.
2009 Mar 06 5:15 AM
make sure of clearing the variables before passing to FM. I think you might have not done it and getting duplicate values.
2009 Mar 06 5:16 AM
Hi,
Refer code:-
TABLES : Y_MOVIE.
TYPE-POOLS: VRM.
TYPES : BEGIN OF MOVIE,
YR LIKE Y_MOVIE-YR,
CATEGORY LIKE Y_MOVIE-CATEGORY,
WINNER LIKE Y_MOVIE-WINNER,
NOTES LIKE Y_MOVIE-NOTES,
END OF MOVIE.
DATA: NAME TYPE VRM_ID,
LIST TYPE VRM_VALUES,
VALUE LIKE LINE OF LIST,
MOVIETAB TYPE STANDARD TABLE OF MOVIE INITIAL SIZE 10 WITH HEADER LINE.
PARAMETERS: CATEGORY(10) AS LISTBOX VISIBLE LENGTH 10.
AT SELECTION-SCREEN.
IF CATEGORY EQ ''.
MESSAGE E006.
ENDIF.
AT SELECTION-SCREEN OUTPUT.
NAME = 'CATEGORY'.
VALUE-KEY = 'PIC'.
VALUE-TEXT = 'PIC'.
APPEND VALUE TO LIST.
VALUE-KEY = 'MAL'.
VALUE-TEXT = 'MAL'.
APPEND VALUE TO LIST.
VALUE-KEY = 'FEM'.
VALUE-TEXT = 'FEM'.
APPEND VALUE TO LIST.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
ID = NAME
VALUES = LIST.
START-OF-SELECTION.
WRITE : / 'Category Selected :', CATEGORY.
ULINE.
SELECT *
FROM Y_MOVIE INTO CORRESPONDING FIELDS OF TABLE MOVIETAB
WHERE CATEGORY = CATEGORY.
END-OF-SELECTION.
WRITE : /1 'Year', 6 'Category', 16 'Winner', 50 'Notes'.
ULINE.
LOOP AT MOVIETAB.
WRITE : /1 MOVIETAB-YR, 8 MOVIETAB-CATEGORY, 16 MOVIETAB-WINNER, 50 MOVIETAB-NOTES.
ULINE.
ENDLOOP.
IF SY-SUBRC 0.
MESSAGE I005.
ENDIF.
Hope this helps you.
Regards,
Tarun
2009 Mar 06 5:19 AM
HI,
Have you written the code this way
TYPE-POOLS : vrm.
PARAMETERS p_TEST(3) AS LISTBOX VISIBLE LENGTH 5 DEFAULT 'YES'.
DATA: g_name TYPE vrm_id,
g_list TYPE vrm_values,
g_value LIKE LINE OF g_list.
AT SELECTION-SCREEN OUTPUT.
CLEAR: g_value, g_list.
g_value-key = 'YES'.
g_value-text = 'YES'.
APPEND g_value TO g_list.
g_value-key = 'NO'.
g_value-text = 'NO'.
APPEND g_value TO g_list.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_TEST'
values = g_list.
2009 Mar 06 5:21 AM
AT SELECTION-SCREEN OUTPUT.
*******Just Clear your Value List,
Clear LIST[].
NAME = 'CATEGORY'.
VALUE-KEY = 'PIC'.
VALUE-TEXT = 'PIC'.
APPEND VALUE TO LIST.
VALUE-KEY = 'MAL'.
VALUE-TEXT = 'MAL'.
APPEND VALUE TO LIST.
VALUE-KEY = 'FEM'.
VALUE-TEXT = 'FEM'.
APPEND VALUE TO LIST.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
ID = NAME
VALUES = LIST.
in case if problem is not solve please post your code so we will solution soon
2009 Mar 06 10:07 AM
Hi,
Basically you must code must have
1) A Select Statement that populates values to an internal table (lit_table)
2) Set values to display with :
DATA lit_values TYPE vrm_values WITH HEADER LINE.
REFRESH lit_table, lit_values. "important
LOOP AT lit_table INTO ls_line.
lit_values-text = ls_line-text.
lit_values-key = ls_line-skey.
APPEND lit_values.
ENDLOOP.
* Set corresponding values
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'screenfield reference'
values = lit_values[]
EXCEPTIONS
id_illegal_name = 1
OTHERS = 2.
Cheers,
Remi
2020 May 04 8:03 AM
If the above issue is solved, Can you tell me what you have done for this?
2025 Jul 30 6:55 AM
Clear parameter passed as id in FM 'VRM_SET_VALUES' after use.
PARAMETERS : P_OBJ(2) AS LISTBOX VISIBLE LENGTH 5.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_OBJ'
values = lt_values
EXCEPTIONS
id_illegal_name = 1
others = 2.
Clear : P_OBJ.
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |