ABAP Code:ทำ input value แบบ F4 HELP โดยดึงข้อมูลจาก Table

ABAP Code:ทำ input value แบบ F4 HELP โดยดึงข้อมูลจาก Table

ABAP Code:ทำ input value แบบ F4 HELP โดยดึงข้อมูลจาก Table

บันทึกไว้กันลืมไม่มีอะไรมาก แค่ Code สำหรับ ทำ input value แบบ F4 CodeHELP โดยดึงข้อมูลจาก Table โดยประกอบไปด้วย


หลักๆ ไม่มีอะไรมาก

เริ่มที่ประกาศตัวแปร

*---------------------------------------------------------------------*
* D A T A *
*---------------------------------------------------------------------*
DATA: BEGIN OF W_VALUE,
CLASS TYPE KLAH-CLASS,
END OF W_VALUE.

DATA: T_VALUE LIKE TABLE OF W_VALUE WITH HEADER LINE.

หลังจากนั้นสร้าง input value

*---------------------------------------------------------------------*
* S E L E C T I O N S *
*---------------------------------------------------------------------*
SELECTION-SCREEN BEGIN OF BLOCK BK01 WITH FRAME TITLE TEXT-B01.
SELECT-OPTIONS:
S_CLASS FOR KLAH-CLASS.
SELECTION-SCREEN END OF BLOCK BK01.

แล้วก็มากำหนด event ของมัน

*---------------------------------------------------------------------*
* A T S E L E C T I O N S C R E E N *
*---------------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_CLASS-LOW.
PERFORM PF_GET_STATION_VALUE.
PERFORM PF_OBJTYPE_F4_HELP_REQUEST.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_CLASS-HIGH.
PERFORM PF_GET_STATION_VALUE.
PERFORM PF_OBJTYPE_F4_HELP_REQUEST.

ข้างล่างนี้ ก็ perform ดึงข้อมูลจากเทเบิลที่เราต้องการ เอามาใส่ใน ตัวแปรตามที่เรากำหนดชนิด

*---------------------------------------------------------------------*
* Form PF_GET_STATION_VALUE
*---------------------------------------------------------------------*
FORM PF_GET_STATION_VALUE .

SELECT DISTINCT CLASS INTO TABLE T_VALUE
FROM KLAH.

ENDFORM. " PF_GET_STATION_VALUE

ส่วนนี้ ก็เอาข้อมูลที่เราดึงมา มายัดใส่เข้าไปใน function ‘F4IF_INT_TABLE_VALUE_REQUEST’
เป็นอันเสร็จสิ้นเรียบร้อย โรงเรียนจีน

*---------------------------------------------------------------------*
* Form PF_OBJTYPE_F4_HELP_REQUEST
*---------------------------------------------------------------------*
*----------------------------------------------------------------------*
FORM PF_OBJTYPE_F4_HELP_REQUEST .
DATA: DYNPROG LIKE SY-REPID,
DYNNR LIKE SY-DYNNR.

DYNPROG = SY-REPID.
DYNNR = SY-DYNNR.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = 'CLASS'
DYNPPROG = DYNPROG
DYNPNR = DYNNR
DYNPROFIELD = 'S_CLASS'
* window_title = window_title
VALUE_ORG = 'S'
* callback_program = dynprog
* callback_form = 'F4CALLBACK'
TABLES
VALUE_TAB = T_VALUE
* return_tab = ret_tab
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3.

IF SY-SUBRC = 0.
ENDIF.

ENDFORM. " PF_OBJTYPE_F4_HELP_REQUEST