COLLAPSE ยุบผลลัพธ์ตารางหรือคอลัมน์ให้เหลือค่าสเกลาร์เดียว ช่วยบังคับให้บริบทมีค่าเดียวก่อนส่งต่อให้ฟังก์ชันอื่น หากมีหลายค่าจะคืน BLANK ช่วยตรวจสอบความถูกต้องของ filter context และใช้กำหนดค่าพารามิเตอร์ที่ควรมีค่าเดียว
=COLLAPSE(<value>)
=COLLAPSE(<value>)
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| value | scalar or column | Yes | ค่าสเกลาร์ คอลัมน์ หรือผลลัพธ์ตารางที่คาดหวังว่าจะมีค่าเดียวในบริบท หากมีหลายค่าผลจะเป็น BLANK |
ใช้ COLLAPSE กับ VALUES เพื่อตรวจสอบว่ามี Category เดียวในบริบทหรือไม่ ถ้ามีหลายค่าจะได้ BLANK เพื่อป้องกันการคำนวณผิด
บังคับให้ตัวเลือกพารามิเตอร์ที่มาจาก slicer เหลือค่าเดียวก่อนนำไปใช้ใน Measure อื่น ลดปัญหา error เมื่อมีหลายการเลือก
ยุบค่าที่เลือกแล้วนำไปต่อข้อความ เช่น แสดงชื่อหมวดที่ถูกกรอง หากมีหลายค่าจะปล่อยเป็น BLANK เพื่อหลีกเลี่ยงข้อความผิด
Selected Category = COLLAPSE(VALUES(Products[Category]))Selected Category = COLLAPSE(VALUES(Products[Category]))
คืนชื่อ Category เดียว หรือ BLANK หากมีหลายหมวด
Default Currency = COLLAPSE("THB")Default Currency = COLLAPSE("THB")
THB
Current Brand = CALCULATE( COLLAPSE(VALUES(Products[Brand])), Products[Active] = TRUE() )Current Brand =
CALCULATE(
COLLAPSE(VALUES(Products[Brand])),
Products[Active] = TRUE()
)
ชื่อแบรนด์ที่ถูกกรองเหลือค่าเดียว หรือ BLANK หากยังมีหลายแบรนด์
COLLAPSE จะคืน BLANK เพื่อบอกว่าบริบทมีหลายค่า ไม่ใช่ค่าเดียว ทำให้คุณสามารถจัดการข้อผิดพลาดหรือแจ้งผู้ใช้ให้เลือกให้แคบลง
VALUES ส่งกลับตารางของค่าที่แตกต่างกันทั้งหมด ส่วน COLLAPSE ยุบให้เหลือค่าเดียวหรือ BLANK เพื่อใช้เป็นสเกลาร์ จึงเหมาะเมื่อฟังก์ชันปลายทางรับได้แค่ค่าเดียว
COLLAPSE คล้าย SELECTEDVALUE แต่จะคืน BLANK ถ้ามีหลายค่าโดยไม่รองรับค่า alternate result คุณสามารถใช้ร่วมกับ COALESCE เพื่อกำหนดข้อความแจ้งเตือนได้
COLLAPSE ใช้ยุบผลลัพธ์ที่เป็นตารางหรือคอลัมน์ให้เหลือค่าสเกลาร์เดียว หากบริบทมีค่าหนึ่งค่า จะคืนค่านั้น หากมีหลายค่าจะได้ BLANK จึงเหมาะสำหรับตรวจสอบว่าบริบทถูกกรองเหลือค่าเดียวหรือไม่ หรือใช้ส่งค่าพารามิเตอร์ให้สูตรอื่น