Action ที่ทรงพลังใน Power Automate
สวัสดีครับ วันนี้ผมจะมาแนะนำหนึ่งใน Action ที่ทรงพลังของ Power Automate โดยเฉพาะในตอนที่คุณต้องการสร้าง Flow ที่เกี่ยวข้องกับ SharePoint ซึ่งเป็นเรื่องที่จะมาบอกคู่มือการใช้งานอย่างย่อและง่ายที่ไม่ต้องเป็นผู้เชี่ยวชาญก็สามารถทำตามได้
Quick Suggest
หากสนใจเรียนรู้เพิ่มเติม ขอแนะนำบทความ
Prologue
คุณอาจจะคุ้นเคยกับการใช้งาน SharePoint ใน Power Automate ซึ่งมีการทำงานทั่ว ๆ ไป เช่น Get items, Create item, Update Item, Delete item, Create file, Delete file หรืออื่น ๆ อีกมากมาย
แต่สงสัยใช่ไหมละครับว่า Power Automate ที่เชื่อมกับ SharePoint สามารถดำเนินการเหล่านี้ได้อย่างไร?
คำตอบก็คือทุก ๆ Action ก็เพียงแค่การที่ Power Automate ส่งคำขอ HTTP ไปยัง SharePoint REST API นั่นเอง แต่มีอีกหลายอย่างที่ SharePoint REST API ทำได้ จะมีอะไรบ้าง…มาดูกันเลย
Quick Suggest
หากสนใจเรียนรู้เพิ่มเติม ขอแนะนำบทความ
คู่มือการใช้งาน
- อย่าลืมแทนที่ ListTitle ด้วยชื่อ List ของคุณ
- อย่าลืมแทนที่ ID ด้วย ID ของรายการใน SharePoint List ของคุณ
- คุณสามารถเพิ่ม Accept: application/json; odata=nometadata ที่ Header เพื่อกำจัด Meta data ที่ไม่ต้องการ
วิธีการทำง่าย ๆ ให้มีประสิทธิภาพ
1. Get item (ระบุตาม ID)
Purpose: เพื่อหา Single record ของ Item ใน List ที่ระบุโดย ID
Alternative of: Get item
Method: GET
Uri: _api/web/lists/GetByTitle(‘ListTitle‘)/items(ID)
2. เลือกเฉพาะ Columns ที่ต้องการ
Purpose: เลือกเฉพาะ column
Supported with: ทุก ๆ GET request
Syntax: $select=ColumnName1, ColumnName2, …
3. ขยาย LookUp column
Purpose: เพื่อ ExpandLookUp และสิ่งที่ดีที่สุดคือคุณสามารถ Expand LookUp column ไม่ใช่เพียงแค่ Value และ ID
Supported with: ทุก ๆ GET request
Syntax: $expand=ColumnName$select=ColumnName/Field1,ColumnName/
4. ขยาย Person column
Purpose: เพื่อ E Person column
Supported with: ทุก ๆ GET request
Syntax: $expand=ColumnName$select=ColumnName/Field1,ColumnName/Field2
5. Get items (หลายรายการ)
Purpose: เพื่อหาข้อมูลหนึ่งหรือหลายรายการ (Item) จากรายชื่อ (List) โดยปกติจะแสดงผลแค่ 100 รายการแรก และสามารถตั้งค่าแสดงผลได้สูงสุด 5,000 รายการ โดยใช้คำสั่ง $top
Alternative of: Get items
Method: GET
Uri: _api/web/lists/GetByTitle(‘ListTitle‘)/items
6. Filter list item
Purpose: เพื่อกรองรายการใน Column โดยใช้คำสั่ง OData query
Supported with: ทุก GET request หนึ่งหรือหลายรายการ
Syntax: $filter=ColumnName eq ‘Value’
7. Create item
Purpose: เพื่อสร้างรายการใน SharePoint List ซึ่งมีข้อดี คือ กี่ใช้วิธีนี้สามารถ Bypass การตรวจสอบข้อมูลบางอย่างได้ เช่น Required field
Alternative of: Create item
Method: POST
Uri: _api/web/lists/GetByTitle(‘ListTitle‘)/items
Body: JSON Object ของรายการคุณ
8. Update list item
Purpose: เพื่อ Update รายการที่มีอยู่แล้ว แต่ไม่เหมือนกับ “Update item” เพราะคุณสามารถระบุเฉพาะ Column ที่คุณต้องการ Update ได้โดยไม่ต้องระบุ Column
Alternative of: Update Item
Headers: {“X-HTTP-METHOD”: “MERGE“, “IF-MATCH”: “*”}
Uri: _api/web/lists/GetByTitle(‘ListTitle‘)/items(ID)
Body: JSON Object ที่คุณต้องการ Update
9. Delete list item
Purpose: เพื่อลบรายการที่มีอยู่แล้ว
Alternative of: Delete Item
Method: POST
Headers: {“X-HTTP-METHOD”: “DELETE“, “IF-MATCH”: “*”}
Uri: _api/web/lists/GetByTitle(‘ListTitle‘)/items(ID)
10. Get SharePoint attachment
Purpose: เพื่อรับรายการของเอกสารแนบของ SharePoint item
Supported with: ทุก GET request ของ SharePoint items
Syntax: $select=AttachmentFiles,Title&$expand=AttachmentFiles
11. Get drive id of SharePoint document library
Purpose: เพื่อหา Drive id ของพื้นที่จัดเก็บเอกสาร (Document library) SharePoint ซึ่งอาจจำเป็นในบางการดำเนินการ (บางการดำเนินการอาจไม่ยอมรับ Id หรือ Library name)
Alternative of: –
Method: GET
Uri: _api/v2.1/drives?$select=id,name
สรุป
ทั้งหมดที่ผมพูดในวันนี้ยังไม่ใช่ทั้งหมดที่ SharePoint REST API ทำได้ คุณสามารถศึกษาเพิ่มเติมได้จาก Blog เหล่านี้
แหล่งที่มา: PAWIT.PW
ก้าวเข้าสู่ Digital Business
ดูผลิตภัณฑ์ที่เกี่ยวข้องได้ที่นี่