GENERERE
Gælder for:Beregnet tabel beregning
af målingsvisualisering for en beregnet kolonne
Returnerer en tabel med det kartesiske produkt mellem hver række i table1 og den tabel, der er resultatet af evalueringen af table2 i konteksten af den aktuelle række fra table1.
Syntaks
GENERATE(<table1>, <table2>)
Parametre
Begreb | Definition |
---|---|
tabel1 | Ethvert DAX-udtryk, der returnerer en tabel. |
tabel2 | Ethvert DAX-udtryk, der returnerer en tabel. |
Returværdi
En tabel med det kartesiske produkt mellem hver række i table1 og den tabel, der er resultatet af evalueringen af table2 i konteksten af den aktuelle række fra table1
Bemærkninger
Hvis evalueringen af table2 for den aktuelle række i table1 returnerer en tom tabel, indeholder resultattabellen ikke den aktuelle række fra table1. Dette er anderledes end GENERATEALL(), hvor den aktuelle række fra table1 medtages i resultaterne, og kolonner, der svarer til table2 , har null-værdier for den pågældende række.
Alle kolonnenavne fra table1 og table2 skal være forskellige, ellers returneres der en fejl.
Denne funktion understøttes ikke til brug i DirectQuery-tilstand, når den bruges i beregnede kolonner eller RLS-regler (row-level security).
Eksempel
I følgende eksempel ønsker brugeren en oversigtstabel over salg efter område og produktkategori for forhandlerkanalen, f.eks. følgende tabel:
SalesTerritory[SalesTerritoryGroup] | ProductCategory[ProductCategoryName] | [Forhandlersalg] |
---|---|---|
Europa | Accessories | 142.227,27 USD |
Europa | Cykler | 9.970.200,44 USD |
Europa | Tøj | 365.847,63 USD |
Europa | Komponenter | 2.214.440,19 USD |
Nordamerika | Accessories | 379.305,15 USD |
Nordamerika | Cykler | 52.403.796,85 USD |
Nordamerika | Tøj | 1.281.193,26 USD |
Nordamerika | Komponenter | 8.882.848,05 USD |
Stillehavsområdet | Accessories | 12.769,57 USD |
Stillehavsområdet | Cykler | 710.677,75 USD |
Stillehavsområdet | Tøj | 22.902,38 USD |
Stillehavsområdet | Komponenter | 108.549,71 USD |
Følgende formel opretter ovenstående tabel:
GENERATE(
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
,SUMMARIZE(ProductCategory
, [ProductCategoryName]
, "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD])
)
)
Den første SUMMARIZE-sætning, ,
SUMMARIZE(SalesTerritory, SalesTerritory[SalesTerritoryGroup])
opretter en tabel over områdegrupper, hvor hver række er en områdegruppe, som vist nedenfor:SalesTerritory[SalesTerritoryGroup] Nordamerika Europa Stillehavsområdet I/T Den anden SUMMARIZE-sætning, ,
SUMMARIZE(ProductCategory, [ProductCategoryName], "Reseller Sales", SUMX(RELATEDTABLE(ResellerSales_USD), ResellerSales_USD[SalesAmount_USD]))
opretter en tabel over produktkategorigrupper med Forhandlersalg for hver gruppe, som vist nedenfor:ProductCategory[ProductCategoryName] [Forhandlersalg] Cykler 63.084.675,04 USD Komponenter 11.205.837,96 USD Tøj 1.669.943,27 USD Accessories 534.301,99 USD Men når du tager ovenstående tabel og evaluerer den i konteksten for hver række fra tabellen med områdegrupper, får du forskellige resultater for hvert område.
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: I hele 2024 udfaser vi GitHub-problemer som feedbackmekanisme for indhold og erstatter det med et nyt feedbacksystem. Du kan få flere oplysninger under:Indsend og få vist feedback om