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 หรือไม่