Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get certified in Microsoft Fabric—for free! For a limited time, get a free DP-600 exam voucher to use by the end of 2024. Register now

Reply
Anonymous
Not applicable

Last Year (LY) Measure Limited by Current Date

Capture.PNGHello All:

 

Would someone help me to build a measure [Sales 2018] that shows last year amount for a selected period?

 

In the example attached to this post, [Sales 2018] for June should be $34.7 M (June 1 - 25), not $42.6 M (sum through June 30, 2018).

 

If I select, for example, May and June [Sales 2018] should be the amount from May 1 through June 25, 2018. And so on.

 

The solutions I've seen so far focus on YTD calculations and are quite confusing. I am trying to build a measure with dynamically changing date rage based on the selection.

 

Thank you all in advance.

 

Alex

 

 

 

 

 

 

1 ACCEPTED SOLUTION
Anonymous
Not applicable

Hi there.

 

Would you please show me the code (please format it first at www.daxformatter.com) for your [Sales 2018] measure? I understand June 25 is the current day. My suggestion would be this. Say you already have a simple base measure defined called [Sales 2018] that just returns the sum of sales from the fact table for any selection of attributes and only for the year 2018.

 

You can then build your measure like this:

 

var __currentDay = TODAY()
var __currentDayOneYearBack = EDATE( __currentDay, -12 )
var __sales =
	CALCULATE(
		[Sales 2018],
		KEEPFILTERS( 'Date'[Date] <= __currentDayOneYearBack )
	)
return
	__sales

This will or will not work OK depending on how [Sales 2018] is defined.

 

Best

Darek

 

 

View solution in original post

3 REPLIES 3
Anonymous
Not applicable

Hi there.

 

Would you please show me the code (please format it first at www.daxformatter.com) for your [Sales 2018] measure? I understand June 25 is the current day. My suggestion would be this. Say you already have a simple base measure defined called [Sales 2018] that just returns the sum of sales from the fact table for any selection of attributes and only for the year 2018.

 

You can then build your measure like this:

 

var __currentDay = TODAY()
var __currentDayOneYearBack = EDATE( __currentDay, -12 )
var __sales =
	CALCULATE(
		[Sales 2018],
		KEEPFILTERS( 'Date'[Date] <= __currentDayOneYearBack )
	)
return
	__sales

This will or will not work OK depending on how [Sales 2018] is defined.

 

Best

Darek

 

 

Anonymous
Not applicable

Hi Darek,

 

Your formula works!

How would you learn all this?

Anonymous
Not applicable

To be honest... I'm a faithful student of the two probably greatest DAX gurus in the world: Alberto Ferrari and Marco Russo. I've been through their courses and their books. I read one book several times until I understand everything in the tiniest details.

 

If you want, you can check this out: www.sqlbi.com (I'd recommend the course Mastering DAX, if you really want to know what's going on and how to address the most difficult DAX questions). And also go to Amazon for their ultimate book on DAX: Ultimate DAX Guide.

 

It's been some years now that I've been using DAX to create some pretty complex models. DAX takes time. Sadly 🙂

 

Best

Darek

Helpful resources

Announcements
November Carousel

Fabric Community Update - November 2024

Find out what's new and trending in the Fabric Community.

Live Sessions with Fabric DB

Be one of the first to start using Fabric Databases

Starting December 3, join live sessions with database experts and the Fabric product team to learn just how easy it is to get started.

Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early Bird pricing ends December 9th.

Nov PBI Update Carousel

Power BI Monthly Update - November 2024

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