Forum Discussion

Calcul8or's avatar
Calcul8or
Frequent Visitor
8 years ago

Rank by process and date selection

Hi,

 

I really hope someone can help me out with this problem.

 

I need to rank values by their inconsistent process names over a date range selection, as shown in the illustration below. The process names are inconsistent because they occur randomly, and so there can be gaps between them.

 

 

 

Rank has to be applied dynamically over any date range selection, and ordered according to the process hierarchy.

 

*** Once ranked, then the difference between a process and the one before it has to be calculated for each. ***

 

Can this be done?

4 Replies

  • CahabaData's avatar
    CahabaData
    Memorable Member

    to my eye it looks like a sort by date, then a sort by process - - the rank is a sequential index of that sort order

     

     

  • v-sihou-msft's avatar
    v-sihou-msft
    Microsoft Employee

    Calcul8or

     

    In this scenario, I suggest you create a dummy column to combine Date and Order Step into numeric for ranking. 

     

    You can add a column like below:

     

     

    Rank Number =
    1 * ( Table[Date] )
        * 1000
        + VALUE ( RIGHT ( Table[Order Step], LEN ( Table[Order Step] ) - 8 ) )

    Then you can create a rank measure :

     

     

    Rank =
    RANKX (
        ALLSELECTED ( Table ),
        CALCULATE ( SUM ( Table[Rank Number] ) ),
        ,
        ASC,
        DENSE
    )

    Regards,

  • Calcul8or's avatar
    Calcul8or
    Frequent Visitor

    CahabaDatav-sihou-msft, thank you both for your replies. Both your suggestions work, but I should also have mentioned that this was just the first step. Once I found a way to rank processes by date range, I need to be able to offset their totals and subtract the latest from the previous, which I haven't been able to do yet.

     

    Any suggestions?

    • CahabaData's avatar
      CahabaData
      Memorable Member

      as words are subject to interpretation (for instance I don't understand what is meant by "offset"...) - I suggest you provide 2 sets of data

       

      i.e.

       

      1. Have this

       

      2. Need this

       

      and if the aggregation is not obvious to us - a brief explanation of what the aggregation logic is....

       

      You already have posted 3 data sets - and so it is not clear as to what would now be your starting point for the next step....