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

AT SELECTION-SCREEN ON VALUE-REQUEST

Former Member
0 Likes
760

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....

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
700

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.

5 REPLIES 5
Read only

Former Member
0 Likes
701

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.

Read only

rahulkavuri
Active Contributor
0 Likes
700

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>

Read only

Former Member
0 Likes
700

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

Read only

Former Member
Read only

Former Member
0 Likes
700

hello all....thanks all for your valuable advices.....points rewarded....