Forum Discussion

rg72's avatar
rg72
Frequent Visitor
8 years ago
Solved

Last 8 weeks - In order

Hi all.

 

I'm building a graph to show a rolling 8 weeks of tickets resolved by a support team. The data is being pulled directly from service now via odbc.

 

Using help on here provided to others, I've got the graph to show the last 8 weeks of data, however the axis is sorted in numerical order, rather than date order. I've been wracking my brain on how to re-order the axis, but no joy.

 

 

The code used to generate is ...

 

"Week", each Date.ToText(Date.StartOfWeek ([sys_created_on], Day.Monday), "dd/MM") & "-" & Date.ToText(Date.EndOfWeek([sys_created_on],Day.Monday),"dd/MM"))

 

Obviously this is using date to text, hence the ordering issue, but I'm not sure how to proceed.

 

I think I can cut out the 2nd part of the formula (ie the "- xx/xx' part) and just have an effective week commencing date of dd/MM, but it's then how I convert that to be able to get the correct sort order that I'm suck at.

 

Any help would be greatly appreciated.

 

TIA

 

Rob

 

  • Hi rg72,

     

    Rfranca is correct, this is far easier with a date dimension however using your customised field of "dd/MM" will be problematic as you cannot gurantee that that combination is unique for that week over several years which is typically what you get in a date dimension. For example  26/12-01/01 occurs in 2011 and 2016.

     

    If you are using just a small amount of data not spanning more than a few years you won't get this problem however. Using the last 90 days of my date dimesnion I created a "dummy" dimension table using your format so that it's order correctly.

     

    Create StartDateOfWeek and Custom.2 columns in your original table.

     

    Copy that table as a new table and group the new table as so.

    Then join the new table and original table together on start date of week

    Then sort your custom column in the new table.

    Then you can use the custom2 field as your axis

    And it will ordered correctly.

     

    I am not a big fan of date formats like that and I would much prefer to see a date as the start of week in "yyyy-MM-dd" format.

14 Replies

  • vanessafvg's avatar
    vanessafvg
    Community Champion

    rg72 hi rob what ou will have to do is create an index field and then sort that date range field by the index, i.e if you look on your modelling table, you can sort different fields by other fields using sort by.

     

    that should resolve it

    • rg72's avatar
      rg72
      Frequent Visitor

      vanessafvgYou make it sound so easy :)

       

       

      Whichever field I choose, I get the same error.

       

      If you have a 'Rob is a dummy' step-by-step guide that would be great :)

      • vanessafvg's avatar
        vanessafvg
        Community Champion

        lol

         

        rg72 ok this will be to do with modelling your data, however the index has to be unique to each part of the range, so you need have only one value for each range value - make sense?

         

        ie, #

        1 jan

        2 feb

        1 jan

        3 mar

        2 feb