Forum Discussion

AndyKing's avatar
AndyKing
New Member
3 years ago
Solved

Calculate elapsed time in aggregation

Hi, I have a timeseries data imported to PowerBI Desktop. The data is in table format and it is composed of processes, sub process, sub process StartTime and subprocess EndTime. Each process has mul...
  • Anonymous's avatar
    Anonymous
    3 years ago

    Hi  AndyKing ,

     

    Here are the steps you can follow:

    1. In Power query. Add Column – Index Column – From 1.

    2. Create calculated column.

    IF =
    var _1=
    VALUE(RIGHT('Table'[SubProcess],1))
    return
    IF(_1=1,1,0)
    Group =
    SUMX(FILTER(ALL('Table'),'Table'[Index]<=EARLIER('Table'[Index])),[IF])

    3. Create measure.

    StartTime_Measure =
    MINX(FILTER(ALL('Table'),
    'Table'[Process]=MAX('Table'[Process])&&YEAR('Table'[StartTime])=YEAR(MAX('Table'[StartTime]))
    &&MONTH('Table'[StartTime])=MONTH(MAX('Table'[StartTime]))&&DAY('Table'[StartTime])=DAY(MAX('Table'[StartTime]))),[StartTime])
    EndTime_Measure =
    MAXX(FILTER(ALL('Table'),
    'Table'[Process]=MAX('Table'[Process])&&YEAR('Table'[EndTIme])=YEAR(MAX('Table'[EndTIme]))
    &&MONTH('Table'[EndTIme])=MONTH(MAX('Table'[EndTIme]))&&DAY('Table'[EndTIme])=DAY(MAX('Table'[EndTIme]))),[EndTIme])
    ElapsedTime (min) =
    DATEDIFF(
        [StartTime_Measure],[EndTime_Measure],MINUTE)

    4. Result:

     

    Best Regards,

    Liu Yang

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly