Home
» Power BI
»
Oprettelse af en dynamisk datoforespørgselstabel i LuckyTemplates: Et selvstudium til forespørgselseditor
Oprettelse af en dynamisk datoforespørgselstabel i LuckyTemplates: Et selvstudium til forespørgselseditor
Et spørgsmål, jeg fik fra den, drejer sig om en tilføjelse til datoforespørgselstabellen. Denne tilføjelse forhindrer dig i manuelt at skulle filtrere data til den sidste dato, hver gang nye data kommer ind. Dette kan være nyttigt, hvis du arbejder på en løbende rapport. Du kan se den fulde video af denne tutorial nederst på denne blog.
Jeg tilføjer et link til det nævnte indlæg på det relaterede supportforums indlæg nedenfor.
Bemærk, at den løsning, jeg giver, kræver brugen af den gamle datotabelskabelon, som jeg gav i Ultimate Beginner's Guide to LuckyTemplates og Ultimate Beginner's Guide to DAX-kurser. Links til disse findes også nedenfor.
Skabelonen er en tekstfil, der skal placeres i forespørgselseditoren. Den genererer en datotabel baseret på de datoparametre, du har indtastet.
Når det er på plads, vil jeg vise dig, hvordan du gør tabellen dynamisk baseret på de faktiske data, du har.
Oprettelse af en dynamisk datotabel ved hjælp af livedata
Først vil jeg tjekke de overordnede datoer i salgstabellen.
Salgstabellen vil fungere som faktatabellen, når vi forsøger at få den samlede minimumsdato. Jeg vil bruge funktionen CALCUATE og derefter bruge ordredatoen.
Bemærk at jeg også har skæremaskiner her, så jeg skal bruge ALLE datoer. Dette fjerner alle filtre, der kunne bringe den forkerte kontekst ind i målingen.
Nu mangler jeg bare at genskabe denne foranstaltning. Så jeg kopierer denne formel og klikker på Ny mål.
Dette nye mål vil være for den samlede maks. dato, så jeg skal bare ændre MIN til MAX.
Lad mig trække disse foranstaltninger ind i min rapport for at se, hvilke datoer der kommer op.
Når jeg ser på dataene fra salgstabellen, falder den første dato i min tidslinje i starten af 2014, mens den sidste dato falder i midten af november 2018.
Datoer forespørgselsparametre
Da hovedmålet her er at gøre Datoer-tabellen dynamisk, vil de resulterende datoer være noget anderledes end de kort, du tidligere har set, især når vi ændrer tingene i forespørgselseditoren.
Jeg vil starte med at komme ind på Dates Query.
Derefter går jeg ind i den avancerede editor.
Det er her du vil se en tekstfil, hvor du personligt kan indtaste de dækkede datoer.
Dette kommer nu til at generere hele Dato-tabelkoden baseret på, hvad vi placerer i StartDate, EndDate og FYStartMonth.
Det er denne Dates Query, der genererede tabellen nedenfor.
Oprettelse af den dynamiske datotabel
Det, jeg vil gøre nu, er at duplikere den forrige tabel og bruge denne dublet til at starte en dynamisk dato-tabel.
Normalt ville du gå til Kilden for at generere dataene.
Derefter kan du ændre datoen lige her i Dato-forespørgslen.
Men det, jeg vil vise dig, er, hvordan du overlægger det i stedet.
Jeg vil starte med List Min. Min salgstabel forbliver min faktatabel, så vil jeg referere til ordredatoen.
Den anden del af målingen vil være List Max, og vil også bruge salgstabellen og ordredatoen.
Med disse ændringer i målingen vil tabellen nu automatisk opdatere, hver gang der kommer nye data ind i salgstabellen. Datotabellen vil også justere i henhold til de relevante datoer.
Du skal selvfølgelig også have lidt plads til tilpasning. Det er derfor, jeg normalt lægger omkring 30 dage til den sidste dato. Det er, hvad denne sidste del af foranstaltningen er til for.
Dette er et interessant koncept, der vil hjælpe dig med at køre enhver form for scenarieanalyse. Det er bedre at tilføje noget ekstra tid til sidst i stedet for bare at skære det af på den sidste dato.
Når vi går tilbage til kortene, der viser den første og sidste dato, vil du se, at den sidste dato allerede er blevet justeret.
Konklusion
Med en dynamisk datoforespørgselstabel er der ingen grund til manuelt at filtrere datoerne, hver gang nye data kommer ind i din faktatabel.
Igen foretrækker jeg altid at oprette datotabeller i forespørgselseditoren, fordi det stadig er den mest effektive måde at gøre det på.
Du skal bruge tekstkoden, som du kan downloade fra Ultimate Beginner's Guide-kurser til det, så tjek linket til disse kurser nedenfor.