Forum Discussion

Fidzi8's avatar
Fidzi8
Helper V
5 years ago
Solved

Diff. date without weekend´s hours

Hi,

I need advice to adjust the formula.

I need column Diff. order (h) without weekend´s hours.

 

Thank you
Ondřej

  • Hi Fidzi8  

    You cold try  the following  Steps:

    Step 1:create date table:

    Dates = CALENDAR("2021/1/1","2021/12/31")

     

     

    Step 2:create new table base on dates:

    date1 =
    GENERATE (
        CALENDARAUTO (),
        VAR yyyy =
            YEAR ( [Date] )
        VAR mmmm =
            MONTH ( [Date] )
        RETURN
            ROW (
                "Year"yyyy,
                "Month"FORMAT ( [Date], "mmmm" ),
                "Month2"mmmm,
                "Week1"FORMAT ( [Date], "dddd" ),
                "Week2"WEEKDAY ( [Date] ),
                "weekday"NOT WEEKDAY ( [Date] ) IN { 17 }
            )
    )

     

     

    Step 3, Create new column in main database table:

    difforder =
    VAR day1 =
        CALCULATE (
            COUNTROWS ( 'date1' ),
            DATESBETWEEN ( date1[Date], OTTO[Time of order], OTTO[Delivery(To)+ 1h] ),
            date1[weekday] <> TRUE,
            ALL ( OTTO )
        )
    VAR day2 =
        IF ( day1 = BLANK ()0day1 )
    VAR day3 =
        DATEDIFF ( OTTO[Time of order], OTTO[Delivery(To)+ 1h], HOUR ) - day2 * 24
    RETURN
        day3

     

     

     

     

    Click here to download pbix if you need.

     

    Best Regard

    Lucien Wang

     

2 Replies

  • v-luwang-msft's avatar
    v-luwang-msft
    Community Support

    Hi Fidzi8  

    You cold try  the following  Steps:

    Step 1:create date table:

    Dates = CALENDAR("2021/1/1","2021/12/31")

     

     

    Step 2:create new table base on dates:

    date1 =
    GENERATE (
        CALENDARAUTO (),
        VAR yyyy =
            YEAR ( [Date] )
        VAR mmmm =
            MONTH ( [Date] )
        RETURN
            ROW (
                "Year"yyyy,
                "Month"FORMAT ( [Date], "mmmm" ),
                "Month2"mmmm,
                "Week1"FORMAT ( [Date], "dddd" ),
                "Week2"WEEKDAY ( [Date] ),
                "weekday"NOT WEEKDAY ( [Date] ) IN { 17 }
            )
    )

     

     

    Step 3, Create new column in main database table:

    difforder =
    VAR day1 =
        CALCULATE (
            COUNTROWS ( 'date1' ),
            DATESBETWEEN ( date1[Date], OTTO[Time of order], OTTO[Delivery(To)+ 1h] ),
            date1[weekday] <> TRUE,
            ALL ( OTTO )
        )
    VAR day2 =
        IF ( day1 = BLANK ()0day1 )
    VAR day3 =
        DATEDIFF ( OTTO[Time of order], OTTO[Delivery(To)+ 1h], HOUR ) - day2 * 24
    RETURN
        day3

     

     

     

     

    Click here to download pbix if you need.

     

    Best Regard

    Lucien Wang