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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Richard76
Helper II
Helper II

Time intelligence formulae

Hi Folks,

really struggling with some time intelligence formaulae on power BI. I'm trying to work out sales figures up to the same day the previous year. So in example below I need to compare from 1/1/19/ - 8/1/2019 . I was using

Same Period LY = Calculate( [Total Sales], PREVIOUSYEAR( 'Time'[PK_Date] )) which worked fine when I only had 2 years date ie 2018 & 2019. Now I have 3 years its not working so how do I amend the starting point of the calculation which will be 1/1/2019 ??

Power BI.PNG

1 ACCEPTED SOLUTION
Anonymous
Not applicable

Jesus it's still morning here I can't seem to do what I was thinking 😂
There was a parentisis missing sorry!!

Sales LY = CALCULATE([Total Sales],DATESBETWEEN('Time'[PK_Date],MIN('Time'[PK_Date]),MAX('Time'[PK_Date])-365)

BR,

DR

View solution in original post

6 REPLIES 6
Anonymous
Not applicable

Hi @Richard76 ,

 

I assume all your relationships are done between the date and fact table.

 

So I would do 

Same Period LY = Calculate( [Total Sales], sameperiodlastyear( 'Time'[PK_Date] ))

or

Same Period LY = Calculate( [Total Sales], DATEADD('Time'[PK_Date] ,-1,year)

 

Let me know if it worked, if so mark as solution.

 

Best Regards,

DR

Sorry I'm probably not explaining clearly. I already have a formulae in as you suggested but the issue is I also have a date slicer in as well which runs from 1/1/19  - 8/1/2020 . When I try the formulaes you suggested it gives me the sales for the full year (I have data running from 2018) but I only want from 1/1/19 - 8/1/19 if that makes sense 

Anonymous
Not applicable

Hi again @Richard76,

 

I may have misunderstood, in that case I would use dates between in the calculate formula, like

 

LY Sales = calculate([total sales],DATESBETWEEN(DATE,MIN(DATE),MAX(DATE)-365)

 

I'm not sure but I think this might work, let me know 👌

Getting an error with that formulae 'too few arguments were passed to the DATESBETWEEN function but cant work out where it is wrong 

 

Sales LY = CALCULATE([Total Sales],DATESBETWEEN('Time'[PK_Date],MIN('Time'[PK_Date],MAX('Time'[PK_Date])-365)
Anonymous
Not applicable

Jesus it's still morning here I can't seem to do what I was thinking 😂
There was a parentisis missing sorry!!

Sales LY = CALCULATE([Total Sales],DATESBETWEEN('Time'[PK_Date],MIN('Time'[PK_Date]),MAX('Time'[PK_Date])-365)

BR,

DR

Thanks you so much this works a treat and is so much easier than some of the other 'solutions' I was trying to follow online. 

Now get some sleep 😀😆

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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