Forum Discussion
peterhui50
4 years agoHelper III
Optimize a measure?
Is there a way to optimize this measure?
Items_Sold__Rolling_12_Months__Last_Year =
CALCULATE ([Items Sold],
SAMEPERIODLASTYEAR (
DATESINPERIOD ( DATE_TABLE[Date], LASTDATE ( DATE_TABLE[Date] ), -12, MONTH )) )
A bit of explanation --
DATESINPERIOD measure will bring me to Dec 31 2021 because my last date is Dec 31 2021. The SAME PERIOD LAST YEAR then flips it to Dec 31 2020. Which is what I want, I want to get the items sold for Dec 2020.
Is there a better way? seems redundant. I can probably just do DATESBETWEEN() but I don't want to hard code it. I don't want to do
CALCULATE([Items Sold], DATESBETWEEN(DATE_TABLE[Date], DATE(2020,1,1) , DATE(2020,12,31))
I looked at this before Anonymous posted a reply...
Try this
ItemsSoldRolling12MonthsLastYear = CALCULATE( [ItemsSold], PREVIOUSYEAR(DATE_TABLE[Date])) )This requires you have a date table and that it's marked appropriately. Hope this helps!
3 Replies
- littlemojopuppyCommunity Champion
I looked at this before Anonymous posted a reply...
Try this
ItemsSoldRolling12MonthsLastYear = CALCULATE( [ItemsSold], PREVIOUSYEAR(DATE_TABLE[Date])) )This requires you have a date table and that it's marked appropriately. Hope this helps!
- littlemojopuppyCommunity Champion
peterhui50 how are Anonymous and my solutions looking? 😉
- AnonymousNot applicable
Hi peterhui50
How about filtering the Year?
CALCULATE ([Items Sold],FILTER(DATE_TABLE, DATE_TABLE[Year]=YEAR(LASTDATE(DATE_TABLE[Date]))-1))