Del via


Utformingsveiledning for datotabeller i Power BI Desktop

Denne artikkelen beskriver gode utformingspraksiser for å opprette datotabeller i datamodellene når du bruker Power BI Desktop.

En datotabell er den vanligste tabellen som brukes til analyse. Den lagrer én rad per dato, og den støtter det vanlige kravet om å filtrere eller gruppere etter bestemte perioder med datoer, for eksempel år, kvartaler eller måneder.

I tillegg må datamodellen ha minst én datotabell for å kunne arbeide med dataanalyseuttrykk (DAX) tidsintelligensfunksjoner. En datotabell er en modelltabell som oppfyller følgende krav:

  • Den må ha en kolonne med datatypedato(eller dato/klokkeslett)– kjent som datokolonnen.
  • Datokolonnen må inneholde unike verdier.
  • Datokolonnen kan ikke inneholde BLANK-er.
  • Datokolonnen kan ikke ha noen manglende datoer.
  • Datokolonnen må strekke seg over hele år. Et år er ikke nødvendigvis et kalenderår (januar-desember).
  • Datotabellen må være merket som en datotabell.

Du kan bruke en hvilken som helst av flere teknikker for å legge til en datotabell i modellen:

Tips

En datotabell er kanskje den mest konsekvente funksjonen du legger til i noen av datamodellene dine. En datotabell i en organisasjon bør være konsekvent definert. Så uansett hvilken teknikk du bestemmer deg for å bruke, anbefaler vi at du oppretter en Power BI Desktop-mal som inneholder en fullstendig konfigurert datotabell. Del malen med alle datamodellerere i organisasjonen. Så når noen utvikler en ny datamodell, kan de begynne med en konsekvent definert datotabell.

Bruk automatisk dato/klokkeslett

Alternativet Automatisk dato/klokkeslett gir praktisk, rask og brukervennlig tidsintelligens. Rapportforfattere kan arbeide med tidsintelligens når de filtrerer, grupperer og driller ned gjennom kalenderperioder.

Vi anbefaler at du bare holder alternativet Automatisk dato/klokkeslett aktivert når du arbeider med tidsperioder i kalenderen, og når du har forenklede modellkrav i forhold til klokkeslett. Du kan også bruke dette alternativet når du oppretter ad hoc-modeller eller utfører datautforskning eller profilering. Denne fremgangsmåten støtter imidlertid ikke en enkelt datotabellutforming som kan overføre filtre til flere tabeller. Hvis du vil ha mer informasjon, kan du se Veiledning for automatisk dato/klokkeslett i Power BI Desktop.

Koble til power query

Når datakilden allerede har en datotabell, anbefaler vi at du bruker den som kilden til modelldatotabellen. Det er vanligvis tilfelle når du kobler til et datalager, da det allerede skal ha en datodimensjonstabell. På denne måten bruker modellen en enkelt kilde til sannhet for tid i organisasjonen.

Hvis du utvikler en DirectQuery-modell og datakilden ikke inneholder en datotabell, anbefaler vi på det sterkeste at du legger til en datotabell i datakilden. Den skal oppfylle alle modelleringskravene for en datotabell. Deretter kan du bruke Power Query til å koble til datotabellen. På denne måten kan modellberegningene dine bruke DAX-tidsintelligensfunksjonene.

Generer med Power Query

Du kan generere en datotabell ved hjelp av Power Query. Hvis du vil ha mer informasjon, kan du se Chris Webbs blogginnlegg som genererer en datodimensjonstabell i Power Query.

Tips

Hvis du ikke har et datalager eller en annen konsekvent definisjon for tid i organisasjonen, kan du vurdere å bruke Power Query til å publisere en dataflyt. Deretter må alle datamodellerere koble til dataflyten for å legge til datotabeller i modellene sine. Dataflyten blir den eneste kilden til sannheten for tid i organisasjonen.

Hvis du trenger å generere en datotabell, kan du vurdere å gjøre det med DAX. Du synes kanskje det er enklere. Dessuten vil det sannsynligvis være mer praktisk, fordi DAX inkluderer innebygd intelligens for å forenkle oppretting og administrasjon av datotabeller.

Generer med DAX

Du kan generere en datotabell i modellen ved å opprette en beregnet tabell ved hjelp av ENTEN CALENDAR- eller CALENDARAUTO DAX-funksjonen. Hver funksjon returnerer en tabell med én kolonne med datoer. Deretter kan du utvide den beregnede tabellen med beregnede kolonner for å støtte datointervallfiltrering og grupperingskrav.

  • CALENDAR Bruk funksjonen når du vil definere et datointervall. Du sender inn to verdier: startdatoen og sluttdatoen. Disse verdiene kan defineres av andre DAX-funksjoner, for eksempel MIN(Sales[OrderDate]) eller MAX(Sales[OrderDate]).
  • CALENDARAUTO Bruk funksjonen når du vil at datointervallet automatisk skal omfatte alle datoer som er lagret i modellen. Du kan sende inn én enkelt valgfri parameter som er slutten av året (hvis året er et kalenderår, som avsluttes i desember, trenger du ikke å sende inn en verdi). Det er en nyttig funksjon fordi den sikrer at hele år med datoer returneres, og oppfyller derfor kravet om en merket datotabell. Dessuten trenger du ikke å utvide tabellen med rader for fremtidige år. Det er fordi når en dataoppdatering fullføres, utløser den omberegningen av tabellen. En ny beregning utvider automatisk datointervallet for tabellen når datoer for et nytt år lastes inn i modellen.

Tips

Hvis du vil ha mer informasjon om hvordan du oppretter beregnede tabeller, inkludert et eksempel på hvordan du oppretter en datotabell, kan du arbeide gjennom læringsmodulen Legg til beregnede tabeller og kolonner i Power BI Desktop-modeller .

Vurder også å bruke et gratis åpen kildekode-verktøy for å administrere datoer med DAX. Hvis du vil ha mer informasjon, kan du se Bravo for Power BI.

Klone med DAX

Når datamodellen allerede har en datotabell og du trenger en annen datotabell – når dato er en rollespilldimensjonsdimensjon , kan du enkelt klone den eksisterende datotabellen. Du kan klone en tabell ved å opprette en beregnet tabell. Det beregnede tabelluttrykket er ganske enkelt navnet på den eksisterende datotabellen.

Hvis du for eksempel vil opprette en Ship Date tabell som kloner Date tabellen, bruker du følgende beregnede tabelluttrykk.

Ship Date = 'Date'

Merk

Når du kloner en tabell med DAX, opprettes bare kolonner. Den bruker ingen modellegenskaper fra den klonede tabellen, for eksempel formater eller beskrivelser. Hierarkier klonet heller ikke.

Hvis du vil ha mer informasjon om denne artikkelen, kan du se følgende ressurser: