ABAP Code:MESSAGE IN SAP(ABAP) การเรียกใช้ MESSAGE ของ SAP ในรูปแบบต่างๆ

ABAP: MESSAGE IN SAP(ABAP) การเรียกใช้ MESSAGE ของ SAP ในรูปแบบต่างๆ

ABAP: MESSAGE IN SAP(ABAP) การเรียกใช้ MESSAGE ของ SAP ในรูปแบบต่างๆ

วัตถุประสงค์
– แสดงข้อความข้อผิดพลาดที่เกิดขึ้น ณ.เหตุการณ์ใด เหตุการณ์หนึ่ง เพื่อแจ้งให้ทราบถึงสิ่งที่ได้ทำต่อโปรแกรม ว่าดำเนินการไปถึงไหน หรือดำเนินถูกต้องหรือไม่ และให้แก้ไขสิ่งที่ทำ หรือดำเนินการต่อ

หลักการ

-กำหนด MESSAGE CLASS , กำหนด MESSAGE TYPE เพื่อเป็นตัวบ่งบอก ข้อความ หรือ ประเภทของข้อความ
-โดยสามารถ เข้าไป สร้าง/แก้ไข MESSAGE CLASS ได้ที่ T-CODE SE91 ( การสร้าง MESSAGE CLASS )
-ประเภท TYPE ของ MESSAGE
– Message Type – A (Abend) เป็น Type ที่แสดงข้อความแบบ Popup และมี ปุ่ม Exit ให้คลิก เพื่อเป็นการออกจากโปรแกรมที่ทำ
เหมาะสำหรับ การแจ้งเตือนข้อความ ที่ต้องการแจ้งแล้วให้ออกจากโปรแกรมทันที
– Message Type – E (Error) เป็น Type ที่แสดงข้อความที่บรรทัด Status Line โดยมีเครื่องหมายกากบาทสีแดง เพื่อบ่งบอกถึงสิ่งที่ทำผิด และจะไม่ให้ทำงานต่อ ถ้าไม่ทำให้ถูกต้องตามเงื่อนไขที่ได้กำหนด
เหมาะสำหรับ การแจ้งเตือนข้อความ ที่สำคัญมากต่อโปรแกรม
– Message Type – W (Warning) เป็น Type ที่แสดงข้อความที่บรรทัด Status Line โดยมีเครื่องหมายตกใจสีเหลือง เพื่อบ่งบอกถึงสิ่งที่ทำผิด หรือแจ้งเตือนปัญหา แต่สามารถทำงานต่อได้เพื่อกด Enter
เหมาะสำหรับ การแจ้งเตือนข้อความ ที่ไม่สำคัญ แบบว่าทำก็ได้ ไม่ทำก็ได้
– Message Type – I (Information) เป็น Type ที่แสดงข้อความแบบ Popup โดยเป็นการบอกข้อมูลธรรมดา และมีปุ่มให้ Check ถูก หรือ Enter เพื่อบ่งบอกถึงการรับทราบในสิ่งที่แจ้ง
เหมาะสำหรับ การแจ้งเตือนข้อความ ที่เป็นข้อมูลรายละเอียดต่างๆ
วิธีการ
-ให้เราทำการกำหนดคำสั่ง เรียกใช้ MESSAGE ไว้ หลัง เหตุการณ์ที่เราต้องการ
-การกำหนดคำสั่ง สามารถสั่ง ได้ 2 รูปแบบ
– แบบ MESSAGE CLASS ถ้ากำหนดแบบนี้ จะต้องประกาศ MESSAGE CLASS ที่หัวของ Report เช่น REPORT zlaprp001 MESSAGE-ID zz.
– แบบ Dynamic MESSAGE การกำหนดคำสั่ง จะต้อง ประกาศทั้งชื่อ MESSAGE CLASS ประเภท ของ MESSAGE ในคำสั่งด้วย

ตัวอย่าง

– แบบ MESSAGE CLASS

REPORT zlsdrp21
MESSAGE-ID zz .
DATA p_bukrs(4) TYPE c.
AT SELECTION-SCREEN ON p_bukrs.
IF p_bukrs EQ ”.
MESSAGE i000(38) WITH p_bukrs ‘No Data selection’.
ENDIF.

– แบบ Dynamic MESSAGE

DATA p_bukrs(4) TYPE c.
AT SELECTION-SCREEN ON p_bukrs.
IF p_bukrs EQ ”.
MESSAGE ID ‘ZZ’’ TYPE ‘I’ WITH ‘No Data selection’.
ENDIF.