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

Measure to determine if item is within 5 year / 10 year periods

Hi all, 

 

Struggling with some date work based on years against TODAY and a static date. I have never used calendars and Im wondering if this is what I need. 

 

I have a table of components which have a column called PRIORTY DATE, this column has both past and future dates, I want to concentrate on the past dates. The components are considered as overdue if the PRIOROTY DATE is before TODAY, however I need to be able to determine HOW overdue they are and split them into one of 3 categories. 

 

Overdue within 5 years (from TODAY)

Overdue between 5 years & 10 years (from TODAY)

Overdue over 10 years (from TODAY).

 

Example data 

 

One is under 5 years overdue 

One is between 5 & 6 years overdue 

One is over 10 years overdue 

 

component_refpriority_dateOverdue_Current
57338412/10/1996Overdue
26010819/02/2016Overdue
26032619/02/2018Overdue

 

Any suggestions on either a column or a measure most welcome 😁

 

Thanks! 

 

 

2 ACCEPTED SOLUTIONS
Anonymous
Not applicable

@Googlecanthelp 

Please find the solution below using measure:

shwetadalal_0-1646661256837.png

 

Dax Measure:

 

OverdueCurent =
VAR datedifference =
DATEDIFF ( SELECTEDVALUE ( Data[priority_date] ), TODAY (), YEAR )
VAR diff =
IF (
datedifference <= 5,
"Under 5 years",
IF (
datedifference > 5
&& datedifference <= 10,
"Between 5-10 years",
IF ( datedifference > 10, "Over 10 years", BLANK () )
)
)
RETURN
diff
 
 
Please accept it as a solution if it matches your requirement🙂

View solution in original post

v-jayw-msft
Community Support
Community Support

Hi @Googlecanthelp ,

 

Please check the measure.

Measure = 
var _5year = EDATE(TODAY(),-60)
var _10year = EDATE(TODAY(),-120)
var _prio = SELECTEDVALUE('Table'[priority_date])
return
SWITCH(TRUE(),
_prio<TODAY()&&_prio>=_5year,"Overdue within 5 years",
_prio<_5year&&_prio>=_10year,"Overdue between 5 years & 10 years",
_prio<_10year,"Overdue over 10 years")

1.jpg

 

Best Regards,

Jay

Community Support Team _ Jay
If this post helps, then please consider Accept it as the solution
to help the other members find it.

View solution in original post

4 REPLIES 4
v-jayw-msft
Community Support
Community Support

Hi @Googlecanthelp ,

 

Please check the measure.

Measure = 
var _5year = EDATE(TODAY(),-60)
var _10year = EDATE(TODAY(),-120)
var _prio = SELECTEDVALUE('Table'[priority_date])
return
SWITCH(TRUE(),
_prio<TODAY()&&_prio>=_5year,"Overdue within 5 years",
_prio<_5year&&_prio>=_10year,"Overdue between 5 years & 10 years",
_prio<_10year,"Overdue over 10 years")

1.jpg

 

Best Regards,

Jay

Community Support Team _ Jay
If this post helps, then please consider Accept it as the solution
to help the other members find it.
Anonymous
Not applicable

@Googlecanthelp 

Please find the solution below using measure:

shwetadalal_0-1646661256837.png

 

Dax Measure:

 

OverdueCurent =
VAR datedifference =
DATEDIFF ( SELECTEDVALUE ( Data[priority_date] ), TODAY (), YEAR )
VAR diff =
IF (
datedifference <= 5,
"Under 5 years",
IF (
datedifference > 5
&& datedifference <= 10,
"Between 5-10 years",
IF ( datedifference > 10, "Over 10 years", BLANK () )
)
)
RETURN
diff
 
 
Please accept it as a solution if it matches your requirement🙂

Thank you @Anonymous this worked a treat 🙂 

Jihwan_Kim
Super User
Super User

Hi,

Please check the below picture and the attached pbix file.

One of ways to solve this is to create a helper table, like Overdue Table in a model, and create a measure.

 

Picture1.png

 

Overdue_current: =
IF (
HASONEVALUE ( Data[component_ref] ),
CALCULATE (
VALUES ( Overdue[Overdue] ),
FILTER (
Overdue,
( TODAY () - MAX ( Data[priority_date] ) ) / 365.25 >= Overdue[Min]
&& ( TODAY () - MAX ( Data[priority_date] ) ) / 365.25 < Overdue[Max]
)
)
)

If this post helps, then please consider accepting it as the solution to help other members find it faster, and give a big thumbs up.


Go to My LinkedIn Page


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.

Top Solution Authors