Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
9 years ago
Solved

direct application of WORKDAY function like in excel

Hello,   May I know how to create WORKDAY function in powerBI with DAX function? I have no holidays to add. I have a column with dates and another column with numerics. I just wanted to get the res...
  • Eric_Zhang's avatar
    Eric_Zhang
    9 years ago

    Anonymous wrote:

    Dear Phil_Seamark

     

    Thanks for the response.

    In your syntax, i couldn't figure out where to key in my customized day to add for each row.

    I have attached my sample data. Column C is my requirement. Could you please have a look?

     

     

    Thanks in advance!


    Anonymous

    You can create an calendar table as below

    dimdate =
    VAR onlyWorkdays =
        FILTER (
            CALENDAR ( "2017-01-01", "2017-12-31" ),
            WEEKDAY ( [Date] ) <> 1
                && WEEKDAY ( [Date] ) <> 7
        )
    RETURN
        ADDCOLUMNS (
            onlyWorkdays,
            "Index", RANKX ( onlyWorkdays, [Date],, ASC, DENSE )
        )

    Then connect your source table to the calendar table,  create a measure as

    exw date =
    VAR DateIndex =
        MAX ( dimdate[Index] )
    VAR LeadTime =
        MAX ( 'Table'[Lead Time] )
    RETURN
        MAXX (
            FILTER ( ALL ( dimdate ), dimdate[Index] = DateIndex + LeadTime ),
            dimdate[Date]
        )
    

     

    See more details in the pbix file.

  • Phil_Seamark's avatar
    Phil_Seamark
    8 years ago

    Hi Anonymous

     

    This is one way to do it as a calculated column.  Just replace Table3 with your own tablename

     

    exw date = 
    VAR myDate = ADDCOLUMNS(FILTER(CALENDAR(Table3[Order Date],TODAY()),WEEKDAY([Date],3)<5),"Days",1)
    VAR Cumulative = 
        ADDCOLUMNS(
            myDate,
            "D", SUMX(filter(myDate,[Date]<EARLIER([Date])),[Days])
                        )
    RETURN 
        MINX(FILTER(Cumulative,[D]='Table3'[Lead Time]),[Date])