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
Seuraavassa taulukossa on Parent-Child-hierarkia sarakkeissa: EmployeeKey- ja ParentEmployeeKey-, jota 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.
PATHfunktio – Palauttaa erotellun tekstin, joka sisältää nykyisen rivin kaikkien pääkohteiden tunnisteet vanhimmasta tai ylimmästä nykyiseen.
Työntekijän avain | ParentEmployeeKey | Polku |
---|---|---|
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 |
PATHLENGTHfunktio – 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, jotka auttavat ymmärtämään tämän funktion toimintaa.
Työntekijän avain | ParentEmployeeKey | Polku | 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 |
pathITEMfunktio – Palauttaa kohteen määritetyssä sijainnissa PATH()-nämästä 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ännellä sijalla Path-merkkijonossa vasemmalta käyttäen samoja mallitietoja Path()-esimerkistä.
Työntekijän avain | ParentEmployeeKey | Polku | 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 |
pathITEMREVERSEfunktio – Palauttaa kohteen path()-pohjaisesta funktion tuloksesta position
laskettuna taaksepäin oikealta vasemmalle.
Seuraavassa esimerkissä PathItemReverse - 3rd from right -sarake on määritetty muodossa '= PATHITEMREVERSE([Path], 3)
'. tämä esimerkki palauttaa employekey-kohteen polun merkkijonon kolmannessa sijainnissa vasemmalta käyttäen samoja mallitietoja Path()-esimerkistä.
Työntekijän avain | ParentEmployeeKey | Polku | 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 TRUE
, jos määritetty item
on olemassa määritetyn path
sisällä. Seuraavassa esimerkissä PathContains - employee 162 -sarake on määritetty muodossa '= PATHCONTAINS([Path], "162")
'. Tämä esimerkki palauttaa 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 | Polku | PathContains - employee 162 |
---|---|---|---|
112 | 112 | FALSE |
|
14 | 112 | 112|14 | FALSE |
3 | 14 | 112|14|3 | FALSE |
11 | 3 | 112|14|3|11 | FALSE |
13 | 3 | 112|14|3|13 | FALSE |
162 | 3 | 112|14|3|162 | TRUE |
117 | 162 | 112|14|3|162|117 | TRUE |