Summary:

An issue exists in Sage CRM 7.3 SP1 whereby grids / lists cannot be sorted in a descending order.


Symptoms:

The issue can be observed by setting the Allow Order By option to Yes on CompanyGrid, then doing a Find on the Company entity. Attempting to toggle the sort orderby clicking on the Company Name column header will result in the company data only ever being displayed in ascending order.



Cause:

There has been a change in behaviour to how the ALLOWORDERBY and ALLOWORDERBYDESC parameters are used in Sage CRM 7.3 SP1. A table showing the use of these parameters in the context of a search is given below:

VersionActionHIDDENORDERBY valueHIDDENORDERBYDESC value
7.3cSort by fieldColumn name (e.g. addr_city)FALSE
7.3cSort by field descending_RevFALSE
7.3 SP1Sort by fieldColumn nameFALSE
7.3 SP1Sort by field descendingColumn nameTRUE

 

The values for these parameters are the "ideal" values; the rows regarding 7.3 are based on observed behaviour, while those on 7.3 SP1 are based on testing. The issue described here arises because the client data submitted by the browser in 7.3 SP1 matches the behaviour in 7.3c.

There are special cases in the above, such as default sort ordering, and the fact that CRM records the last sort option when a user tries to sort in a descending order. For example, submitting _Rev and FALSE from the client in the second example above still results in valid handling of the sort, since the sort by column is still known.



Resolution:

A workaround for this issue is available. The workaround applies the sorting rules described in the last two rows of the table to all sortable grids in CRM. To apply this on a global basis, save the file given below to the \CRM\WWWRoot\js\custom directory and remove the .txt part of the extension, then do a metadata reresh.

 Download: Workaround for Sage CRM L3 case 0-166200-QA



Status:

The issue has been rasied to the development team for a fix; the scheduled hotfix release date is Monday 21st December.