Value Help (F4 Help) provides users with a list of valid input values for a field to ensure accurate data entry.
Types of Value Help:
Automatic Value Help
Provided by the data element (via domain fixed values or check tables).
No coding needed.
Search Help (SE11)
Defined in Data Dictionary.
Can be reused across fields.
Manual/Programmatic Value Help
Custom logic using PROCESS ON VALUE-REQUEST and function modules like F4IF_INT_TABLE_VALUE_REQUEST.
Used when standard or search help is not enough.
*&---------------------------------------------------------------------*
*&---------------------------------------------------------------------*
*& Report ZPRG_TEST
*&---------------------------------------------------------------------*
REPORT zprg_test_ecc.
DATA : it_return TYPE TABLE OF ddshretval.
PARAMETERS : s_id TYPE ZAR_STUDENT_ID.
AT SELECTION-SCREEN ON s_id.
SELECT SINGLE student_id FROM zar_student_data INTO @DATA(id).
IF id IS INITIAL.
MESSAGE 'Student ID not found' TYPE 'E'.
ENDIF.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR s_id.
SELECT STUDENT_ID FROM zar_student_data INTO TABLE @DATA(lt_studentids).
IF sy-subrc = 0.
SORT lt_studentids.
ENDIF.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'STUDENT_ID'
value_org = 'S'
TABLES
value_tab = lt_studentids
return_tab = it_return
EXCEPTIONS
parameter_error = 1
no_values_found = 2
OTHERS = 3.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
LOOP AT it_return ASSIGNING FIELD-SYMBOL(<lw_return>).
s_id = <lw_return>-fieldval.
ENDLOOP.
START-OF-SELECTION.
SELECT * FROM zar_student_data INTO TABLE @DATA(lc_it_zlib) WHERE STUDENT_ID = @s_id.
LOOP AT lc_it_zlib INTO DATA(wa_zlib).
WRITE (22) : wa_zlib-student_id, wa_zlib-student_fname.
SKIP.
ENDLOOP.
Output:
click on any of the value.