Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:beräknad kolumn
beräknad tabell
Mått
Visuell beräkning
Returnerar en tabell med kartesisk produkt mellan varje rad i table1 och tabellen som är resultatet av utvärderingen table2 i kontexten för den aktuella raden från table1.
Syntax
GENERATE(<table1>, <table2>)
Parametrar
Term | Definition |
---|---|
table1 |
Alla DAX uttryck som returnerar en tabell. |
table2 |
Alla DAX uttryck som returnerar en tabell. |
Returvärde
En tabell med kartesisk produkt mellan varje rad i table1 och tabellen som är resultatet av utvärderingen table2 i kontexten för den aktuella raden från table1
Anmärkningar
Om utvärderingen av table2 för den aktuella raden i table1 returnerar en tom tabell, innehåller resultattabellen inte den aktuella raden från table1. Detta skiljer sig från GENERATEALL() där den aktuella raden från table1 inkluderas i resultaten och kolumnerna som motsvarar table2 har null-värden för den raden.
Alla kolumnnamn från table1 och table2 måste vara olika eller så returneras ett fel.
Den här funktionen stöds inte för användning i DirectQuery-läge när den används i beräknade kolumner eller säkerhetsregler på radnivå (RLS).
Exempel
I följande exempel vill användaren ha en sammanfattningstabell över försäljningen per region och produktkategori för kanalen Återförsäljare, som i följande tabell:
SalesTerritory[SalesTerritoryGroup] | ProductCategory[ProductCategoryName] | [Reseller Sales] |
---|---|---|
Europa | Tillbehör | $ 142,227.27 |
Europa | Cyklar | $ 9 970 200,44 |
Europa | Kläder | $ 365,847.63 |
Europa | Komponenter | $ 2 214 440,19 |
Nordamerika | Tillbehör | $ 379,305.15 |
Nordamerika | Cyklar | $ 52,403,796.85 |
Nordamerika | Kläder | $ 1 281 193,26 |
Nordamerika | Komponenter | $ 8 882 848,05 |
Stilla havet | Tillbehör | $ 12,769.57 |
Stilla havet | Cyklar | $ 710,677.75 |
Stilla havet | Kläder | $ 22,902.38 |
Stilla havet | Komponenter | $ 108,549.71 |
Följande formel genererar tabellen ovan:
GENERATE(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
Den första SUMMARIZE-instruktionen,
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
, skapar en tabell med områdesgrupper, där varje rad är en områdesgrupp, enligt nedan:SalesTerritory[SalesTerritoryGroup] Nordamerika Europa Stilla havet NA Den andra SUMMARIZE-instruktionen,
SUMMARIZE(ProductCategory, [ProductCategoryName], "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD]))
, skapar en tabell med produktkategorigrupper med återförsäljares försäljning för varje grupp enligt nedan:ProductCategory[ProductCategoryName] [Reseller Sales] Cyklar $ 63,084,675.04 Komponenter $ 11,205,837.96 Kläder $ 1 669 943,27 Tillbehör $ 534,301.99 Men när du tar tabellen ovan och utvärderar den under kontexten för varje rad från tabellen områdesgrupper får du olika resultat för varje område.