RELATED
gjelder:beregnet kolonneberegnet tabellMeasurevisualobjektberegning
Returnerer en relatedvalue fra en annen tabell.
Syntaks
RELATED(<column>)
Parametere
Term | Definisjon |
---|---|
column |
Kolonnen som containsvalues du vil hente. |
Returner value
En enkelt value som er related til gjeldende rad.
Merknader
Funksjonen RELATED krever at det finnes en relasjon mellom gjeldende tabell and tabellen med related informasjon. Du angir kolonnen som contains dataene du vil bruke, and funksjonen følger en eksisterende mange-til-én-relasjon for å hente value fra den angitte kolonnen i related tabellen. If en relasjon finnes not, må du opprette en relasjon.
Når RELATED-funksjonen utfører et oppslag, undersøker den allvalues i den angitte tabellen, uavhengig av eventuelle filters som kan ha blitt brukt.
Funksjonen RELATED trenger en radkontekst. Derfor kan den bare brukes i beregnet kolonneuttrykk, der gjeldende radkontekst er entydig, or som en nestet funksjon i et uttrykk som bruker en tabellskanningsfunksjon. En tabellskanningsfunksjon, for eksempel SUMX, henter value for gjeldende rad valueand skanner deretter en annen tabell for forekomster av den value.
Funksjonen RELATED kan ikke brukes til å hente en kolonne på tvers av en begrenset relasjon.
Eksempel
I eksemplet nedenfor opprettes measure Internett-salg utenfor USA for å produsere en salgsrapport som utelukker salg i USA. Hvis du vil opprette measure, må InternetSales_USD-tabellen filtreres for å utelate all salg som tilhører USA i SalesTerritory-tabellen. USA, som et land, vises fem ganger i SalesTerritory-tabellen. én gang for hvert av følgende områder: Northwest, Northeast, Central, Southwest, and Southeast.
Den first fremgangsmåten for å filter Internett-salg, for å opprette measure, kan være å legge til et filter uttrykk som dette:
FILTER('InternetSales_USD'
, 'InternetSales_USD'[SalesTerritoryKey]<>1 && 'InternetSales_USD'[SalesTerritoryKey]<>2 && 'InternetSales_USD'[SalesTerritoryKey]<>3 && 'InternetSales_USD'[SalesTerritoryKey]<>4 && 'InternetSales_USD'[SalesTerritoryKey]<>5)
Denne tilnærmingen er imidlertid kontraintuitiv, utsatt for skrivefeil, and kan not fungere if noen av de eksisterende områdene deles i fremtiden.
En bedre tilnærming ville være å bruke den eksisterende relasjonen mellom InternetSales_USD and SalesTerritory and eksplisitt si at landet må være forskjellig fra USA. Hvis du vil gjøre dette, oppretter du et filter uttrykk som dette:
FILTER( 'InternetSales_USD', RELATED('SalesTerritory'[SalesTerritoryCountry])<>"United States")
Dette uttrykket bruker RELATED-funksjonen til å slå opp landet value i SalesTerritory-tabellen, og starter med value i nøkkelkolonnen, SalesTerritoryKey, i InternetSales_USD-tabellen. Resultatet av oppslaget brukes av filter-funksjonen til å bestemme if InternetSales_USD raden filtreres ornot.
Merk
If eksemplet not fungerer, må du kanskje opprette en relasjon mellom tabellene.
= SUMX(FILTER( 'InternetSales_USD'
, RELATED('SalesTerritory'[SalesTerritoryCountry])
<>"United States"
)
,'InternetSales_USD'[SalesAmount_USD])
Tabellen nedenfor viser bare totalsummer for hvert område, for å bevise at filter-uttrykket i measure, Ikke-USA Internet Sales, fungerer som tiltenkt.
Row Labels | Internet Sales | Non USA Internet Sales |
---|---|---|
Australia | KR 49 999 021,84 | KR 49 999 021,84 |
Canada | KR 1 343 109,10 | KR 1 343 109,10 |
Frankrike | $2,490,944.57 | $2,490,944.57 |
Tyskland | KR 2 775 195,60 | KR 2 775 195,60 |
Storbritannia | KR 5 057 076,55 | KR 5 057 076,55 |
USA | kr 9 389 479,79 | |
Grand Total | KR 26 054 827,45 | KR 16 665 347,67 |
Følgende viser hva du kan få if du brukte denne measure i et visualobjekt i rapporttabellen:
Row Labels | Accessories | Bikes | Clothing | Grand Total |
---|---|---|---|---|
2005 | KR 1 526 481,95 | KR 1 526 481,95 | ||
2006 | KR 3 554 744,04 | KR 3 554 744,04 | ||
2007 | KR 156 480,18 | KR 5 640 106,05 | KR 70 142,77 | $5,866,729.00 |
2008 | KR 2 228 159,45 | KR 5 386 558,19 | KR 102 675,04 | KR 5 717 392,68 |
Grand Total | kr 384 639,63 | KR 16 107 890,23 | KR 1 72 817,81 | KR 16 665 347,67 |