Forum Discussion

astorey1's avatar
astorey1
Frequent Visitor
6 years ago
Solved

Matrix Column sort following an IF statement

I have a set of data that has dates in it and added a column in the data view (Because i didnt know how to do it in query editor) with the following statement:

Overdue Status = IF([Due Date]<TODAY(),"Overdue", IF([Due Date]-30<TODAY(), "Next 30 Days", "30+ Days Away"))

This is fine apart from on my visuals I want to sort in a certain order:
1. Overdue
2. Next 30 Days
3. 30+ Days away
I now find I cant conditionally sort in query editor as the column 'Overdue Status' does not exist. 
 
Any help appreciated. 
  • Anonymous's avatar
    Anonymous
    6 years ago

    Hello astorey1 

    The easiest way to do this is by creating a new column that represents your sort order and use the "Sort by column" option in the modelling ribon.

    Overdue Status = IF([Due Date]<TODAY(),1, IF([Due Date]-30<TODAY(), 2, 3))

     

    Kind regards
    Joren Venema

    Data & Analytics Consultant
    If this reply solved your question be sure to mark this post as the solution to help others find the answer more easily. 

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hello astorey1 

    The easiest way to do this is by creating a new column that represents your sort order and use the "Sort by column" option in the modelling ribon.

    Overdue Status = IF([Due Date]<TODAY(),1, IF([Due Date]-30<TODAY(), 2, 3))

     

    Kind regards
    Joren Venema

    Data & Analytics Consultant
    If this reply solved your question be sure to mark this post as the solution to help others find the answer more easily. 

  • Anonymous's avatar
    Anonymous
    Not applicable

    Following are the steps:

    Sort each row of the matrix.
    Get transpose of the matrix.
    Again sort each row of the matrix.
    Again get transpose of the matrix.
    Algorithm for sorting each row of matrix using C++ STL sort():

    for (int i = 0 ; i < n; i++)
    sort(mat[i], mat[i] + n);
    Algorithm for getting transpose of the matrix:

    for (int i = 0; i < n; i++) {
    for (int j = i + 1; i < n; i++) {
    int temp = mat[i][j];
    mat[i][j] = mat[j][i];
    mat[j][i] = temp;
    }
    }

    I hope this helps!

    Regards,

    Lewis

    Tech-consultant

    apps4rent | o365cloudexperts | clouddesktoponline