cancel
Showing results for 
Search instead for 
Did you mean: 

Fabric is Generally Available. Browse Fabric Presentations. Work towards your Fabric certification with the Cloud Skills Challenge.

Reply
gdxy
Helper I
Helper I

DAX in KPI

Hi,

 

I would like to have a measure to present this idea but I don't really know how to do it with DAX, please see if it is feasible or not, thank you.

 

if year == 2021:

  target_score = 2021's score

else:

  target_score = year-1's score

 

For example, if the slicer selects 2021, the comparison could be (+0.0) if the slicer selects 2022. the KPI visual will compare the score of 2022 vs 2021 (2022-1). I would like to put the measure to the Target field in the KPI visual.

gdxy_0-1667734057746.png

 

 

 

1 ACCEPTED SOLUTION
amitchandak
Super User
Super User

@gdxy , Create a separate year/date table and have a measure like

 


//Only year vs Year, not a level below

This Year = CALCULATE(sum('Table'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])))
Last Year = CALCULATE(sum('Table'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])-1))
diff = [This Year]-[Last Year ]
diff % = divide([This Year]-[Last Year ],[Last Year ])

 

Time Intelligence, DATESMTD, DATESQTD, DATESYTD, Week On Week, Week Till Date, Custom Period on Period,
Custom Period till date: https://youtu.be/aU2aKbnHuWs&t=145s

Power BI — Year on Year with or Without Time Intelligence
https://medium.com/@amitchandak.1978/power-bi-ytd-questions-time-intelligence-1-5-e3174b39f38a
https://www.youtube.com/watch?v=km41KfM_0uA

View solution in original post

4 REPLIES 4
amitchandak
Super User
Super User

@gdxy , Create a separate year/date table and have a measure like

 


//Only year vs Year, not a level below

This Year = CALCULATE(sum('Table'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])))
Last Year = CALCULATE(sum('Table'[Qty]),filter(ALL('Date'),'Date'[Year]=max('Date'[Year])-1))
diff = [This Year]-[Last Year ]
diff % = divide([This Year]-[Last Year ],[Last Year ])

 

Time Intelligence, DATESMTD, DATESQTD, DATESYTD, Week On Week, Week Till Date, Custom Period on Period,
Custom Period till date: https://youtu.be/aU2aKbnHuWs&t=145s

Power BI — Year on Year with or Without Time Intelligence
https://medium.com/@amitchandak.1978/power-bi-ytd-questions-time-intelligence-1-5-e3174b39f38a
https://www.youtube.com/watch?v=km41KfM_0uA

Not sure why, but when I use
Last Year = CALCULATE(sum('university average (3)'[Value]),filter(ALL('year'),'year'[year]=MAX('year'[year])-1))
nothing is shown

Here are my tables:

gdxy_0-1667828676467.png

gdxy_2-1667828795724.png

 

 

 

I assume when I put the measure to the 'Target' field, if the year is 2021, the value will be the score in 2021, when the year is 2022 or above, the value will be the score of last year.

Sorry, I figured out the reason, the data type is text in one of my data fields.

Helpful resources

Announcements
PBI November 2023 Update Carousel

Power BI Monthly Update - November 2023

Check out the November 2023 Power BI update to learn about new features.

Community News

Fabric Community News unified experience

Read the latest Fabric Community announcements, including updates on Power BI, Synapse, Data Factory and Data Activator.

Power BI Fabric Summit Carousel

The largest Power BI and Fabric virtual conference

130+ sessions, 130+ speakers, Product managers, MVPs, and experts. All about Power BI and Fabric. Attend online or watch the recordings.

Top Solution Authors
Top Kudoed Authors