Skapa en datumtabell i LuckyTemplates
Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.
Jag ska visa dig hur du hanterar en valutakurstabell där vissa dagar inte tas med . Dessa dagar kan vara helger eller helgdagar.
Detta kanske inte är ett problem ibland, särskilt om företaget du förbereder en rapport för inte har öppet på helger och helgdagar. Men om de gör det kan du få felaktiga summor i slutet av månaden.
Att veta hur man hanterar data som saknas gör att du kan jämföra försäljningen rättvist om det finns flera valutor som används. Det kan till exempel finnas dagar då du tror att den totala försäljningen minskar på grund av att valutans värde sjunkit. I verkligheten kan den totala försäljningen vara låg eftersom du inte räknar med alla dagar under den givna perioden.
I det här exemplet kommer jag att ta den senaste tillgängliga valutakursen och använda den på de datum som saknas för att fylla upp utrymmet. Du kan se hela videon av denna handledning längst ner på den här bloggen.
Innehållsförteckning
Given data i valutakurstabellen
Nedan finns faktatabellen, som är tabellen Valutakurser . Den använder euron som basvaluta.
Den visar data från januari 2016 med tillhörande Crossrate för varje dag.
Allt ser bra ut från 1 januari. Men när jag träffade den 26:e, är nästa datum på den efterföljande raden den 29:e.
Det betyder att jag saknar data från den 27:e och 28:e .
Observera att vissa kanske föredrar att använda Power Query för att hantera denna situation. Just nu vill jag bara fokusera på DAX.
Låt oss nu säga att jag vill använda 0,920 den 27:e och 28:e. Detta är korshastigheten som användes den 26:e. Hur gör jag det med DAX?
Vissa kanske säger att detta enkelt kan göras i Excel. De kan ha rätt till viss del.
Men fördelen som LuckyTemplates har gentemot Excel är möjligheten att ytterligare dyka in i data från olika perspektiv utan att behöva göra om eller ändra något, vilket med största sannolikhet skulle hända i Excel.
Jag ska visa dig alla åtgärder du behöver tänka på, samt de olika stegen jag skulle ta för att täcka eventuella saknade data från valutakurstabellerna.
Valutakursmått
Låt mig först visa min huvudtabell. Jag har redan en del data här, inklusive datumet och valutakursen för euro .
I det här fallet använder valutakursen helt enkeltfungera.
Eftersom jag har att göra med en valutakurs per dag är det lätt att använda funktioner som SUM ,,, eller något liknande. Data som visas per rad skulle vara helt vettiga.
Det enda problemet här är vad som kommer att hända med Total .
Detta visar totalen som 26.693, vilket inte är någon mening alls. Det är bokstavligen bara att summera alla dagars valutakurser. På grund av detta måste jag hitta ett sätt att iterera över dagarna för att få den verkliga totalen .
Så jag ska titta på mitt valutadatummått för att försöka lösa det.
Aktuellt datummått
Personligen gör jag alltid ett aktuellt datummått som tar in vilket datum jag än befinner mig på i det aktuella filtersammanhanget .
Jag föredrar också att använda. I det här exemplet kommer användningen av MAX- funktionen att ge mig 1/31 vid Totalt, vilket skulle vara mer meningsfullt eftersom det är det senaste datumet.
Senaste valutadatum
Min tabell innehåller också det senaste valutadatumet . Jag får detta genom att användafunktion och hänvisar till tabellerna FactCurrencyRates och Date .
Även om detta visar funktionen LASTDATE , är det också möjligt att använda MAX . Detta använder samma utgångspunkt som tabellen Aktuellt datum , men ger en specifik tidpunkt i förhållande till tabellen Valutakurser .
När jag scrollar ner kan jag se att det inte finns några uppgifter för den 27:e och 28:e i månaden.
För att ta itu med de saknade dagarna, ska jag prata om kolumnen Senaste rapporterade valutadatum .
Senaste rapporterade valutadatum
Det senaste rapporterade valutadatumet styr vilken kurs som ska användas för de saknade dagarna. Konceptet är att den senast rapporterade valutakursen kommer att vara samma kurs som ska användas de dagar där data saknas .
Eftersom det inte finns några uppgifter både den 27:e och 28:e betyder det att uppgifterna för den 26:e kommer att tillämpas.
Vårt exempel visar också att det senast rapporterade valutadatumet inte nödvändigtvis är föregående dag. Eftersom det inte heller finns några data för den 27:e, skulle jag fortfarande behöva gå tillbaka till den 26:e för att ta reda på vilken takt jag ska använda den 28:e.
Innan jag hoppar in i måttet som visar hur detta gjordes, kom ihåg att allt här händer i samband med hur ett filter fungerar. Jag måste tänka på vilken specifik data jag vill fokusera på.
Eftersom jag är på raden för den 27:e i månaden vill jag ta bort eventuella filterreferenser och fokusera på den 26:e istället. Detta innebär att ta medellereftersom de tillåter mig att ändra det använda filtret. Bli inte så förvirrad medfunktion, som bara kan begränsa data ytterligare.
Så här är måttet jag använde för det senaste rapporterade valutadatumet . Jag använde CALCULATE för det här exemplet.
Jag försöker alltid hitta så många variabler jag kan. Jag behöver bara titta på omfattningen av varje variabel, eftersom variabler får värdet av var de definieras .
I det här fallet kommer jag att använda det aktuella datumet eftersom jag vet att denna variabel inte kommer att ändras oavsett vilka funktioner jag använder.
Observera att det inte är nödvändigt att hitta denna variabel. Det är bara en vana som gör att jag kan kontrollera omfattningen av varje variabel jag kommer att använda i måttet.
För att gå tillbaka till måttet, hur säger jag åt DAX att ta bort filtren för det aktuella datumet och ge mig det senast registrerade valutadatumet ?
Först ska jag använda FILTER för den(DimDate) tabell.
ALL - funktionen tar bort de använda filtren, vilket öppnar DimDate-tabellen för mig att använda.
Sedan använder jag MIN för att tala om för DAX att jag vill använda den del av DimDate-kolumnen som är lika med antingen det senaste valutadatumet eller det aktuella datumet .
Vad händer om det senaste valutadatumet och det aktuella datumet inte är samma? Använd sedan alltid Senaste valutadatum .
Det är därför mellan 1/26 och 1/27 kommer åtgärden att ta 1/26. Härifrån kommer rätt datum att tillämpas på tabellen Valutakurser för att få den senast rapporterade valutakursen .
Senast rapporterade valutakurs
Låt mig dra den senast rapporterade valutakursen till min tabell.
Du kommer att se att den 27:e och 28:e nu använder 0,9200 som valutakurs eftersom det är samma kurs som används den 26:e.
Nedan är måttet jag använde för den senast rapporterade valutakursen .
Återigen, jag börjar alltid med att definiera några variabler. I det här fallet använder jag Valuta Valuta och Senast rapporterad valutadatum .
Jag kommer att använda Valuta vald eftersom jag har att göra med olika valutor här. Det är därför jag måste peka ut vilken specifik valuta som utvärderas vid varje given tidpunkt.
I det här exemplet kan de olika valutorna nås med den angivna slicern.
Självklart behöver det inte vara en skärare som används. Det kan också komma från ett bord eller en bild. Det som är viktigt är att det finns ett filter som låter dig se data i olika valutor.
När det gäller LastReportedDate är det samma sak som Senaste Rapporterade Valutadatum som jag pratade om tidigare.
För variabeln Rate använde jagfungera.
Jag tar in korskursen från faktatabellen för Valutakurser .
Eftersom jag har många valutor i en enda tabell kan jag inte bara använda datumet som en enda referenspunkt. Det måste vara en kombination av rätt valuta och rätt datum.
Det är därför jag också hänvisar till att valutatickern är lika med Valuta .
Jag hänvisar också till LastReportedDate .
Det är därför som man tittar på tabellen visar den den 26:e tre gånger innan den hoppar till den 29:e.
Konverterad försäljning med senast rapporterad kurs kontra aktuellt datum
Jag är nu på sista sträckan, vilket innebär att konvertera försäljningen med den senaste rapporterade valutakursen .
I grund och botten tar måttet bara denna senast rapporterade valutakurs och multiplicerar den med basmåttet , som i det här fallet är total försäljning .
När den åtgärden har tillämpats kommer du att se att dessa två datum slutar vara tomma. Det betyder att det inte finns någon försäljning på dessa datum .
Det visar sig också att det är försäljning den 27:e och 28:e (där det tidigare saknades valutadata).
Sedan jag hänvisade till den senast rapporterade valutakursen har dessa siffror omvandlats till euro.
Den här gången ska jag visa dig den konverterade försäljningen med aktuellt datum.
Den här gången tittar den bara på det aktuella datumet istället för att ta hänsyn till det senaste rapporterade datumet .
När jag väl har lagt det måttet i tabellen i en annan kolumn visar det bara tomma utrymmen den 27:e och 28:e.
Om du jämför den konverterade försäljningen mellan att använda den senaste rapportkursen och att använda det aktuella datumet visar summan en enorm skillnad .
Där den konverterade försäljningen med det senaste rapporterade datumet visar totalt över 4 miljoner, visar den konverterade försäljningen med det aktuella datumet endast 3,8 miljoner totalt.
Det är därför det är mycket viktigt att förstå vilken variabel du använder. Om du tittar på totalen ser det bara ut som att euron fick en stor träff och drog ner värdet. Men i verkligheten beror nedgången i Totalt på oredovisade data i tabellen Valutakurser.
Rensa upp data
Nu när jag har fyllt i de saknade uppgifterna ska jag städa i tabellen.
Jag har precis lagt till en formaterad försäljningskolumn här som tydligt visar siffrorna i euro.
Sedan jag gick igenom så många steg har jag samlat på mig en hel del kolumner här.
Men alla dessa behövs inte för att presentera data. Så jag ska gå vidare och bli av med dem genom att ta bort dem under värderutan .
När de har tagits bort, slutar jag med en renare tabell med bara nödvändiga data som visas.
Observera att jag fortfarande kan ändra valutan genom att använda slicern här till höger.
För att göra min tabell mer noggrann lägger jag till alla andra valutor genom att stänga av alternativet Single Select .
Detta kommer att visa mina siffror i USD, Euro och brittiska pund.
Jag ser också några tomma utrymmen här som representerar de dagar då det inte finns någon försäljning.
Jag tar bort dem genom att stänga av " Visa objekt utan data " .
Nu innehåller tabellen bara rader som representerar datum med försäljning.
Detta ger mig en bra jämförelse av siffrorna baserat på de olika valutorna.
Summorna visar också de korrekta siffrorna eftersom jag användeatt iterera genom var och en av raderna.
Det här är väldigt viktigt. Om du inte använder SUMX kommer det att sluta med att du bara lägger till alla kolumner utan att tänka på om rätt valutakurs används.
Slutsats
Som jag nämnde tidigare är detta inte nödvändigtvis det enda sättet att hantera saknad data. Det finns faktiskt massor av andra sätt att göra detta.
I vissa fall kan du till exempel använda data från början av månaden och använda samma siffra i hela din valutakurstabell. Jag kommer att diskutera dessa andra tillvägagångssätt i framtiden i separata bloggar.
För närvarande använde jag det här tillvägagångssättet eftersom det är mest meningsfullt för mig att använda den senaste rapporterade frekvensen. Jag tror att det är det mest intuitiva alternativet.
En sak jag också skulle vilja betona är behovet av att förstå allt utifrån ett filtersammanhang. Hur skriver jag över filtret? Hur tar jag in de senast rapporterade uppgifterna? Dessa hjälper dig att förstå hur du får rätt siffror i slutändan.
Med vänliga hälsningar,
Ta reda på varför det är viktigt att ha en dedikerad datumtabell i LuckyTemplates och lär dig det snabbaste och mest effektiva sättet att göra det.
Denna korta handledning belyser LuckyTemplates mobilrapporteringsfunktion. Jag ska visa dig hur du kan utveckla rapporter effektivt för mobila enheter.
I denna LuckyTemplates Showcase går vi igenom rapporter som visar professionell serviceanalys från ett företag som har flera kontrakt och kundengagemang.
Gå igenom de viktigaste uppdateringarna för Power Apps och Power Automate och deras fördelar och konsekvenser för Microsoft Power Platform.
Upptäck några vanliga SQL-funktioner som vi kan använda som sträng, datum och några avancerade funktioner för att bearbeta eller manipulera data.
I den här handledningen kommer du att lära dig hur du skapar din perfekta LuckyTemplates-mall som är konfigurerad efter dina behov och preferenser.
I den här bloggen kommer vi att visa hur man lager fältparametrar med små multiplar för att skapa otroligt användbara insikter och bilder.
I den här bloggen kommer du att lära dig hur du använder LuckyTemplates ranknings- och anpassade grupperingsfunktioner för att segmentera en exempeldata och rangordna den enligt kriterier.
I den här handledningen kommer jag att täcka en specifik teknik kring hur man visar Kumulativ total endast upp till ett specifikt datum i dina bilder i LuckyTemplates.
Lär dig hur du skapar och anpassar punktdiagram i LuckyTemplates, som huvudsakligen används för att mäta prestanda mot mål eller tidigare år.