‎2008 Mar 03 4:14 PM
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
‎2008 Mar 03 4:23 PM
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.
‎2008 Mar 03 4:18 PM
‎2008 Mar 03 4:23 PM
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.
‎2008 Mar 03 5:05 PM
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
‎2008 Mar 03 7:18 PM
‎2008 Mar 03 4:24 PM
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.
‎2008 Mar 03 4:26 PM
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
‎2008 Mar 03 4:33 PM
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.