Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
8 years ago
Solved

Displaying Tenure

What is a way to display the tenure of a person in the format of "X years, X months"? I was thinking of doing a simple DATEDIFF calculation between their hire date and today's date but from there I'm not sure how to get the DAX to simultaneously provide the number of years and months. Either year or months has to be selected when constructing that type of formula. Thanks!

  • hello Anonymous,

     

    Pretty much the same as Anonymous...

     

    Tenure Calculated Column = 

    VAR EndingDate =
    IF(
    Table3[termDate] = BLANK(),
    TODAY(),
    Table3[termDate]
    )

    VAR Yr = DATEDIFF(Table3[hireDate], EndingDate, YEAR)
    VAR Mo = MOD(DATEDIFF(Table3[hireDate], EndingDate, MONTH),12)

    VAR Tenure =
    IF(
    Yr > 0,
    COMBINEVALUES(" ", Yr,"Years", Mo,"Months"),
    COMBINEVALUES(" ", Mo,"Months")
    )

    RETURN Tenure

5 Replies

  • ChrisMendoza's avatar
    ChrisMendoza
    Resident Rockstar

    hello Anonymous,

     

    Pretty much the same as Anonymous...

     

    Tenure Calculated Column = 

    VAR EndingDate =
    IF(
    Table3[termDate] = BLANK(),
    TODAY(),
    Table3[termDate]
    )

    VAR Yr = DATEDIFF(Table3[hireDate], EndingDate, YEAR)
    VAR Mo = MOD(DATEDIFF(Table3[hireDate], EndingDate, MONTH),12)

    VAR Tenure =
    IF(
    Yr > 0,
    COMBINEVALUES(" ", Yr,"Years", Mo,"Months"),
    COMBINEVALUES(" ", Mo,"Months")
    )

    RETURN Tenure
    • Anonymous's avatar
      Anonymous
      Not applicable

      Thank you ChrisMendoza and Anonymous ! Both work. Love having multiple ways to do things :)

    • N5's avatar
      N5
      Regular Visitor

      Hi Chris ! Thanks for this. 

      I used the this DAX formula for the tenure calculation in PowerBI. But it gives wrong calculation for the Year.

      For example someone who joined in 25 March 2019. Ideally it should be 3 Years and 10 Months. DAX formula gives 04 Years and 10 Months. Can someone help me correcting this formula?

  • Anonymous's avatar
    Anonymous
    Not applicable

    You could so something like this.  Calculate each piece separately.   

     

    For example,  

     

    Tenure Months
    var years = text.from(datediff([start_Date],[enddate], year)) var months = text.from(datediff([start_Date],[enddate], month) - (datediff([start_Date],[enddate], year) *12)) years + " Years, " + months + " Months"