DAX ALLEXCEPT useiden ulottuvuustaulukoiden luokkakohtaisen summan laskemiseen
Haluaisin laskea summan luokkakohtaisesti. Luokka on ulottuvuustaulukossa.
Tässä on esimerkkitiedosto: DAX ALLEXCEPT total by category.pbix
Minulla on seuraava malli:
Nämä ovat odottamani tulokset. Total by Color:
Ajattelin saavuttavani odotetut tulokset seuraavalla toimenpiteellä:
ALLEXCEPT_color =CALCULATE ( , ALLEXCEPT ( FactTable, -- surprisingly 'dim1' table in that place gives wrong results dim1 ))
Vai vaihtoehtoisesti Alberto Ferrarin https://www.sqlbi.com/articles/using-allexcept-versus-all-and-values/ ehdottamalla menetelmällä:
ALL_VALUES_color = CALCULATE ( , ALL (FactTable), -- again, 'dim1' produces wrong results, has to be FactTable VALUES ( dim1 ) )
Kummatkin toimenpiteet toimivat ja palauttavat oikeat tulokset. Ne kuitenkin kertovat näytetyt tulokset tekemällä kaikkien ulottuvuuksien kartesiolaisen tuloksen. Miksi? Miten se voidaan estää?
Saavutan odotetut tulokset toimenpiteellä:
Expected_Results_Color =IF ( ISBLANK ( ), BLANK (), )
Valvottavasti minulta puuttuu jotain ALLEXCEPT
-funktiosta, joten en saa haluamaani tulosta ensimmäisellä kerralla. Millä logiikalla ALLEXCEPT-funktiota käytetään useiden taulujen kanssa, erityisesti kaukana tähtikaavion keskipisteestä olevien ulottuvuuksien kanssa.
Mitä mallia kannattaa käyttää? Täältä löysin lupaavan ratkaisun, joka näyttää tältä:
ByCategories =CALCULATE ( SUM ( FactTable ), ALLEXCEPT ( dim1, dim1 ), ALLEXCEPT ( dim2, dim2 ), ALLEXCEPT ( dim3, dim3 ))
Mutta kuten aiemmin testasin, se ei toimi. Se ei aggregoi dimensioiden mukaan vaan tuottaa sellaisenaan.
Selvitin siis, että tämä on oikea suunta:
ByCategories =CALCULATE ( SUM ( FactTable ), ALLEXCEPT ( FactTable, -- here be difference dim1, dim2, dim3 ))
Spekuloin, että voisi olla myös toinenkin tapa.
Measure = var MyTableVariable = ADDCOLUMNS ( VALUES ( dim1 ), "GroupedSales", ) RETURN ...
Jospa vain voisimme hakea yksittäisen skalaarisen arvon RyhmitetytMyynnitMyyntimuuttujan MyTableVariable:stä ja sovittaa siihen sopivan värin taulukon visuaalisessa osassa.
Olisin hyvin kiitollinen kaikista lisätiedoista kategorian kokonaismäärän laskemisessa.