F4 Help to the Input Variable on Screen:
F4IF_INT_TABLE_VALUE_REQUEST is function module which is used to provide the F4 help to the input variable.
The input for the above function module is
PROGRAM:
F4IF_INT_TABLE_VALUE_REQUEST is function module which is used to provide the F4 help to the input variable.
The input for the above function module is
PROGRAM:
*&---------------------------------------------------------------------*
*& Module Pool ZM_F4_HELP
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
PROGRAM ZM_F4_HELP.
DATA T001_BUKRS TYPE T001-BUKRS.
DATA: BEGIN OF WA_KNB1,
BUKRS TYPE KNB1-BUKRS,
KUNNR TYPE KNB1-KUNNR,
AKONT TYPE KNB1-AKONT,
END OF WA_KNB1.
DATA IT_KNB1 LIKE TABLE OF WA_KNB1.
DATA: BEGIN OF WA_T001,
BUKRS TYPE T001-BUKRS,
BUTXT TYPE T001-BUTXT,
END OF WA_T001.
DATA IT_T001 LIKE TABLE OF WA_T001.
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_9999 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE user_command_9999 INPUT.
IF SY-UCOMM = 'DIS'.
SELECT BUKRS KUNNR AKONT FROM KNB1 INTO TABLE IT_KNB1 WHERE
BUKRS = T001_BUKRS.
LEAVE TO LIST-PROCESSING.
LOOP AT IT_KNB1 INTO WA_KNB1.
WRITE:/ WA_KNB1-BUKRS, WA_KNB1-KUNNR, WA_KNB1-AKONT.
ENDLOOP.
ELSEIF SY-UCOMM = 'BACK'.
LEAVE PROGRAM.
ENDIF.
ENDMODULE. " USER_COMMAND_9999 INPUT
*&---------------------------------------------------------------------*
*& Module XYZ INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE xyz INPUT.
SELECT BUKRS BUTXT FROM T001 INTO TABLE IT_T001.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'BUKRS'
DYNPPROG = 'ZM__F4HELP'
DYNPNR = '9999'
DYNPROFIELD = 'T001_BUKRS'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = IT_T001.
ENDMODULE. " XYZ INPUT
*& Module Pool ZM_F4_HELP
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
PROGRAM ZM_F4_HELP.
DATA T001_BUKRS TYPE T001-BUKRS.
DATA: BEGIN OF WA_KNB1,
BUKRS TYPE KNB1-BUKRS,
KUNNR TYPE KNB1-KUNNR,
AKONT TYPE KNB1-AKONT,
END OF WA_KNB1.
DATA IT_KNB1 LIKE TABLE OF WA_KNB1.
DATA: BEGIN OF WA_T001,
BUKRS TYPE T001-BUKRS,
BUTXT TYPE T001-BUTXT,
END OF WA_T001.
DATA IT_T001 LIKE TABLE OF WA_T001.
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_9999 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE user_command_9999 INPUT.
IF SY-UCOMM = 'DIS'.
SELECT BUKRS KUNNR AKONT FROM KNB1 INTO TABLE IT_KNB1 WHERE
BUKRS = T001_BUKRS.
LEAVE TO LIST-PROCESSING.
LOOP AT IT_KNB1 INTO WA_KNB1.
WRITE:/ WA_KNB1-BUKRS, WA_KNB1-KUNNR, WA_KNB1-AKONT.
ENDLOOP.
ELSEIF SY-UCOMM = 'BACK'.
LEAVE PROGRAM.
ENDIF.
ENDMODULE. " USER_COMMAND_9999 INPUT
*&---------------------------------------------------------------------*
*& Module XYZ INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE xyz INPUT.
SELECT BUKRS BUTXT FROM T001 INTO TABLE IT_T001.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'BUKRS'
DYNPPROG = 'ZM__F4HELP'
DYNPNR = '9999'
DYNPROFIELD = 'T001_BUKRS'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = IT_T001.
ENDMODULE. " XYZ INPUT
SCREEN:
PROCESS BEFORE OUTPUT.
* MODULE STATUS_9999.
PROCESS AFTER INPUT.
MODULE USER_COMMAND_9999.
PROCESS ON HELP-REQUEST.FIELD T001_BUKRS MODULE XYZ.
* MODULE STATUS_9999.
PROCESS AFTER INPUT.
MODULE USER_COMMAND_9999.
PROCESS ON HELP-REQUEST.FIELD T001_BUKRS MODULE XYZ.
OUTPUT:
click on F4