Professional Documents
Culture Documents
Power BI - Session 6 Outline
Power BI - Session 6 Outline
DAX Functions
Lab Session 6
Outline
1. The calculate function
2. DAX contexts:- row & filter context
3. Time intelligence DAX calculations
4. Date table (separate)
Dates & drill down
Calculate Function
Evaluates an expression in context modified by filters.
A very powerful function in DAT
Syntax:-
=CALCULATE(expression, filter)
Example:=
Total sales=CALCULATE(SUM(Sales[sales]), Sales[sales]>0)
Row and filter context
Cus Id Name Region Type
Row context- works on row by row 1Zeleke South Government
basis. 2Melkam East Business
Calculate Total Sales, … 3Nebyu East Consumer
4Alemu North Business
Filter context- works on some given
5Selam West Government
filter condition not on row by row
basis. Cus Id Qty Unit Price Total Sales
5 10 2
East sales, Government sales, … 1 20 2.5
4 25 2
Internal filter vs external filters. 2 15 1.5
4 18 1.9
Internal to a CALCULATE function 3 5 2
External filter is outside a DAX formula, 2 30 2.5
5 10 1.5
such as in visuals.
Calculate Function…
Count the number of sales for a customer:
Count Cus Sales = count(Sales[Sales]) <= WRONG it counts all rows
Cus Sales Count = COUNTX(RELATEDTABLE(Sales),Sales[Sales])
Year to date:
Sales YTD = CALCULATE([Total Sales], DATESYTD(MyDates[date]))
Month to date:
Sales MTD = CALCULATE([Total Sales], DATESMTD(MyDates[date]))
To compute sales for the previous year’s mtd/ytd/qtd
Sales LY MTD=CALCULATE([TotalSales LY ],
DATESMTD(MyDates[Date]))
Sales difference with last year:
Sales Yearly Difference = [Total Sales] - [TotalSales LY]
Time Intelligence Functions
Calculating cumulative/rollover sales:
CumSales = CALCULATE ([Total Sales],
FILTER ( ALLSELECTED ( MyDates[Date] ),
MyDates[Date] <= MAX ( MyDates[Date] ) ))
Thank you!!