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

Using FM F4IF_INT_TABLE_VALUE_REQUEST

Former Member
0 Likes
2,082

Hi,

I have to display F4 help. I am using above FM.

I have selected 3 fields from database table using select query.

SELECT version

var_name

lang FROM DBTABLE

INTO TABLE lt_variant

WHERE id = gf_id.

I want to display these all the value fetched from table as F4 help. Screen of F4 help should show all the 3 fields selected from table.

How should it be done.

<REMOVED BY MODERATOR>

Regards

Edited by: Alvaro Tejada Galindo on Mar 3, 2008 11:15 AM

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,295

TYPES: BEGIN OF TY_SPFLI,
       CARRID TYPE SPFLI-CARRID,
       CONNID TYPE SPFLI-CONNID,
       COUNTRYFR TYPE SPFLI-COUNTRYFR,
       END OF TY_SPFLI.

DATA: RETURN_TAB TYPE STANDARD TABLE OF DDSHRETVAL,
      T_SPFLI TYPE STANDARD TABLE OF TY_SPFLI.

SELECTION-SCREEN BEGIN OF BLOCK TEST.
PARAMETERS:
           P_COUNFR TYPE SPFLI-COUNTRYFR.
SELECTION-SCREEN END OF BLOCK TEST.

INITIALIZATION.
SELECT CARRID CONNID COUNTRYFR
INTO TABLE T_SPFLI
FROM SPFLI.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_COUNFR.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
  EXPORTING
    retfield              = 'COUNTRYFR'
    VALUE_ORG             = 'S'
  tables
    value_tab             = T_SPFLI
    RETURN_TAB            = return_tab
 EXCEPTIONS
   PARAMETER_ERROR        = 1
   NO_VALUES_FOUND        = 2
   OTHERS                 = 3.

You can read RETURN_TAB for the selected value...

Greetings,

Blag.

7 REPLIES 7
Read only

Former Member
0 Likes
1,295

Hi,

Check this out

http://abapexperts.com/blog/

Regards,

Santosh

Read only

Former Member
0 Likes
1,296

TYPES: BEGIN OF TY_SPFLI,
       CARRID TYPE SPFLI-CARRID,
       CONNID TYPE SPFLI-CONNID,
       COUNTRYFR TYPE SPFLI-COUNTRYFR,
       END OF TY_SPFLI.

DATA: RETURN_TAB TYPE STANDARD TABLE OF DDSHRETVAL,
      T_SPFLI TYPE STANDARD TABLE OF TY_SPFLI.

SELECTION-SCREEN BEGIN OF BLOCK TEST.
PARAMETERS:
           P_COUNFR TYPE SPFLI-COUNTRYFR.
SELECTION-SCREEN END OF BLOCK TEST.

INITIALIZATION.
SELECT CARRID CONNID COUNTRYFR
INTO TABLE T_SPFLI
FROM SPFLI.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_COUNFR.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
  EXPORTING
    retfield              = 'COUNTRYFR'
    VALUE_ORG             = 'S'
  tables
    value_tab             = T_SPFLI
    RETURN_TAB            = return_tab
 EXCEPTIONS
   PARAMETER_ERROR        = 1
   NO_VALUES_FOUND        = 2
   OTHERS                 = 3.

You can read RETURN_TAB for the selected value...

Greetings,

Blag.

Read only

0 Likes
1,295

Hi,

i used this code..

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = 'VAR_NAME'

VALUE_ORG = 'S'

TABLES

value_tab = lt_variant

return_tab = lt_ireturn

EXCEPTIONS

parameter_error = 1

no_values_found = 2

OTHERS = 3.

READ TABLE lt_ireturn

WITH KEY fieldname = 'VAR_NAME'.

IF sy-subrc EQ 0.

F4 help is displayes properly, but in return table i am not getting 'VAR_NAME' as field name. istead i am geting fieldname = F0001. What is the reason for this?

Will it always come as F1. i think it should come as VAR_NAME.

Regards

Read only

0 Likes
1,295

You get the value on RETURN_TAB-FIELDVAL

Greetings,

Blag.

Read only

rahulkavuri
Active Contributor
0 Likes
1,295

Here i am getting the code from the Ztable into a internal table and then displaying the results on F4 help..

DATA: BEGIN OF TEMP_ITAB OCCURS 0,

ST_CODE LIKE ZEXCH-STOCK, “STOCK CODE

ST_NAME LIKE ZEXCH-ST_NAME, “STOCK NAME

CURRPR LIKE ZEXCH-CURRPR, “CURRENT PRICE OF THE STOCK

END OF TEMP_ITAB.

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.

  • SEARCH FOR REQUESTED VALUE FROM TABLE ZEXCH AND DISPLAY VALUES OF STOCK * * * * AVAILABLE IN THE SELECTED STOCK EXCHANGE

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.

Read only

Former Member
0 Likes
1,295

Hi,

Use tables parameter value_tab and field_tab for this purpose.

  • Value_tab should contain your table entries to be diplayed in F4.

DATA: BEGIN OF value_tab OCCURS 100,

feld1(40),

feld2(40),

feld3(40),

END OF value_tab.

DATA: BEGIN OF fieldtab_rt OCCURS 20.

INCLUDE STRUCTURE dfies. "field for ddif_fieldinfo_get

DATA: END OF fieldtab_rt.

fieldtab_rt-tabname = <TABLE NAME>.

fieldtab_rt-fieldname = <FIELD NAME1>.

APPEND fieldtab_rt.

fieldtab_rt-tabname = <TABLE NAME>.

fieldtab_rt-fieldname = <FIELD NAME2>.

APPEND fieldtab_rt.

fieldtab_rt-tabname = <TABLE NAME>.

fieldtab_rt-fieldname = <FIELD NAME3>.

APPEND fieldtab_rt.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = 'P_PARAM'

window_title = 'Pot Manager/Delegate/HRBP'(m03)

multiple_choice = ' '

TABLES

value_tab = value_tab

field_tab = fieldtab_rt

return_tab = gt_returntab

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.

Cheers!!!

Lokesh

Edited by: Lokesh Aggarwal on Mar 3, 2008 4:34 PM

Read only

Former Member
0 Likes
1,295

Hi,

Please refer the below code:


DATA: return TYPE TABLE OF ddshretval WITH HEADER LINE.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_WERKS-LOW.
SELECT WERKS NAME1 INTO CORRESPONDING FIELDS OF TABLE KUNNSO_ITAB FROM T001W.
DELETE ADJACENT DUPLICATES FROM KUNNSO_ITAB.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
  RETFIELD = 'WERKS'
  DYNPPROG = SY-REPID
  DYNPNR = SY-DYNNR
  DYNPROFIELD = 'S_WERKS'
  VALUE_ORG = 'S'
  multiple_choice = 'X'
TABLES
  VALUE_TAB = KUNNSO_ITAB
  return_tab = return.

IF SY-SUBRC 0.
SORT return BY fieldval DESCENDING.

LOOP AT return.
S_WERKS-low = return-fieldval.
S_WERKS-option = 'EQ'.
S_WERKS-sign = 'I'.
S_WERKS-high = space.
APPEND S_WERKS.
ENDLOOP.

SORT S_WERKS BY low.
ENDIF.

Thanks,

Sriram Ponna.