SAP Fiori - บริการ OData
OData ใช้เพื่อกำหนดแนวทางปฏิบัติที่ดีที่สุดที่จำเป็นในการสร้างและใช้ RESTful API ช่วยให้คุณค้นหาการเปลี่ยนแปลงกำหนดฟังก์ชันสำหรับขั้นตอนที่ใช้ซ้ำได้และส่งคำขอเป็นกลุ่มเป็นต้น
คุณสมบัติที่สำคัญบางประการ ได้แก่ -
OData จัดเตรียมสิ่งอำนวยความสะดวกสำหรับการขยายเพื่อตอบสนองความต้องการที่กำหนดเองของ RESTful API ของคุณ
REST ย่อมาจาก Representational State Transfer และบางครั้งสะกดว่า "ReST"
โดยอาศัยโปรโตคอลการสื่อสารแบบไคลเอ็นต์เซิร์ฟเวอร์ที่ไม่ระบุสถานะแคชได้ ในแทบทุกกรณีจะใช้โปรโตคอล HTTP
REST ถูกกำหนดให้เป็นรูปแบบสถาปัตยกรรมสำหรับการออกแบบแอปพลิเคชันเครือข่าย
OData ช่วยให้คุณมุ่งเน้นไปที่ตรรกะทางธุรกิจของคุณในขณะที่สร้าง RESTful API โดยไม่ต้องกังวลเกี่ยวกับแนวทางในการกำหนดส่วนหัวของคำขอและการตอบกลับรหัสสถานะวิธี HTTP การประชุม URL ประเภทสื่อรูปแบบเพย์โหลดและตัวเลือกการสืบค้นเป็นต้น
OData RESTful API นั้นใช้งานง่าย
วงจรชีวิตบริการ OData
วงจรชีวิตของบริการ OData ประกอบด้วยช่วงของบริการ OData ด้านล่างนี้เป็นขั้นตอนสำคัญในการพิจารณาในวงจรชีวิตบริการ OData
การเปิดใช้งานบริการ OData
การบำรุงรักษาบริการ OData
การบำรุงรักษาโมเดลและบริการจนถึงการล้างแคชข้อมูลเมตา
แอปพลิเคชัน RESTful ใช้คำขอ HTTP เพื่อโพสต์ข้อมูลเพื่อสร้างหรืออัปเดตอ่านข้อมูลและลบข้อมูล REST ใช้ HTTP สำหรับการดำเนินการ CRUD ทั้งสี่ (สร้าง / อ่าน / อัปเดต / ลบ)
REST เป็นทางเลือกที่มีน้ำหนักเบาสำหรับกลไกเช่น RPC (Remote Procedure Calls) และ Web Services
ส่วนที่เหลือ
REST ถูกกำหนดให้เป็นตัวเลือกสำหรับบริการเว็บและการเรียกขั้นตอนระยะไกล ใช้สำหรับออกแบบแอปพลิเคชันเครือข่าย
บริการ REST เช่นบริการบนเว็บและรองรับคุณสมบัติด้านล่าง -
- ทำงานกับไฟร์วอลล์
- Language-independent
- Standards-based
- ไม่ขึ้นอยู่กับแพลตฟอร์ม
สถาปัตยกรรม REST
ด้านล่างนี้เป็นส่วนประกอบของสถาปัตยกรรม REST
ทรัพยากร
ใน REST ทั้งสถานะและฟังก์ชันจะแสดงเป็นทรัพยากร ทรัพยากรเป็นองค์ประกอบหลักของการออกแบบ RESTful ซึ่งต่างจาก "วิธีการ" หรือ "บริการ" ที่ใช้ใน RPC และ SOAP Web Services
RPC เรียกเช่น "getProductName"และ"getProductPrice"ไม่ได้ใช้ใน REST คุณดูข้อมูลผลิตภัณฑ์เป็นทรัพยากรและทรัพยากรนี้ควรมีข้อมูลที่จำเป็นทั้งหมด
เว็บทรัพยากร
หมายความว่าทรัพยากรเดียวไม่ควรมีข้อมูลโดยละเอียดและมีลิงก์ไปยังหน้าเว็บเพิ่มเติม
ไคลเอนต์เซิร์ฟเวอร์
ในโมเดลเซิร์ฟเวอร์ REST ไคลเอนต์เซิร์ฟเวอร์คอมโพเนนต์หนึ่งสามารถเป็นไคลเอนต์คอมโพเนนต์อื่นได้
ไม่มีสถานะการเชื่อมต่อ
แต่ละคำขอควรมีรายละเอียดเกี่ยวกับการเชื่อมต่อกับไคลเอนต์แต่ละรายและไม่ควรตอบกลับเกี่ยวกับการเชื่อมต่อก่อนหน้านี้กับไคลเอนต์เดียวกัน
สามารถเข้าถึงได้
โปรโตคอลต้องอนุญาตให้เซิร์ฟเวอร์ระบุอย่างชัดเจนว่าทรัพยากรใดที่อาจถูกแคชและเป็นเวลานานเท่าใด
พร็อกซีเซิร์ฟเวอร์
เพื่อปรับปรุงประสิทธิภาพและความสามารถในการปรับขนาดสามารถใช้พร็อกซีเซิร์ฟเวอร์ได้ สามารถใช้พร็อกซี HTTP มาตรฐานใดก็ได้
บริการ OData โดยใช้ SAP NetWeaver Gateway Service Builder
ใช้ T-Code: SEGW
หน้าต่างใหม่จะเปิดขึ้น คลิกCreate Project.
ตอนนี้ทำตามขั้นตอนด้านล่าง -
ป้อนชื่อโครงการตามที่แสดงในภาพด้านล่าง ควรไม่ซ้ำกันและไม่ควรมีอักขระพิเศษใด ๆ
ป้อนคำอธิบายของโครงการเนื่องจากเป็นฟิลด์บังคับ
ป้อนแอตทริบิวต์ต่างๆเช่น Project Type, Generation Strategy
เลือกแพ็กเกจหรือคลิกวัตถุภายในหากคุณต้องการสร้างสิ่งนี้ในเครื่อง
เมื่อคุณคลิกวัตถุภายในเครื่อง Service builder จะสร้างโครงการใหม่ที่มีโครงสร้างโฟลเดอร์ว่างเปล่า ทั้งหมดนี้สร้างขึ้นโดยอัตโนมัติด้วยโครงการใหม่และคลิกไอคอนบันทึก
ตอนนี้เพื่อสร้างประเภทเอนทิตีในแบบจำลองข้อมูล ขยายโมเดลข้อมูล→คลิกขวา→สร้าง→ประเภทเอนทิตี
ป้อนชื่อชนิดเอนทิตีและสร้างชุดเอนทิตีโดยอัตโนมัติให้คลิกที่ตัวเลือกกล่องกาเครื่องหมายชุดเอนทิตีที่เกี่ยวข้อง
คลิกตัวเลือก Insert rowเพื่อเพิ่มประเภทเอนทิตีอื่นในแบบจำลองข้อมูลและเพิ่มรายละเอียดตามที่ระบุด้านล่าง คลิกบันทึก
ในทำนองเดียวกันคุณสามารถสร้างชุดเอนทิตีโดยคลิกขวาที่โมเดลข้อมูลและป้อนรายละเอียดหรือโดยใช้ไฟล์ Insert Row ตัวเลือกในประเภทเอนทิตี
ขั้นตอนต่อไปคือการกำหนดการเชื่อมโยงและความสัมพันธ์ระหว่างเอนทิตีต่างๆ สามารถสร้างได้สองวิธีโดยใช้วิซาร์ดหรือใช้มุมมองแก้ไขมาสก์
คลิกขวา data model → Create → Association หรือ
คลิกขวา Association folder → Create
ดับเบิลคลิก Association folder → Edit Mode → Insert Row
ป้อนรายละเอียดของป้ายกำกับที่กำหนด -
- ชื่อสำหรับการเชื่อมโยง
- บรรณาธิการสมาคมภายนอก
- นิติบุคคลหลักและความสำคัญ
- เอนทิตีและความสำคัญของหัวใจ
คลิก Association set. คลิกขวาdata model → Create → Association Set.
เพื่อสร้าง Function Import ใน Service Builder คลิกขวา Data Model → Create → Function Import.
ป้อนชื่อของ Function Import และคุณสามารถเลือกจากตัวเลือกอื่น ๆ แล้วคลิก save icon.
หากต้องการกำหนดประเภทที่ซับซ้อนให้ไปที่ Data Model → right Click → Complex type.
กรอกรายละเอียดตามความต้องการและบันทึก
นี่คือวิธีที่คุณสามารถสร้างแบบจำลองข้อมูลชุดเอนทิตีประเภทการเชื่อมโยงและประเภทที่ซับซ้อน
วิธีการนำเข้าโมเดลข้อมูล
มีสี่ตัวเลือกในการนำเข้าโมเดลข้อมูลจากไฟล์ -
- โมเดลข้อมูลจากไฟล์
- โครงสร้าง DDIC
- อินเทอร์เฟซ RFC / BOR
- ค้นหาวิธีใช้
ในการนำเข้าโมเดลข้อมูลให้ทำตามขั้นตอนด้านล่าง -
Run T-code: SEGW
คลิกขวาที่ชื่อโครงการ→นำเข้า→เลือกวิธีการนำเข้า
ป้อนเส้นทางและนำเข้าประเภทเอนทิตีชุดเอนทิตีการเชื่อมโยงและประเภทที่ซับซ้อน
การแมปไปยังแหล่งข้อมูล
ไปที่ Data Model → Service Implementation →เลือก Entity Set for Mapping
ป้อนแหล่งข้อมูลของระบบภายในหรือระยะไกลพิมพ์และชื่อและบันทึก
สิ่งนี้จะเปิดใช้งานโหนดการแมปภายใต้การดำเนินการสืบค้น คุณสามารถทำการแมปสำหรับวัตถุเดี่ยวหรือใช้ตัวเลือกของPropose mapping ตัวเลือก
บริการบำรุงรักษาและการลงทะเบียน
ไปที่ Data Model. ดับเบิลคลิกService Maintenance.
เลือกระบบที่คุณต้องการลงทะเบียนและคลิก Register ตัวเลือกที่ด้านบน
เลือกไฟล์ project → Local Object จากนั้นบันทึกโดยคลิกที่เครื่องหมายถูก
ตรวจสอบไฟล์ Service Registration สถานะ.
เพื่อรักษาบริการให้คลิกที่ Maintainปุ่ม. หน้าต่างอื่นจะเปิดขึ้น
คลิก Call browserและเลือกใช้บริการนี้เป็น URL คลิกOK.
เบราว์เซอร์จะเปิดขึ้น ป้อนชื่อผู้ใช้และรหัสผ่านเพื่อดูว่ามีการเปิดเผยบริการเป็นบริการ OData หรือไม่