GENERATEALL
Ισχύει για:Υπολογιζόμενη στήλη
Υπολογιζόμενος πίνακας
Μέτρηση
υπολογισμού απεικόνισης
Επιστρέφει έναν πίνακα με το Καρτεσιανό γινόμενο μεταξύ κάθε γραμμής στον table1 και στον πίνακα που προκύπτει από την αξιολόγηση table2 στο περιβάλλον της τρέχουσας γραμμής από table1.
Σύνταξη
GENERATEALL(<table1>, <table2>)
Παραμέτρους
Όρος | Ορισμός |
---|---|
table1 |
Οποιαδήποτε DAX παράσταση που επιστρέφει έναν πίνακα. |
table2 |
Οποιαδήποτε DAX παράσταση που επιστρέφει έναν πίνακα. |
Τιμή επιστροφής
Ένας πίνακας με το καρτεσιανό γινόμενο μεταξύ κάθε γραμμής σε table1 και του πίνακα που προκύπτει από την αξιολόγηση table2 στο περιβάλλον της τρέχουσας γραμμής από table1
Παρατηρήσεις
Εάν η αξιολόγηση του table2 για την τρέχουσα γραμμή στον table1 επιστρέψει έναν κενό πίνακα, τότε η τρέχουσα γραμμή από τον table1 θα συμπεριληφθεί στα αποτελέσματα και οι στήλες που αντιστοιχούν στον table2 θα έχουν τιμές null για αυτή τη γραμμή. Αυτό είναι διαφορετικό από GENERATE() όπου η τρέχουσα γραμμή από τον πίνακα 1 θα δεν να συμπεριληφθεί στα αποτελέσματα.
Όλα τα ονόματα στηλών από table1 και table2 πρέπει να είναι διαφορετικά ή να επιστρέφεται σφάλμα.
Αυτή η συνάρτηση δεν υποστηρίζεται για χρήση σε λειτουργία DirectQuery όταν χρησιμοποιείται σε υπολογιζόμενες στήλες ή σε κανόνες ασφάλειας σε επίπεδο γραμμών (RLS).
Παράδειγμα
Στο παρακάτω παράδειγμα, ο χρήστης θέλει έναν πίνακα σύνοψης των πωλήσεων κατά περιοχή και κατηγορία προϊόντος για το κανάλι μεταπωλητών, όπως τον ακόλουθο πίνακα:
SalesTerritory[SalesTerritoryGroup] | ProductCategory[ProductCategoryName] | [Πωλήσεις μεταπωλητή] |
---|---|---|
Ευρώπη | Εξαρτήματα | $ 142,227.27 |
Ευρώπη | Ποδήλατα | $ 9,970,200.44 |
Ευρώπη | Ρουχισμός | $ 365,847.63 |
Ευρώπη | Στοιχεία | $ 2,214,440.19 |
NA | Εξαρτήματα | |
NA | Ποδήλατα | |
NA | Ρουχισμός | |
NA | Στοιχεία | |
Βόρεια Αμερική | Εξαρτήματα | $ 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] Βόρεια Αμερική Ευρώπη Ειρηνικός Ωκεανός NA Η δεύτερη SUMMARIZE παράγει έναν πίνακα με ομάδες κατηγοριών προϊόντων με τις πωλήσεις μεταπωλητών για κάθε ομάδα, όπως φαίνεται παρακάτω:
ProductCategory[ProductCategoryName] [Πωλήσεις μεταπωλητή] Ποδήλατα $ 63,084,675.04 Στοιχεία $ 11,205,837.96 Ρουχισμός $ 1,669,943.27 Εξαρτήματα $ 534,301.99 Ωστόσο, όταν κάνετε λήψη του παραπάνω πίνακα και αξιολογείτε τον πίνακα με βάση το περιβάλλον κάθε γραμμής από τον πίνακα ομάδων περιοχών, λαμβάνετε διαφορετικά αποτελέσματα για κάθε περιοχή.