ABAP Code

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:How to Display variant F4 on screen Report

โดยส่วนมาก ถ้า Report เป็นประเภท Report ALV จะต้องสามารถ ทำให้บันทึก Layout ของ ALV ได้ และเมื่อบันทึกได้ ก็ต้องสามารถสั่งเลือกได้ ผ่านทางหน้า Screen ก่อนรัน Report เพื่อความสะดวกและรวดเร็วในการใช้งาน Report

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:โปรแกรม Report ค้นหา User exit จาก Transaction Code(T-CODE SAP)

ได้รับมอบหมายให้แก้ปัญหา เกี่ยวกับการแก้ไข Serial number ใน VA02 ของ User ในกรณีการคืนของ เนื่องจากมีการใส่ค่าที่ไม่ถูกต้อง ตามเอกสาร SO ดังนั้นการจะแก้ไขปัญหานี้ได้ ต้องทำการ ดักจับตรวจสอบข้อมูลที่ Serial number ซึ่งผมจะดักจับได้ก็ต้องพึ่ง User exit แล้ว User exit ของ VA02 จะหาที่ไหน สิ่งแรกที่ผมคิดได้คือ Google และแล้วก็พบวิธีหา User exit โดยใช้โปรแกรม Report zuserexit หน้าตาโปรแกรม Report zuserexit

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:สั่งรันโปรแกรม แบบ background โดยใช้ function JOB_OPEN

ถ้ามีปัญหากับการใช้เวลาในการรันโปรแกรมนาน ซึ่งเราคิดว่า Logi เราเทพแล้วแต่ที่มันช้าเพราะข้อมูลมันเยอะ ขยะมันเยอะ ไม่สามารถที่จะแก้ Logi ได้ ก็เลยคิดให้ โปรแกรมมัน Run background เสร็จแล้วจะกลับไปดู ทำไงให้โปรแกรมมัน Run backgroud ก็ต้องเรียกใช้ function ‘JOB_OPEN’ มามาดูกัน ว่า Work ไหม?

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:Hide field in screen report ซ่อนฟิลด์ในหน้าสกรีน ABAP Report

วัตถุประสงค์ เพื่อซ่อนฟิลด์ ใน screen report ของโปรแกรมนะครับ หลักการ เมื่อไม่ต้องการให้ฟิลด์ที่ป้อนข้อมูล แสดงออกมา ณ เหตุการณ์ใด เหตุการณ์หนึ่ง อาทิเช่น โปรแกรมเก็บประวัติ ครอบครัว มีฟิลด์

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:How to Create a rebate calculation routine in VOFM

บันทึกไว้ เกี่ยวกับการสร้าง routine สำหรับ rebate calculation ใน TCODE VOFM ก็ไปมีอะไรมาก แค่ไปสร้าง Routine number เพิ่มเติม จากเดิม มี 3 เราก็สร้างมาเพิ่ม 1 หลังจากนั้น โปรแกรมมัน จะ Gen program ให้เรา โดยโปรแกรมที่ได้ จะเป็นโปรแกรม Include

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:การสลับสี ของแถว ใน Report ABAP โดยใช้ INTENSIFIED ON และ OFF

INTENSIFIED นั้นเป็นคำสั่ง ในการ Show สี ใน SAP  (อ่านบทความเรื่อง ปัญหาในการจำรหัสสี ของ sap ( format color ใน sap )) ซึ่งจะช่วยในการแสดงลูกเล่นให้กับ Report ส่วนมากใช้กับกการแสดงข้อมูลแถวเยอะๆ และต้องการกหนดขอบเขตในแต่ล่ะแถว อย่างเช่นรูปข้างล่างนี้ พระเอกของงานนี้คือ วิธีใช้

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:Function Popup message แสดงข้อความ Text หลายบรรทัด

พอดี ต้องการแสดง Popup message แจ้ง การป้อนข้อมูลแ User แต่ติดปัญหาที่ message ที่แสดงนั้น มันมีหลายบรรทัด เคยใช้แต่ Function ที่แสดงได้เต็มที่ 2-6 บรรทัด ก็เลยต้องลองหาดู(google) ไปเจอ Function ตัวนี้ ถือว่า work มาก การใช้งานก็ไม่อยาก ใส่ค่าที่ต้องการแสดงไว้ใน Internal Table  Set ค่านิดหน่อยเป็นอันใช้ได้

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:Function CONVERT_DATE_TO_EXTERNAL เปลี่ยนตัวแปรวันที่ให้เป็นตัวแปรอักษร 10 หลัก

ABAP Function CONVERT_DATE_TO_EXTERNAL ฟังกชั่นตัวนี้ เอาไว้แปลงค่า Date ให้อยู่ในรูปแบบ Charater 10 หลัก รูปแบบที่ได้จะเป็นในลักษณะนี้ 17112009 = ‘17.11.2009’ คือมันดีมาก ง่ายดี

ABAP Code: แก้ปัญหาการแสดงผลค่า SPACE หน้าข้อความ ในรายงาน ALV Grid

ABAP Code:วิธีหาจำนวนแถวของ INTERNAL TABLES (How to get rows count of internal table)

ในบางครั้งเราจำเป็นที่ต้องการทราบจำนวนแถวทั้งหมดใน Internal tables ว่ามีจำนวนกี่แถว ซึ่งหลักการมันคล้ายกับ SELECT COUNT(*) แต่เราจะมาใช้คำสั่ง Count ใน internal table มันก็ใช้ไม่ได้ เพราะมันผิด Syntax ดังนั้นเราจะทำไงดีล่ะ ปิ้ง! คิดออกแล้ว