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.
Den här bloggen kretsar kring en LuckyTemplates tidrapport och de tillhörande lönekostnaderna. Jag ska visa dig hur du beräknar tidsdata och lönetyp med hjälp av DAX. Jag ska demonstrera en DAX-lösning med mått och en annan med beräknade kolumner. Du kan se hela videon av denna handledning längst ner på den här bloggen.
Detta exempel kom från en, som vi kör i LuckyTemplates. Detta är ett verkligt scenario som vi ofta möter i organisationer och företag, och LuckyTemplates är precis rätt verktyg för att göra jobbet enklare och snabbare.
Så, låt oss komma till det.
Innehållsförteckning
LuckyTemplates Tidrapport & Löner: Lösning för beräknade kolumner
För den beräknade DAX-lösningen med hjälp av beräknade kolumner går jag till Tidtabellen och skapar ett mått, som jag kallar CC-Regular Hours , för att beräkna de ordinarie timmarna.
I den här formeln får jag timmarna från tabellen och lägger dem i en variabel (). Sedan räknar jagdet är en semester, helg eller en vanlig dag. Medfunktionen använder jag datamodellen för att bestämma det och sedan använder jag de två variablerna (_IsHolidayDay och _IsWeekendDay ) för att bestämma den tredje ( _IsRegularDay ).
Slutligen använder jag ett uttalande där jag kontrollerar de ordinarie timmarna. De andra två (semester och helger) kommer att bli. Och om det är en vanlig dag vill jag återställa timmarna upp till åtta timmar, och sedan använder jag RETURN Result- konstruktionen.
Jag kommer att göra ungefär samma sak för formeln för övertidstimmar ( CC-Overtime Hours ) – jag kommer bara att ändra SWITCH TRUE-satsen. Detta kommer att returnera timmarna för en helgdag. Om det är en vanlig dag kommer den att återgå till timmarna över åtta timmar.
För semestertimmarna kommer den att returnera alla timmar om det är en semesterdag och returnerar blanka om det är en helgdag eller en vanlig dag.
Låt oss nu gå vidare till lönerna. För den ordinarie löneformeln kommer jag att utnyttja den beräknade kolumnen som jag just gjorde för ordinarie timmar. Jag kommer att bestämma lämpliga löner genom att använda lönetyp , rak tid .
Jag får medarbetarnas timlön från datamodellen och sedan använder jag a för att få multiplikatorn från tabell över lönetyper att gälla. Och slutligen beräknar jag variabeln Result , och har sedan RETURN-resultatet i slutet.
För övertid ändrar jag bara löneslaget till Time and a Half .
Jag kommer att göra en liknande sak för semesterlöner, men jag ändrar bara löneslaget till Dubbeltid .
Slutligen ska jag göra en enkel summa för att göra det totala värdet tillgängligt för mig.
När jag drar in dessa kolumner i rapporten kan vi se resultatet.
LuckyTemplates Tidrapport & Löner: DAX-lösning med mått
Jag ska göra ungefär samma sak som jag gjorde för beräknade kolumner, men den här gången ska jag göra en liten förändring.
Jag har inte tillgång till tidsvärdet direkt från tabellen, så jag kommer att använda enhär för att få timmarna förknippade med den specifika tidsinmatningen som visas i det visuella. Utöver det är koden densamma som den var för versionen med beräknade kolumner.
Jag har gjort en mycket liknande sak för övertidstimmarna och semestertimmarna. Det är samma regler som för beräknade kolumner.
När det gäller lönerna så beräknas de väldigt mycket på samma sätt. Den enda skillnaden från de beräknade kolumnerna är variabeln för timmar. Jag använder måttvärdet som jag beräknade. Jag gör också samma sak för övertidslönerna och samma sak för semesterlönen.
Sedan ska jag skriva ett enkelt summamått för den totala lönen.
Och nu lägger jag till dessa åtgärder i tabellen så att vi kan se resultaten. Observera att inget av måtten visar totaler. För att se de totala värdena för måtten här kommer jag att använda mönstret för att fixa felaktiga totaler . För att göra detta måste jag skapa åtgärder som använder virtuella tabeller för att efterlikna den fysiska tabellen som jag har här.
Åtgärda felaktigt totalmönster
För att fixa detta måste jag skapa åtgärder som använder virtuella tabeller för att efterlikna den fysiska tabellen som jag har här. Så för de totala timmarna använde jagkonstruktion för att skapa en virtuell tabell med ett tids-ID och timmar. Och så använder jagöver den virtuella tabellen för att beräkna värdet.
Jag drar in det i tabellen här nedan, och nu kan vi se det totala antalet timmar.
Jag kommer att göra detsamma för lönerna, där jag ska använda och SAMMANFATTA . Och sedan för resultatet kommer jag att använda funktionen för måttet som jag redan skapat och SUMX för den virtuella tabellen.
Jag lägger sedan till det i tabellen här, och vi kan se att vi har de totala lönerna nu.
En annan sak är att när jag placerar mitt Totallöner-mått i ett enkelt stapeldiagram med avdelningar och lönearter så ser du att jag inte får några värden här.
Detta är en del av problemet med åtgärdade felaktiga totaler. Och ett av de bästa sätten jag har hittat för att fixa detta är att använda den virtuella tabellen och ändra måttet.
Så jag tar ut den utan den virtuella tabellen och jag lägger till den med den virtuella tabellen.
Slutsats
Båda DAX-lösningarna är bra för denna LuckyTemplates tidrapport och löneutmaning. Men de har också sina för- och nackdelar.
Fördelarna med att använda åtgärder är att de är bästa praxis. De beräknas inte när modellen uppdateras, utan snarare bara när måttet faktiskt används i en visuell. Nackdelen för dem är att det krävs lite extra DAX-kod när vi arbetar med virtuella tabeller för att representera saker för att få dem korrekt beräknade. Men det är ingen stor sak alls.
När det gäller beräknade kolumner tycker jag att de är lättare att lära sig och visualisera. De är en mycket välbekant startplats för dem som kommer från Excel. En av begränsningarna med beräknade kolumner är dock att de faktiskt skapas fysiskt i datamodellen och de ökar storleken på din modell, vilket kommer att minska resultatet för din rapport.
Och den allmänna regeln är att du inte ska skapa beräknade kolumner på faktatabeller. Om du måste skapa en beräknad kolumn, försök att göra det på dimensionstabeller.
Jag använder personligen beräknade kolumner för att lägga till kategorisering i vissa dimensionstabeller, där det fanns många dimensioner som skulle visas.
Jag hoppas att du har njutit av den här och lärt dig mycket. Du kan se hela videon av denna handledning nedan.
Skål!
Greg
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.