Kolonne- og målreferanser
Som datamodellerer vil DAX-uttrykkene referere til modellkolonner og mål. Kolonner og mål er alltid knyttet til modelltabeller, men disse tilknytningene er forskjellige, så vi har ulike anbefalinger for hvordan du refererer til dem i uttrykkene dine.
Kolonner
En kolonne er et objekt på tabellnivå, og kolonnenavn må være unike i en tabell. Så det er mulig at det samme kolonnenavnet brukes flere ganger i modellen – forutsatt at de tilhører forskjellige tabeller. Det finnes én regel til: Et kolonnenavn kan ikke ha samme navn som et målnavn eller hierarkinavn som finnes i samme tabell.
Generelt vil DAX ikke tvinge bruk av en fullstendig referanse til en kolonne. En fullstendig referanse betyr at tabellnavnet står foran kolonnenavnet.
Her er et eksempel på en beregnet kolonnedefinisjon med bare kolonnenavnreferanser. Kolonnene Sales og Cost tilhører begge en tabell med navnet Orders.
Profit = [Sales] - [Cost]
Den samme definisjonen kan skrives om med fullstendige kolonnereferanser.
Profit = Orders[Sales] - Orders[Cost]
Noen ganger må du imidlertid bruke fullstendige kolonnereferanser når Power BI oppdager tvetydighet. Når du skriver inn en formel, varsler en rød bølgete og feilmelding deg. Noen DAX funksjoner som LOOKUPVALUEDAX-funksjonen krever også bruk av fullstendige kolonner.
Det anbefales at du alltid kvalifiserer kolonnereferansene fullstendig. Årsakene er angitt i delen anbefalinger.
Tiltak
Et mål er et objekt på modellnivå. Av denne grunn må målnavn være unike i modellen. I ruten Felter ser rapportforfattere imidlertid hvert mål som er knyttet til én enkelt modelltabell. Denne tilknytningen er angitt av kosmetiske årsaker, og du kan konfigurere den ved å angi egenskapen Home Table for målet. Hvis du vil ha mer informasjon, kan du se Mål i Power BI Desktop (organisere målene).
Det er mulig å bruke et fullstendig mål i uttrykkene. DAX intellisense vil til og med tilby forslaget. Det er imidlertid ikke nødvendig, og det er ikke en anbefalt praksis. Hvis du endrer hjemmetabellen for et mål, brytes alle uttrykk som bruker en fullstendig målreferanse til det. Deretter må du redigere hver brutte formel for å fjerne (eller oppdatere) målreferansen.
Det anbefales at du aldri kvalifiserer målreferansene dine. Årsakene er angitt i delen anbefalinger.
Anbefalinger
Våre anbefalinger er enkle og enkle å huske:
- Bruk alltid fullstendige kolonnereferanser
- Bruk aldri fullstendige målreferanser
Her er grunnen:
- formeloppføring: Uttrykk godtas fordi det ikke finnes tvetydige referanser å løse. Du oppfyller også kravet for de DAX funksjonene som krever fullstendige kolonnereferanser.
- Robusthet: Uttrykkene vil fortsette å fungere, selv når du endrer en målsidetabellegenskap.
- Lesbarhet: Uttrykk vil være raske og enkle å forstå – du vil raskt fastslå at det er en kolonne eller et mål, basert på om det er fullstendig kvalifisert eller ikke.
Relatert innhold
- Læreprogram: Bruke DAX i Power BI Desktop
- Spørsmål? Prøv å spørre Power BI-fellesskapet
- Forslag? Bidra med ideer for å forbedre Power BI-