GENERATEALL
นําไปใช้กับ: คอลัมน์จากการคํานวณตารางจากการคํานวณ
หน่วยวัด
การคํานวณวิชวล
แสดงตารางที่มีผลคูณคาร์ทีเซียนระหว่างแต่ละแถวใน table1 และตารางที่เป็นผลมาจากการประเมิน table2 ในบริบทของแถวปัจจุบันจาก table1
วากยสัมพันธ์
GENERATEALL(<table1>, <table2>)
พารามิเตอร์
เทอม | นิยาม |
---|---|
table1 |
นิพจน์ DAX ใด ๆ ที่แสดงตาราง |
table2 |
นิพจน์ DAX ใด ๆ ที่แสดงตาราง |
ค่าผลลัพธ์
ตารางที่มีผลคูณคาร์ทีเซียนระหว่างแต่ละแถวใน table1 และตารางที่เป็นผลมาจากการประเมิน table2 ในบริบทของแถวปัจจุบันจาก table1
หมาย เหตุ
ถ้าการประเมินของ
table2 สําหรับแถวปัจจุบันในtable1 แสดงตารางที่ว่างเปล่า แถวปัจจุบันจากtable1 จะถูกรวมอยู่ในผลลัพธ์และคอลัมน์ที่สอดคล้องกับ table2จะมีค่า null สําหรับแถวนั้น ซึ่งจะแตกต่างจาก GENERATE() ซึ่งแถวปัจจุบันจาก table1 จะไม่ รวมอยู่ในผลลัพธ์ ชื่อคอลัมน์ทั้งหมดจาก table1 และ table2 ต้องแตกต่างกัน หรือระบบส่งกลับข้อผิดพลาด
ฟังก์ชันนี้ไม่ได้รับการสนับสนุนสําหรับการใช้งานในโหมด DirectQuery เมื่อใช้ในคอลัมน์จากการคํานวณหรือกฎการรักษาความปลอดภัยระดับแถว (RLS)
ตัวอย่าง
ในตัวอย่างต่อไปนี้ ผู้ใช้ต้องการตารางสรุปของยอดขายตามภูมิภาคและหมวดหมู่ของผลิตภัณฑ์สําหรับช่องทางการจัดหรับผู้จําหน่าย เช่นตารางต่อไปนี้:
SalesTerritory [SalesTerritoryGroup] | ProductCategory[ProductCategoryName] | [Reseller Sales] |
---|---|---|
ยุโรป | อุปกรณ์ เสริม | $ 142,227.27 |
ยุโรป | จักรยาน | $ 9,970,200.44 |
ยุโรป | เสื้อผ้า | $ 365,847.63 |
ยุโรป | คอม โพ เนนต์ | $ 2,214,440.19 |
นา | อุปกรณ์ เสริม | |
นา | จักรยาน | |
นา | เสื้อผ้า | |
นา | คอม โพ เนนต์ | |
อเมริกาเหนือ | อุปกรณ์ เสริม | $ 379,305.15 |
อเมริกาเหนือ | จักรยาน | $ 52,403,796.85 |
อเมริกาเหนือ | เสื้อผ้า | $ 1,281,193.26 |
อเมริกาเหนือ | คอม โพ เนนต์ | $ 8,882,848.05 |
แปซิฟิก | อุปกรณ์ เสริม | $ 12,769.57 |
แปซิฟิก | จักรยาน | $ 710,677.75 |
แปซิฟิก | เสื้อผ้า | $ 22,902.38 |
แปซิฟิก | คอม โพ เนนต์ | $ 108,549.71 |
สูตรต่อไปนี้จะสร้างตารางด้านบน:
GENERATEALL(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
SUMMARIZE แรกจะสร้างตารางของกลุ่มพื้นที่ โดยที่แต่ละแถวเป็นกลุ่มพื้นที่ เช่นเดียวกับที่ระบุไว้ด้านล่าง:
SalesTerritory [SalesTerritoryGroup] อเมริกาเหนือ ยุโรป แปซิฟิก นา SUMMARIZE ที่สองจะสร้างตารางหมวดหมู่ของผลิตภัณฑ์ที่มียอดขายของผู้จําหน่ายสําหรับแต่ละกลุ่ม ดังที่แสดงด้านล่าง:
ProductCategory[ProductCategoryName] [Reseller Sales] จักรยาน $ 63,084,675.04 คอม โพ เนนต์ $ 11,205,837.96 เสื้อผ้า $ 1,669,943.27 อุปกรณ์ เสริม $ 534,301.99 อย่างไรก็ตาม เมื่อคุณใช้ตารางข้างต้นและประเมินตารางภายใต้บริบทของแต่ละแถวจากตารางกลุ่มพื้นที่ คุณจะได้รับผลลัพธ์ที่แตกต่างกันสําหรับแต่ละพื้นที่