GENERATE
Koskee seuraavia:Laskettu sarake
Laskettu taulukko
Mittayksikkö
Visuaalinen laskenta -
Palauttaa taulukon, jossa on karteesinen tulo jokaisen rivin välissä table1 -, ja taulukon, joka saadaan table2- arvioinnista nykyisen rivin kontekstissa table1.
Syntaksi
GENERATE(<table1>, <table2>)
Parametrit
Termi | Määritelmä |
---|---|
table1 |
Mikä tahansa DAX-lauseke, joka palauttaa taulukon. |
table2 |
Mikä tahansa DAX-lauseke, joka palauttaa taulukon. |
Palautusarvo
Taulukko, jossa karteesinen tulo on jokaisen rivin välissä table1 - ja taulukko, joka saadaan table2 -taulukon arvioinnista, nykyisen rivin kontekstissa table1 -
Huomautuksia
Jos table2 - arviointi table 1 -taulukon nykyiselle riville palauttaa tyhjän taulukon, tulostaulukko ei sisällä table1-nykyistä riviä. Tämä on eri kuin GENERATEALL(), jossa table1-taulukon nykyinen rivi sisällytetään tuloksiin ja sarakkeisiin, jotka vastaavat table2 - on tyhjäarvo kyseisellä rivillä.
Kaikkien table1- ja table2- sarakkeiden nimien on oltava erilaiset tai palautetaan virhe.
Tätä funktiota ei tueta DirectQuery-tilassa lasketuissa sarakkeissa tai rivitason suojauksen (RLS) säännöissä käytettäväksi.
Esimerkki
Seuraavassa esimerkissä käyttäjä haluaa myynnin yhteenvetotaulukon Region- ja Product Category -mukaan Resellerit-kanavalle, kuten seuraavan taulukon:
SalesTerritory[SalesTerritoryGroup] | ProductCategory[ProductCategoryName] | [Jälleenmyyjän myynti] |
---|---|---|
Eurooppa | Tykötarpeet | $ 142,227.27 |
Eurooppa | Polkupyöriä | $ 9,970,200.44 |
Eurooppa | Vaatetus | $ 365,847.63 |
Eurooppa | Osia | $ 2,214,440.19 |
Pohjois-Amerikka | Tykötarpeet | $ 379,305.15 |
Pohjois-Amerikka | Polkupyöriä | $ 52,403,796.85 |
Pohjois-Amerikka | Vaatetus | $ 1,281,193.26 |
Pohjois-Amerikka | Osia | $ 8,882,848.05 |
Tyynimeri | Tykötarpeet | $ 12,769.57 |
Tyynimeri | Polkupyöriä | $ 710,677.75 |
Tyynimeri | Vaatetus | $ 22.902.38 |
Tyynimeri | Osia | $ 108,549.71 |
Seuraava kaava tuottaa yllä olevan taulukon:
GENERATE(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
Ensimmäinen SUMMARIZE-lauseke,
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
, tuottaa alueryhmien taulukon, jossa kukin rivi on alueryhmä alla esitetyllä tavalla:SalesTerritory[SalesTerritoryGroup] Pohjois-Amerikka Eurooppa Tyynimeri NA Toinen SUMMARIZE-lauseke,
SUMMARIZE(ProductCategory, [ProductCategoryName], "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD]))
, tuottaa Product Category -ryhmien taulukon, jossa on kunkin ryhmän Jälleenmyyjän myynti, alla kuvatulla tavalla:ProductCategory[ProductCategoryName] [Jälleenmyyjän myynti] Polkupyöriä $ 63,084,675.04 Osia $ 11,205,837.96 Vaatetus $ 1,669,943.27 Tykötarpeet $ 534,301.99 Kuitenkin, kun otat yllä olevan taulukon ja arvioit sitä jokaisen alueryhmätaulukon rivin kontekstissa, saat erilaisia tuloksia kullekin alueelle.