มาทำความรู้จักกับ ABAP CDS Views คืออะไร

เมื่อพูดถึง SAP S/4HANA มีหัวใจสำคัญในการพัฒนาโปรแกรม SAP S/4HANA นั่นคือ SAP HANA Database ที่เป็นมากกว่า Database ธรรมดา เนื่องจากมาพร้อมกับเทคโนโลยี In-Memory, Column Based Data Store ช่วยเพิ่มความเร็ว เสริมประสิทธิภาพการเข้าถึงข้อมูล ในปัจจุบันมีเทคโนโลยีที่น่าสนใจอีกหนึ่งอย่างนั่นก็คือ Core Data Services หรือ CDS Views 

ทำความรู้จัก CDS Views คืออะไร

CDS Views ถือเป็นส่วน Core Technology ใหม่ของการพัฒนา SAP S/4HANA Programming Model ที่ใช้การดึงข้อมูล (Data Querying) และการสร้างโมเดลข้อมูล (Data Modelling) โดย CDS Views ยังคงอยู่ที่ ABAP Application Server (เป็นหนึ่งใน Data Dictionary) แต่ว่าการกระบวนการ Process Logic ยกบางส่วนไปอยู่ใน Database Layer นั่นจึงทำให้เกิดการเปลี่ยนรูปแบบ Programming จาก Data-to-Code เป็น Code-to-Data (หรือ Code Pushdown) นั่นเอง

ทำไมต้องใช้ CDS Views ในเมื่อใช้ SQL ปกติก็ก็ทำงานได้เหมือนกัน

เราจะใช้ประโยชน์จาก New Programming Model ที่ชื่อ Code Pushdown ซึ่งใช้หลักการ Process logic ที่ Database ให้มากที่สุดเพื่อให้ได้ Performance ที่ดีที่สุด นั่นหมายถึงเราจะนำการ Calculation, Aggregation ใส่ไว้ใน CDS Views ได้เลย เช่นการใช้คำสั่ง Case Statement, Currency Conversion และการคำนวณค่าของฟิลด์(บวก ลบ คูณ หาร) เป็นต้น แล้วจึงนำผลลัพธ์ (ที่ผ่านการคำนวณและกรองแล้ว) ส่งกลับมาที่ ABAP Application Server 

ซึ่งตรงกันข้ามกับวิธีการใช้เพียง Open SQL นั่นคือเทคนิค Data-to-Code ที่จะดึงข้อมูลปริมาณที่มากกว่าแล้วนำมา Process logic ต่อที่ ABAP Application Server โดยเป็นการไม่ใช้คุณค่าของ SAP HANA ให้เต็มประสิทธิภาพ

CDS Views ยังมีฟังก์ชั่นและรูปแบบที่น่าใช้งานหลากหลาย  ไม่ว่าจะเป็น Expressions, Annotations, View with parameters, Associations, View extensions และ Authorization control เป็นต้น

ตัวอย่าง CDS View

บทสรุป

CDS Views ได้กลายเป็นสิ่งสำคัญในการพัฒนาโปรแกรมในปัจจุบันแล้ว เพราะมันสามารถดึงความสามารถของระบบ SAP S/4HANA ได้อย่างเต็มที่ อีกทั้งทาง SAP ยังมีการปรับปรุงและเพิ่ม Feature ใหม่ให้กับ CDS Views อย่างต่อเนื่อง ทำให้กลายเป็นพื้นฐานสำคัญในการพัฒนาโปรแกรมอย่างแน่นอน

Ref : SAP

Author: Satienpong T.


คำถามที่พบบ่อย

1. ทำไม Database View (SE11) ไม่เพียงพอต่อความต้องการ?

Database View ไม่สามารถใส่ logic การคำนวณ ไม่สามารถใช้ SQL Function รวมไปการใช้ Right Outer Join ได้เหมือน CDS Views

2. การนำ CDS Views ไปใช้ในมุมอื่น มีอะไรบ้าง?

ใช้ CDS Views สร้างเป็น oData Service เพื่อใช้ทำ Fiori Application ได้

  • ใช้สร้าง SAP’s Analytical Application
  • ใช้ร่วมกับ Third Party Applications

แชร์ :
Scroll to Top