Jaa


Tietoja pää- ja alielementtihierarkioiden funktioista DAXissa

DAX tarjoaa viisi funktiota, joiden avulla käyttäjät voivat hallita malleissaan pää- ja alielementtihierarkiana esitettyjä tietoja. Tämän toiminnon avulla käyttäjä voi saada rivin pääelementti periytymisen, kuten kuinka monta periytymistasoa on ylimmältä pääelementiltä, mikä pääelementti on n-tasoa nykyistä riviä ylempänä, mikä on n-alikohde nykyisen rivihierarkian yläosasta ja onko tietty pääelementti nykyisen rivihierarkian pääelementti.

Pää- ja alielementtifunktiot DAXissa

Seuraava taulukko sisältää pää- ja alikohteen hierarkian sarakkeissa: EmployeeKey ja ParentEmployeeKey , joita käytetään kaikissa funktioesimerkeistä.

Työntekijän avain ParentEmployeeKey
112
14 112
3 14
11 3
13 3
162 3
117 162
221 162
81 162

Yllä olevasta taulukosta näet, että työntekijälle 112 ei ole määritetty pääkohdetta, työntekijän 14 esimiehenä on työntekijä 112 (ParentEmployeeKey), työntekijän 3 esimiehenä on työntekijä 14 ja työntekijöiden 11, 13 ja 162 esimiehenä on työntekijä 3. Yllä oleva auttaa ymmärtämään, että työntekijällä 112 ei ole esimiestä hänen yläpuolellaan ja että hän on kaikkien tässä näkyvien työntekijöiden ylin esimies; myös työntekijä 3 raportoi työntekijälle 14 ja työntekijät 11, 13, 162 raportoivat työntekijälle 3.

Seuraavassa taulukossa esitetään käytettävissä olevat funktiot, funktion lyhyt kuvaus ja esimerkki funktiosta yllä esitettyjä tietoja käyttäen.

PATH-funktio – Palauttaa erotellun tekstin, joka sisältää nykyisen rivin kaikkien pääkohteiden tunnisteet vanhimmasta tai ylimmästä nykyiseen.

Työntekijän avain ParentEmployeeKey Path
112 112
14 112 112|14
3 14 112|14|3
11 3 112|14|3|11
13 3 112|14|3|13
162 3 112|14|3|162
117 162 112|14|3|162|117
221 162 112|14|3|162|221
81 162 112|14|3|162|81

PATHLENGTH-funktio – Palauttaa annetun PATH()-funktion tasojen määrän nykyisestä tasosta vanhimpaan tai ylimpään pääelementtitasoon. Seuraavassa esimerkissä PathLength-sarake on määritetty muodossa '= PATHLENGTH([Path])'. Esimerkki sisältää kaikki Path()-esimerkin tiedot funktion toiminnan havainnollistamiseksi.

Työntekijän avain ParentEmployeeKey Path PathLength
112 112 1
14 112 112|14 2
3 14 112|14|3 3
11 3 112|14|3|11 4
13 3 112|14|3|13 4
162 3 112|14|3|162 4
117 162 112|14|3|162|117 5
221 162 112|14|3|162|221 5
81 162 112|14|3|162|81 5

PATHITEM-funktio – Palauttaa kohteen määritetyssä sijainnissa PATH()-like-tuloksesta laskettuna vasemmalta oikealle. Seuraavassa esimerkissä PathItem - 4th from left -sarake on määritetty muodossa '= PATHITEM([Path], 4)'. Tämä esimerkki palauttaa EmployeKey-kohteen neljännessä kohdassa Path-merkkijonossa vasemmalta käyttäen samoja mallitietoja Path()-esimerkistä.

Työntekijän avain ParentEmployeeKey Path PathItem - 4th from left
112 112
14 112 112|14
3 14 112|14|3
11 3 112|14|3|11 11
13 3 112|14|3|13 13
162 3 112|14|3|162 162
117 162 112|14|3|162|117 162
221 162 112|14|3|162|221 162
81 162 112|14|3|162|81 162

PATHITEMREVERSE-funktio – Palauttaa kohteen sijainnissa PATH()-näköisen funktion tuloksesta laskettuna taaksepäin oikealta vasemmalle.
Seuraavassa esimerkissä PathItemReverse - 3rd from right -sarake on määritetty muodossa '= PATHITEMREVERSE([Path], 3)'. Tämä esimerkki palauttaa työntekijän avain kolmannen sijainnin polun merkkijonossa vasemmalta käyttäen samoja mallitietoja Path()-esimerkistä.

Työntekijän avain ParentEmployeeKey Path PathItemReverse - 3rd from right
112 112
14 112 112|14
3 14 112|14|3 112
11 3 112|14|3|11 14
13 3 112|14|3|13 14
162 3 112|14|3|162 14
117 162 112|14|3|162|117 3
221 162 112|14|3|162|221 3
81 162 112|14|3|162|81 3

PATHCONTAINS-funktio – Palauttaa arvon TRUE , jos määritetty kohde on olemassa määritetyn polun sisällä. Seuraavassa esimerkissä PathContains - employee 162 -sarake on määritetty muodossa '= PATHCONTAINS([Path], "162")'. Tämä esimerkki palauttaa arvon TRUE , jos annettu polku sisältää työntekijän 162. Tässä esimerkissä käytetään edellä olevan Path()-esimerkin tuloksia.

Työntekijän avain ParentEmployeeKey Path PathContains - employee 162
112 112 EPÄTOSI
14 112 112|14 EPÄTOSI
3 14 112|14|3 EPÄTOSI
11 3 112|14|3|11 EPÄTOSI
13 3 112|14|3|13 EPÄTOSI
162 3 112|14|3|162 TOSI
117 162 112|14|3|162|117 TOSI