‎2007 May 09 7:37 AM
Hi all,
For F4 help i am using FM'HELP_VALUES_GET_WITH_TABLE'.But it is obsolete.
Please reply with proper Fm's which work as same for F4 help.
Thanks in advance.
SAKR.
‎2007 May 09 7:48 AM
hi,
use FM 'F4IF_INT_TABLE_VALUE_REQUEST'
Check this....
TABLES: mara, makt.
DATA mat LIKE mara-matnr.
DATA: BEGIN OF itab OCCURS 0,
matnr LIKE mara-matnr,
END OF itab.
DATA : BEGIN OF btab OCCURS 0,
maktx LIKE makt-maktx,
END OF btab.
DATA : return LIKE ddshretval OCCURS 0 WITH HEADER LINE.
SELECT-OPTIONS: so_matnr FOR mara-matnr,
so_maktx FOR makt-maktx.
INITIALIZATION.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_matnr-low.
PERFORM matnr.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_matnr-high.
PERFORM matnr.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_maktx-low.
PERFORM maktx.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_maktx-high.
PERFORM maktx.
&----
*& Form matnr
&----
text
----
FORM matnr.
REFRESH itab.
SELECT matnr FROM mara INTO TABLE itab.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'MATNR '
dynprofield = 'P_MATNR '
dynpprog = sy-repid
dynpnr = sy-dynnr
value_org = 'S'
TABLES
value_tab = itab
return_tab = return.
mat = return-fieldval.
UNPACK mat TO mat.
so_matnr = return-fieldval.
REFRESH return.
CLEAR return.
ENDFORM. "matnr
&----
*& Form maktx
&----
FORM maktx.
REFRESH btab.
SELECT maktx FROM makt INTO TABLE btab WHERE matnr = mat AND spras =
sy-langu.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'MAKTX'
dynprofield = 'SO_MAKTX '
dynpprog = sy-repid
dynpnr = sy-dynnr
value_org = 'S'
TABLES
value_tab = btab
return_tab = return.
so_maktx = return-fieldval.
REFRESH return.
CLEAR return.
ENDFORM. "maktx
if helpful reward points
‎2007 May 09 7:43 AM
Hi Sakr,
In the Module value_request_for_field_name call this Function Module 'F4IF_INT_TABLE_VALUE_REQUEST'.
Hope this resolves your query.
<b>Reward all the helpful answers.</b>
Regards
‎2007 May 09 7:44 AM
Hi,
try these
F4IF_CHOOSE_SEARCHHELP
F4IF_DETERMINE_SEARCHHELP
F4IF_EXPAND_SEARCHHELP
Reward points if useful..
Regards
Nilesh
‎2007 May 09 7:45 AM
See the following ex:
TYPES: BEGIN OF TY_MBLNR,
MBLNR LIKE MKPF-MBLNR,
END OF TY_MBLNR.
data: it_ret like ddshretval occurs 0 with header line.
DATA: IT_MBLNR TYPE STANDARD TABLE OF TY_MBLNR WITH HEADER LINE.
At selection-screen on value-request for s_mat-low.
Select MBLNR from mkpf into table it_mblnr.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
RETFIELD = 'MBLNR'
PVALKEY = ' '
DYNPPROG = ' '
DYNPNR = ' '
DYNPROFIELD = ' '
STEPL = 0
WINDOW_TITLE =
VALUE = ' '
VALUE_ORG = 'S'
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
MARK_TAB =
IMPORTING
USER_RESET =
TABLES
VALUE_TAB = IT_MBLNR
FIELD_TAB =
RETURN_TAB = IT_RET
DYNPFLD_MAPPING =
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.
IF SY-SUBRC = 0.
read table it_ret index 1.
move it_ret-fieldval to S_mat-low.
ENDIF.
At selection-screen on value-request for s_mat-high.
Select MBLNR from mkpf into table it_mblnr.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
DDIC_STRUCTURE = ' '
RETFIELD = 'MBLNR'
PVALKEY = ' '
DYNPPROG = ' '
DYNPNR = ' '
DYNPROFIELD = ' '
STEPL = 0
WINDOW_TITLE =
VALUE = ' '
VALUE_ORG = 'S'
MULTIPLE_CHOICE = ' '
DISPLAY = ' '
CALLBACK_PROGRAM = ' '
CALLBACK_FORM = ' '
MARK_TAB =
IMPORTING
USER_RESET =
TABLES
VALUE_TAB = IT_MBLNR
FIELD_TAB =
RETURN_TAB = IT_RET
DYNPFLD_MAPPING =
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.
IF SY-SUBRC = 0.
read table it_ret index 1.
move it_ret-fieldval to S_mat-high.
ENDIF.
‎2007 May 09 7:48 AM
hi,
use FM 'F4IF_INT_TABLE_VALUE_REQUEST'
Check this....
TABLES: mara, makt.
DATA mat LIKE mara-matnr.
DATA: BEGIN OF itab OCCURS 0,
matnr LIKE mara-matnr,
END OF itab.
DATA : BEGIN OF btab OCCURS 0,
maktx LIKE makt-maktx,
END OF btab.
DATA : return LIKE ddshretval OCCURS 0 WITH HEADER LINE.
SELECT-OPTIONS: so_matnr FOR mara-matnr,
so_maktx FOR makt-maktx.
INITIALIZATION.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_matnr-low.
PERFORM matnr.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_matnr-high.
PERFORM matnr.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_maktx-low.
PERFORM maktx.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_maktx-high.
PERFORM maktx.
&----
*& Form matnr
&----
text
----
FORM matnr.
REFRESH itab.
SELECT matnr FROM mara INTO TABLE itab.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'MATNR '
dynprofield = 'P_MATNR '
dynpprog = sy-repid
dynpnr = sy-dynnr
value_org = 'S'
TABLES
value_tab = itab
return_tab = return.
mat = return-fieldval.
UNPACK mat TO mat.
so_matnr = return-fieldval.
REFRESH return.
CLEAR return.
ENDFORM. "matnr
&----
*& Form maktx
&----
FORM maktx.
REFRESH btab.
SELECT maktx FROM makt INTO TABLE btab WHERE matnr = mat AND spras =
sy-langu.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'MAKTX'
dynprofield = 'SO_MAKTX '
dynpprog = sy-repid
dynpnr = sy-dynnr
value_org = 'S'
TABLES
value_tab = btab
return_tab = return.
so_maktx = return-fieldval.
REFRESH return.
CLEAR return.
ENDFORM. "maktx
if helpful reward points
‎2007 May 09 7:52 AM
Hi,
Try using the follwing Func Mod.
<b>F4_IF_FIELD_VALUE_REQUEST</b> : Use values from a DDIC table to provide a list of possible values. TABNAME and FIELDNAME are required fields, and when MULTIPLE_CHOICE is selected, more than one value can be returned.
<b>
F4IF_INT_TABLE_VALUE_REQUEST</b>: F4 help that returns the values selected in an internal table. Very handy when programming your very own F4 help for a field.
<b>F4IF_SHLP_EXIT_EXAMPLE</b>: documents the different reasons to use a search help exit, and shows how it is done.
<b>
F4IP_INT_TABLE_VALUE_REQUEST</b> :This function does not exist in 4.6 and above. Use F4IF_INT_TABLE_VALUE_REQUEST instead.
Hope this helps.
****Reward points if useful.
‎2007 May 09 7:59 AM
hi Sakr,
Use FM VRM_GET_VALUES give the required import and export parameters and you will be able to provide the F4 help in your screen-field .
if you need sample progarm or code then let me know ...
Regards,
Ranjita
‎2007 May 09 9:39 AM
----
Selection Screen *
----
SELECTION-SCREEN BEGIN OF BLOCK b01.
SELECTION-SCREEN BEGIN OF BLOCK b11 WITH FRAME TITLE text-b11.
PARAMETERS : p_local AS CHECKBOX DEFAULT 'X' MODIF ID grp,
p_output LIKE rlgrap-filename OBLIGATORY MODIF ID grp.
DEFAULT c_file. D-RD1K907385
SELECTION-SCREEN END OF BLOCK b11.
SELECTION-SCREEN BEGIN OF BLOCK b12 WITH FRAME TITLE text-b12.
SELECT-OPTIONS : s_paobjn FOR ykpcat_paobjnr-paobjnr MODIF ID mod,
s_type FOR ykpcat_paobjnr-type MODIF ID mod.
SELECTION-SCREEN END OF BLOCK b12.
SELECTION-SCREEN END OF BLOCK b01.
SELECTION-SCREEN BEGIN OF BLOCK b02 WITH FRAME TITLE text-b02.
PARAMETERS : p_delws RADIOBUTTON GROUP rd1 USER-COMMAND flag,
p_modify RADIOBUTTON GROUP rd1 DEFAULT 'X',
p_delete RADIOBUTTON GROUP rd1 .
SELECTION-SCREEN END OF BLOCK b02.
----
AT SELECTION-SCREEN *
----
*--Providing F4 help for the Profitability Segment Number.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_paobjn-low.
PERFORM execute_f4help_field.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_paobjn-high.
PERFORM execute_f4help_field.
&----
*& Form execute_f4help_field
&----
Form Called for search help to the field Profitability
Segment Number
----
FORM execute_f4help_field .
*--Populating the internal table with only the Profitability segment
*--Numbers(PAOBJNR)
SELECT paobjnr
FROM ykpcat_paobjnr
INTO CORRESPONDING FIELDS OF TABLE t_ykpcat_paobjnr_help.
*--Function called for F4 help on Profitability Segment Number(PAOBJNR)
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'PAOBJNR'
dynpprog = sy-repid
dynpnr = sy-dynnr
dynprofield = 'S_PAOBJN'
value_org = 'S'
TABLES
value_tab = t_ykpcat_paobjnr_help.
ENDFORM. " execute_f4help_field
Reward if helpful..
Sharadendu
‎2007 May 09 9:59 AM