กลับไปหน้า Power Apps
ทริคPower Apps

ForAll — วนทำทุกแถว

ForAll วนทำซ้ำกับทุกแถวของตาราง — บันทึกหลายรายการรวดเดียว หรือแปลงข้อมูลทีละแถว.

เริ่มอ่านตรงนี้ก่อน

อธิบายแบบง่าย

ForAll — วนทำทุกแถว คือเรื่องที่ช่วยให้เราใช้ทำแอปภายในทีมแบบ low-codeได้ถูกทางขึ้น

ระดับ

เหมาะกับคนที่เริ่มลงมือทำแล้ว

ใช้เมื่อไหร่

ผู้ใช้เลือกหลายรายการแล้วกดบันทึก/อนุมัติทีเดียวทั้งชุด

อ่านแล้วทำอะไรต่อ

วนทุกแถวใน collection ที่ผู้ใช้ติ๊กไว้ แล้วอัปเดตสถานะเป็น Approved รวดเดียว

เห็นภาพ: ทริคนี้เป็นยังไง

  1. 1ผู้ใช้ติ๊กเลือก 3 รายการเก็บใน colSelected
  2. 2ForAll(colSelected, …)วนทีละแถว — ThisRecord
  3. 3Patch แต่ละแถว → Approvedอัปเดตกลับ SharePoint
  4. 4ครบทุกแถว → Notify สำเร็จผู้ใช้กดครั้งเดียว

▶ เล่นอัตโนมัติ · ชี้เมาส์เพื่อหยุด · กดแถบด้านบนเพื่อข้ามขั้น

ForAll วนทุกแถวที่เลือก แล้ว Patch กลับทีละรายการ

ใช้ตอนไหน?

  • ผู้ใช้เลือกหลายรายการแล้วกดบันทึก/อนุมัติทีเดียวทั้งชุด
  • ต้องแปลงข้อมูลใน collection เป็นรูปแบบใหม่ก่อนส่งต่อ
  • ต้องการเรียก flow หรือสร้างเรคคอร์ดซ้ำตามรายการที่มี

ความหมาย

ForAll คือฟังก์ชันของ Power Fx ที่วนประมวลผลสูตรกับทุกเรคคอร์ดในตารางหรือ collection เช่น Patch ทุกแถวที่เลือกไว้กลับ SharePoint รวดเดียว หรือสร้างตารางใหม่จากการแปลงค่าทีละแถว ภายใน ForAll อ้างค่าแถวปัจจุบันด้วย ThisRecord

รูปแบบ ForAll + Patch

ตัวแรกคือตารางที่จะวน ตัวที่สองคือสูตรที่ทำกับแต่ละแถว (ThisRecord = แถวปัจจุบัน)

ForAll(
  colSelected,
  Patch(Requests, ThisRecord,
    { Status: "Approved" })
)

ตัวอย่างการใช้

อนุมัติทีเดียวทั้งชุด

วนทุกแถวใน collection ที่ผู้ใช้ติ๊กไว้ แล้วอัปเดตสถานะเป็น Approved รวดเดียว

ForAll(Filter(colCart, Selected), Patch(Requests, ThisRecord, { Status: "Approved" }))