‎2007 Feb 06 12:18 PM
hi Could anybody please advice me,
(1) when press F4 key for value request....how can I get few specific values from dbtable. Ex: if db having values as 1,2,3,4,5. but I want to display only 2,3,4 when press f4 for value request.
(2) how to pass values manually when press for values request...Ex: when press f4 for values , has to display some manual values which we specify...as 1,2,3.
Thanks in advance....
‎2007 Feb 06 12:29 PM
Hi,
you could use a search help exit. Thie standard search help 'I_STATUS' usses this as well to display different values depending on the calling report etc.
So creat your custom searchhelp and implement an exit or copy a standard one and implement.
Cheers,
Kevin.
‎2007 Feb 06 12:29 PM
Hi,
you could use a search help exit. Thie standard search help 'I_STATUS' usses this as well to display different values depending on the calling report etc.
So creat your custom searchhelp and implement an exit or copy a standard one and implement.
Cheers,
Kevin.
‎2007 Feb 06 12:33 PM
for ur first question on how to display selected values, select the values u want to display into an internal table say TEMP_ITAB.
Now when the user requests for value u can display only the values which u want to
AT SELECTION-SCREEN ON VALUE-REQUEST FOR ST_NAME.
SELECT STOCK ST_NAME
CURRPR
FROM
ZEXCH
INTO TABLE TEMP_ITAB
WHERE EXCH = FIELD_VALUE-FIELDVALUE.
<b>delete temp_itab index 1.</b>
***DISPLAY VALUES OF STOCK * * * *
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'ST_NAME'
DYNPPROG = SY-CPROG
DYNPNR = SY-DYNNR
DYNPROFIELD = 'ST_NAME'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = TEMP_ITAB
RETURN_TAB = RETURN.
For ur second question-----In the table temp_itab you can populate values manually by appending values into the internal table
DATA: BEGIN OF TEMP_ITAB OCCURS 0,
ST_CODE LIKE ZEXCH-STOCK,
ST_NAME LIKE ZEXCH-ST_NAME,
CURRPR LIKE ZEXCH-CURRPR,
END OF TEMP_ITAB.
temp_itab-st_code = 'EN'.
temp_itab-st_name = 'TRYUAI'.
temp_itab-currpr = '90'.
append temp_itab.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'ST_NAME'
DYNPPROG = SY-CPROG
DYNPNR = SY-DYNNR
DYNPROFIELD = 'ST_NAME'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = TEMP_ITAB
RETURN_TAB = RETURN.
<b>dont forget to award points if found helpful</b>
‎2007 Feb 06 12:39 PM
Hi BR,
here a short example to make an own F4:
TABLES: MARA.
*
PARAMETERS: P_MATNR LIKE MARA-MATNR.
*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_MATNR.
*
DATA: BEGIN OF VALUE_TAB OCCURS 0,
VALUE(30),
END OF VALUE_TAB.
*
DATA: BEGIN OF FIELD_TAB OCCURS 0.
INCLUDE STRUCTURE DFIES.
DATA END OF FIELD_TAB.
*
DATA: BEGIN OF RETURN_TAB OCCURS 0.
INCLUDE STRUCTURE DDSHRETVAL.
DATA END OF RETURN_TAB.
*
FIELD_TAB-FIELDNAME = 'MTART'.
FIELD_TAB-INTLEN = 10.
FIELD_TAB-OUTPUTLEN = 10.
FIELD_TAB-SCRTEXT_M = 'Materialart'.
FIELD_TAB-LOWERCASE = 'X'.
APPEND FIELD_TAB.
*
FIELD_TAB-FIELDNAME = 'MATNR'.
FIELD_TAB-INTLEN = 18.
FIELD_TAB-OUTPUTLEN = 18.
FIELD_TAB-SCRTEXT_M = 'Materialummer'.
FIELD_TAB-LOWERCASE = 'X'.
APPEND FIELD_TAB.
*
SELECT * FROM MARA UP TO 10 ROWS.
VALUE_TAB-VALUE = MARA-MTART.
APPEND VALUE_TAB.
VALUE_TAB-VALUE = MARA-MATNR.
APPEND VALUE_TAB.
ENDSELECT.
*
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'MATNR'
WINDOW_TITLE = 'Materialnummernselection'
TABLES
VALUE_TAB = VALUE_TAB
FIELD_TAB = FIELD_TAB
RETURN_TAB = RETURN_TAB
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3.
*
IF SY-SUBRC <> 0.
MESSAGE I010 WITH SY-SUBRC.
ELSE.
P_MATNR = RETURN_TAB-FIELDVAL.
ENDIF.
*
regards, Dieter
‎2007 Feb 06 12:40 PM
‎2007 Feb 06 12:58 PM
hello all....thanks all for your valuable advices.....points rewarded....