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

Delegation

อธิบายว่าทำไมแอปแสดงข้อมูลแค่ 500/2000 แถว และเขียนสูตรให้ delegate ได้

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

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

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

ระดับ

เหมาะกับคนที่ต้องตรวจงานหรือวางมาตรฐาน

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

แอปแสดงข้อมูลไม่ครบ หรือมีคำเตือนเส้นใต้สีน้ำเงินในสูตร

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

ใช้ StartsWith แทน in เพื่อให้ SharePoint กรองให้และเห็นข้อมูลครบ

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

ไม่ delegable ⚠️
Filter(Requests,
  "abc" in Title)
// เห็นแค่ 500 แถวแรก
delegable ✓
Filter(Requests,
  StartsWith(Title, txt.Text))
// SharePoint กรองให้ ครบ
เงื่อนไข delegable เห็นข้อมูลครบ — ไม่ delegable ถูกตัดที่ 500

ใช้ตอนไหน?

  • แอปแสดงข้อมูลไม่ครบ หรือมีคำเตือนเส้นใต้สีน้ำเงินในสูตร
  • ต้องทำงานกับ list หรือ table ที่มีแถวเกินขีดจำกัด
  • ต้องตรวจสอบว่าสูตรกรอง/เรียงจะ delegate ได้กับแหล่งข้อมูลที่ใช้

ความหมาย

Delegation (การมอบให้แหล่งข้อมูลคำนวณแทน) คือการที่ Power Apps ส่งงานกรอง/เรียงไปให้แหล่งข้อมูลทำแล้วส่งผลกลับมา ถ้าสูตรหรือฟังก์ชันไหน "ไม่ delegable" แอปจะดึงข้อมูลมาแค่ตามขีดจำกัด (ค่าเริ่มต้น 500 ปรับได้ถึง 2000 แถว) แล้วคำนวณในเครื่อง ทำให้เห็นข้อมูลไม่ครบ

เลี่ยงฟังก์ชันที่ไม่ delegable

เลือกเงื่อนไขและฟังก์ชันที่ delegable กับแหล่งข้อมูลนั้น และปรับขีดจำกัดเมื่อจำเป็น

// delegable กับ SharePoint
Filter(Requests, Status.Value = "Open")

// มัก "ไม่" delegable กับ SharePoint — ระวัง
Filter(Requests, "abc" in Title)

// ปรับขีดจำกัด: Settings > General > Data row limit (สูงสุด 2000)

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

เปลี่ยนเป็นเงื่อนไขที่ delegate ได้

ใช้ StartsWith แทน in เพื่อให้ SharePoint กรองให้และเห็นข้อมูลครบ

Filter(Requests, StartsWith(Title, txtSearch.Text))