Ανάγνωση στα Αγγλικά

Κοινή χρήση μέσω


GENERATE

Ισχύει για:Υπολογιζόμενη στήληΥπολογιζόμενος πίνακαςMeasureΥπολογισμός απεικόνισης

Επιστρέφει έναν πίνακα με την Καρτεσιανή product μεταξύ κάθε γραμμής του table1and πίνακα που προκύπτει από την αξιολόγηση table2 στο περιβάλλον της τρέχουσας γραμμής από τον πίνακα table1.

Σύνταξη

DAX
GENERATE(<table1>, <table2>)

Παραμέτρους

Όρος Ορισμός
table1 Οποιαδήποτε DAX παράσταση που επιστρέφει έναν πίνακα.
table2 Οποιαδήποτε DAX παράσταση που επιστρέφει έναν πίνακα.

Επιστροφή value

Ένας πίνακας με την Καρτεσιανή product μεταξύ κάθε γραμμής στον πίνακα1and τον πίνακα που προκύπτει από την αξιολόγηση του πίνακα 2 στο περιβάλλον της τρέχουσας γραμμής από πίνακα1

Παρατηρήσεις

  • If την αξιολόγηση του table2 για την τρέχουσα γραμμή του table1 επιστρέφει έναν κενό πίνακα και, στη συνέχεια, ο πίνακας που προκύπτει θα not θα περιέχει την τρέχουσα γραμμή από table1. Αυτό είναι διαφορετικό από GENERATEALL() όπου η τρέχουσα γραμμή από table1 θα συμπεριληφθεί στα αποτελέσματα and στήλες που αντιστοιχούν στον table2 θα έχουν values null για αυτήν τη γραμμή.

  • All ονόματα στηλών από τον πίνακα 1andπίνακα2 πρέπει να είναι διαφορετικά or επιστρέφεται ένα error.

  • Αυτή η συνάρτηση υποστηρίζεται not για χρήση σε λειτουργία DirectQuery όταν χρησιμοποιείται σε υπολογιζόμενες στήλες or κανόνες ασφάλειας σε επίπεδο γραμμών (RLS).

Παράδειγμα

Στο παρακάτω παράδειγμα, ο χρήστης θέλει έναν πίνακα σύνοψης των πωλήσεων κατά περιοχή andProduct κατηγορία για το κανάλι μεταπωλητών, όπως τον ακόλουθο πίνακα:

SalesTerritory[SalesTerritoryGroup] ProductCategory[ProductCategoryName] [Πωλήσεις μεταπωλητή]
Ευρώπη Εξαρτήματα $ 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

Ο ακόλουθος τύπος παράγει τον παραπάνω πίνακα:

DAX
GENERATE(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory 
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
  1. Η πρόταση firstSUMMARIZE, SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup]), παράγει έναν πίνακα με ομάδες περιοχών, όπου κάθε γραμμή είναι μια ομάδα περιοχών, όπως φαίνεται παρακάτω:

    SalesTerritory[SalesTerritoryGroup]
    Βόρεια Αμερική
    Ευρώπη
    Ειρηνικός Ωκεανός
    NA
  2. Η πρόταση secondSUMMARIZE, SUMMARIZE(ProductCategory, [ProductCategoryName], "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])), παράγει έναν πίνακα με ομάδες κατηγοριών Product με τις πωλήσεις μεταπωλητών για κάθε ομάδα, όπως φαίνεται παρακάτω:

    ProductCategory[ProductCategoryName] [Πωλήσεις μεταπωλητή]
    Ποδήλατα $ 63,084,675.04
    Στοιχεία $ 11,205,837.96
    Ρουχισμός $ 1,669,943.27
    Εξαρτήματα $ 534,301.99
  3. Ωστόσο, όταν κάνετε λήψη του παραπάνω πίνακα andevaluate με βάση το περιβάλλον κάθε γραμμής από τον πίνακα ομάδων περιοχών, λαμβάνετε διαφορετικά αποτελέσματα για κάθε περιοχή.