SAP Function Modules

Share |

F4IF_FIELD_VALUE_REQUEST SAP Function module - F4 help for fields that are only known at runtime

F4IF_FIELD_VALUE_REQUEST is a standard SAP function module that performs F4 help for fields that are only known at runtime functionality. This is available within standard R/3 SAP systems depending on version and release level.

Below are the pattern details for this FM showing its interface including any import, export and tables parameters. There is also a list of Exceptions and for your convenience any standard documentation available. All this information and more can also be viewed if you enter the function module name F4IF_FIELD_VALUE_REQUEST into the relevant SAP transaction such as SE37 or SE80.

Contribute (Add Comments)
Within the comments section below there is also an opportunity for you to add useful hints, tips and information specific to this SAP function. This will then be available for you and other users to easily find by simply searching on the object name F4IF_FIELD_VALUE_REQUEST or its description.

Associated Function Group: SDHI
Released Date: 27.05.1999
CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST' "F4 help for fields that are only known at runtime
    tabname =                   " dfies-tabname  Table/structure name from Dictionary
    fieldname =                 " dfies-fieldname  Field name from Dictionary
*   searchhelp = SPACE          " shlpname      Search help as screen field attribute
*   shlpparam = SPACE           " shlpfield     Search help parameter in screen field
*   dynpprog = SPACE            " sy-repid      Current program
*   dynpnr = SPACE              " sy-dynnr      Screen number
*   dynprofield = SPACE         " help_info-dynprofld  Name of screen field for value return
*   stepl = 0                   " sy-stepl      Steploop line of screen field
*   value = SPACE               " help_info-fldvalue  Field contents for F4 call
*   multiple_choice = SPACE     " ddbool_d      Switch on multiple selection
*   display = SPACE             " ddbool_d      Override readiness for input
*   suppress_recordlist = SPACE  " ddshf4ctrl-hide_list  Skip display of the hit list
*   callback_program = SPACE    " sy-repid      Program for callback before F4 start
*   callback_form = SPACE       " sy-xform      Form for callback before F4 start (-> long docu)
*   callback_method =           " if_f4callback_value_request  Interface for Callback Routines
*   selection_screen = SPACE    " ddbool_d      Behavior as in Selection Screen (->Long Docu)
    user_reset =                " c             Single-Character Flag
*   return_tab =                " ddshretval    Return the selected value
    FIELD_NOT_FOUND = 1         "               Field does not exist in the Dictionary
    NO_HELP_FOR_FIELD = 2       "               No F4 help is defined for the field
    INCONSISTENT_HELP = 3       "               F4 help for the field is inconsistent
    NO_VALUES_FOUND = 4         "               No values found



This module permits the implementation of the standard help for a screen field whose reference to the ABAP Dictionary is only known at runtime.
If the module is called at the time PROCESS ON VALUE REQUEST, it behaves just like the standard help.
The reference to the ABAP Dictionary is needed in the form of the table and field names as input.
The module then determines the search help defined directly or indirectly in the Dictionary (e.g. also domain fixed values). If several parameters of the search help are linked with the Dictionary table or structure, the additional fields are searched for on the screen, as for the standard help, and the parameters are given their contents. The standard F4 process is then started. Depending on the user settings, this can also be implemented with the input help Control.
In addition to specifying the table and field names, you have the following alternatives:
  • Parameter TABNAME is assigned a data element (type). FIELDNAME is empty.

  • The search help (SEARCHHELP) is specified directly. In this case you should also pass the search help parameter (SHLPPARAM), which is used as return parameter. (For reasons of compatibility, you can also define only SEARCHHELP. In this case the first parameter of the search help is used as default for SHLPPARAM.)

  • If the screen information DYNPPROG, DYNPNR, DYNPROFIELD and possibly STEPL is also specified, the selected value is automatically stored in the screen field. Further export parameters are also stored there if they are found as input fields on the screen.
    If the user activated the ActiveX help, the help is started amodally under the following conditions:
    1. The screen information DYNPROG, DYNPNR and DYNPROFIELD must be
    2. When the function module is called, the RETURN_TAB may not be
    specified. (If the call is amodal, the function module returns before
    the user has specified a value.)
    Normally values are only returned in input fields. This behavior can be influenced with the parameter DISPLAY (see parameter documentation).
    (At the moment it is not possible to determine if it is ready for input. Development or correction of the screen area is necessary).



    The input help key should only be activated in a screen field if there is actually an input help available. To find out if there is an input help for the Dictionary field, you can read the field information with module DDIF_NAMETAB_GET. Field F4AVAILABL in structure DFIES tells you if there is an input help available.
    Previously you had to assign DYNPPROG and DYNNR the contents of SY-REPID and SY-DYNNR. However, for subscreens this information is not sufficient to uniquely define the screen. For reasons of compatibility the current screen is now determined internally as soon as DYNPPROG, DYNNR and DYNPROFIELD are passed and are not equal to SPACE. The actual contents are no longer important, but you are nevertheless advised to pass meaningful values to ensure the readability of the programs.
    The value for STEPL is outside a step loop 0. The current row can be stored within a step loop at time POV with the function module DYNP_GET_STEPL.
    If you do not want to return the selected value automatically, you should not define parameters DYNPROG and DYNNR. At the moment values are not returned if MULTIPLE_SELECTION is selected either, but this could change in the future.

    Note that documentation about some of the parameters is also available.
    Documentation extract taken from SAP system, Copyright (c) SAP AG

    comments powered by Disqus