Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

TREATAS -funktionen i DAX är en av de mest intressanta DAX-formlerna som du kan använda i dina LuckyTemplates-modeller. Du kan se hela videon av denna handledning längst ner på den här bloggen.

Den har en mycket specifik användning som kan vara fördelaktig om du vill förenkla din datamodell och DAX-formler.

I den här handledningen ska jag visa dig hur vi kan skapa en virtuell relation inom en formel. Du behöver inte skapa några fysiska relationer i din datamodell. Du kan faktiskt länka två tabeller eller två kolumner från två olika tabeller med detta.

Det här exemplet är en del av Learning Summit som jag hade kring Revenue Budgeting med LuckyTemplates-medlemmar och andra deltagare.

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

Den här tekniken som jag ska visa dig är mycket viktig när du hanterar budgetar kontra faktiska resultat i LuckyTemplates. Du kan skapa denna analys effektivt genom att kombinera modellen och de korrekta DAX-beräkningarna.

Så här vill vi analysera hur det går med tiden och vi visar det kumulativt. Vi kan också välja och fokusera på ett specifikt territorium, enskilt element eller uppslagstabell och se hur vi går jämfört med våra budgetar.

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

Det intressanta med denna handledning är hur modellen är uppbyggd . Du kan effektivt strukturera det på detta sätt genom att förstå vad virtuella relationer gör inuti LuckyTemplates . Så innan vi går in på våra LuckyTemplates TREATAS-beräkningar, låt oss ta en titt på datamodellen.

Innehållsförteckning

Modellstruktur för virtuella relationer

Vår modell här är ganska detaljerad, men för denna handledning, låt oss fokusera på de virtuella tabellerna. Om du tittar på tabellen Regionala budgetar kommer du att märka att den inte har något fysiskt samband mellan någonting.

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

Virtuella tabeller som detta kommer att göra det hårda arbetet för oss. De kommer att skapa rätt filter åt oss i enlighet med de beräkningar vi vill visa utifrån våra val.

Om du tittar närmare på våra regionala budgetar ser du att den är uppdelad per stad. Vi har den faktiska budgeten för 2018 per stad . Det här skapades med en formel, men jag kommer inte gå in på det nu eftersom det är ett ämne i en annan handledning.

Men om du tittar på den här tabellen har vi faktisk information som händer varje dag och dessa resultat har en årlig granularitet. 

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

Vi måste kunna bryta ner dessa och fördela dem över året. Och så har vi en annan tabell, som jag kallade budgetkänslighetstabellen

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

För att allokera en årlig budget har jag gett en känslighetsfaktor varje månad. Detta kommer att bli totalt en eftersom budgetkänsligheten kommer att delas upp till hundra procent i sina enskilda delar per månad. 

Och om vi går tillbaka till vår modell kommer du att se att denna budgetkänslighetstabell inte är kopplad till någonting också. Det finns ingen fysisk relation.

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

Denna teknik kommer att ge din modell en hel del effektivitet. Du har inte köer överallt. Du behöver inte skapa ytterligare tabeller för att skapa rätt relationer. Vi kan göra detta virtuellt med TREATAS. 

Så när det gäller upplägget har vi budgetar på årsnivå och vi kan bryta ner dem på en månadsnivå eftersom vi har känsligheten. Nu måste vi räkna ut antalet till en daglig nivå eftersom det är så vi beräknar en ackumulerad summa

Använda TREATAS för att skapa virtuella relationer

Först och främst måste vi skapa en beräkning som kan filtreras efter något i Regionens tabell. Om du kan förstå hur LuckyTemplates TREATAS fungerar, kommer du att vara på ett bra ställe att förenkla dina modeller och skapa dessa virtuella relationer. 

Så i vår första formel, den årliga budgeten , summerar vi den årliga summan men vi kan också filtrera den årliga summan efter något i staden eller regionens tabell . Detta beror på att vi kopplar samman kolumnen Stad i tabellen Regionala budgetar med kolumnen Stad i tabellen Regioner.

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

Men i det här fallet har vi bara den årliga informationen. Vi måste dela upp det per månad, så det är här känsligheten kommer in. Jag skapade en annan åtgärd som heter 2018 månadsbudgetar .

Här skapar vi en virtuell relation mellan tabellen Datum , som är kolumnen Kort månad och kolumnen Månadsnamn i tabellen  Budgetkänslighet .

Om det i ett visst sammanhang kan vara som månad och år, kommer denna budgetkänslighet att filtreras utifrån det. Det är precis vad som går ner i IF-logiken för denna åtgärd. Och sedan multipliceras den årliga budgeten med BudgetAllocation .

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

Slutligen delar vi upp det efter dag för att göra den ackumulerade summan av den. Eftersom vi har månadsinformationen, logiskt sett behöver vi bara multiplicera eller dividera månadsinformationen med hur många dagar det är i en viss månad. Det kommer att bryta ner det på daglig nivå.

Den första delen av denna formel för dagliga nivåer, 2018 Daily Budgets , är mycket lik vad vi gjorde med månadsnivån. Sedan räknar vi ut hur många dagar i en viss månad eller kontext vi kan vara på, och det är vad som händer i vår variabel ( VAR ) för DaysInMonth.

Skapa virtuella relationer i LuckyTemplates med hjälp av TREATAS-funktionen

Vi använder COUNTROWS i datumtabellen , ta bort sammanhanget på datum med, men lägg sedan till det igen för månaden och året med hjälp av. Så det sägs att om vi är i januari, kommer de att vara 31 dagar. Och sedan använder vi samma OM-logik, men vi multiplicerar det med 1 och dividerar det sedan med 31 (för januari).




Slutsats

Virtuella relationer kan användas på många olika sätt. Det finns säkert många andra scenarier där denna teknik skulle kunna användas, men detta är ett mycket bra exempel. Vi skapade virtuella relationer inuti LuckyTemplates med TREATAS-funktionen.

Det mest logiska skälet till att använda den här funktionen och anledningen till att jag använder den ganska flitigt i många modeller som jag utvecklar är att den verkligen förenklar allt du gör i backend av din modell; i datamodellen i din LuckyTemplates-rapport.

Istället för att ha en rad relationer som kan föra med sig ett antal komplexiteter i din utveckling, kan TREATAS-funktionen verkligen förenkla datamodellaspekten och de relationer som kan byggas in i dina DAX-formler.

Jag hoppas att du tycker om att arbeta igenom detta!

***** Lär du dig Lucky Templates? *****







Upptäck unika insikter med LuckyTemplates TOPN-funktion

Upptäck unika insikter med LuckyTemplates TOPN-funktion

Den här bloggen innehåller LuckyTemplates TOPN DAX-funktion, som gör att du kan få unika insikter från dina data, vilket hjälper dig att fatta bättre marknadsföringsbeslut.

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Datamodellering i LuckyTemplates med hjälp av stödtabeller

Lär dig några fantastiska analytiska tekniker som vi kan göra för datamodellering i LuckyTemplates med hjälp av DAX-stödtabeller.

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Avancerad DAX för LuckyTemplates: Implementering av rankningslogik över unika insikter

Här dyker vi in ​​i LuckyTemplates Advanced DAX och implementerar rankningslogik för att få en mycket unik insikt. Jag visar också upp måttförgrening i det här exemplet.

LuckyTemplates What-If-parameterfunktion

LuckyTemplates What-If-parameterfunktion

Den här bloggen introducerar den nya funktionen i LuckyTemplates, analysparametern What-If. Du kommer att se hur det gör allt snabbt och enkelt för din scenarioanalys.

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Använd LuckyTemplates Mät förgreningar för att kontrollera om dina marginaler ökar när intäkterna växer

Lär dig hur du avgör om din intäktstillväxt är bra genom att kontrollera om dina marginaler ökade med hjälp av LuckyTemplates mäter förgrening.

LuckyTemplates parametrar via frågeredigerare

LuckyTemplates parametrar via frågeredigerare

Lär dig och förstå hur du kan skapa och använda LuckyTemplates-parametrar som är en kraftfull funktion i frågeredigeraren.

Runda stapeldiagram – En visualisering för din instrumentpanel

Runda stapeldiagram – En visualisering för din instrumentpanel

Denna handledning kommer att diskutera hur man skapar ett runt stapeldiagram med Charticulator. Du kommer att lära dig hur du designar dem för din LuckyTemplates-rapport.

PowerApps funktioner och formler | En introduktion

PowerApps funktioner och formler | En introduktion

Lär dig hur du använder PowerApps funktioner och formler för att förbättra funktionaliteten och ändra ett beteende i vår Power Apps canvas-app.

Pipe In R: Anslutningsfunktioner med Dplyr

Pipe In R: Anslutningsfunktioner med Dplyr

I den här handledningen kommer du att lära dig hur du kopplar ihop funktioner med hjälp av dplyr-röroperatorn i programmeringsspråket R.

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX Deep Dive: A Lucky Templates DAX-funktion

RANKX från LuckyTemplates låter dig returnera rankningen av ett specifikt nummer i varje tabellrad som utgör en del av en lista med nummer.