Sort order items of an itemtype by date (created_on property)

Hello,

Is there any way in the configuration to retreive all items of an ItemType sorted by date (created_on property) when runing search.

otherwise i have developped a server method without success: 

Innovator inn = this.getInnovator();

Item Items = inn.newItem("name of the ItemType","get");


Items.setAttribute("orderBy", "[name of the ItemType].created_on desc ");

return Items.apply();


Any help please ?

Parents
  • Hello,

    You can configure this directly from the ItemType without needing to write any code by following the steps below.

    1. Login as admin
    2. Navigate to the desired ItemType
    3. Click the Edit button
    4. Go to the Properties relationship tab
    5. Scroll down to created_on and enter '1' in the Order By column
    6. Check the other properties to ensure there is no other Order By set
      1. If there is, either remove it or make sure it is a number greater than '1'
    7. Save and close your ItemType

    When the results of a query are returned for an ItemType, it checks to see if any properties have an Order By set. If there is just one property, the results of the query are sorted by that property. If there is more than one property, the results are first sorted by the property with the lowest value and then by the property with the next lowest value and so on.


    Chris

    Christopher Gillis

    Aras Labs Software Engineer

Reply
  • Hello,

    You can configure this directly from the ItemType without needing to write any code by following the steps below.

    1. Login as admin
    2. Navigate to the desired ItemType
    3. Click the Edit button
    4. Go to the Properties relationship tab
    5. Scroll down to created_on and enter '1' in the Order By column
    6. Check the other properties to ensure there is no other Order By set
      1. If there is, either remove it or make sure it is a number greater than '1'
    7. Save and close your ItemType

    When the results of a query are returned for an ItemType, it checks to see if any properties have an Order By set. If there is just one property, the results of the query are sorted by that property. If there is more than one property, the results are first sorted by the property with the lowest value and then by the property with the next lowest value and so on.


    Chris

    Christopher Gillis

    Aras Labs Software Engineer

Children
  • Hello Chris,

    Thank you for your reply,

    This is what i have done, the results of the query are sorted by that property (created_on) but in ascending order and not

    descending.

    Do you have an idea on how to get the results in DESC order ?

  • Hi mouad,

    Thank you for clarifying. Your assumption was correct originally then, it is not currently possible to configure whether the sort should happen in ascending or descending order purely through the ItemType.

    You can do this programmatically through an onBeforeGet event though. The code is pretty simple and can be seen below.

    this.setAttribute("orderBy","created_on desc");
    return this;

    There's no need to even do an apply since that will happen automatically as part of the standard Get functionality of Aras Innovator.

    Chris

  • Thanks Chris, this is very Helpful