[2.0b1][CLOSED] Grouping and sorting
Last night I replied to a post about a problem in the help-topic (http://extjs.com/forum/showthread.php?t=14958), but I think it is more appropriate over here. (Ps. Title should say 2.0B1)
I added some screenshots and the JSON-data to make the problem more clear.
I think the problem is that because a grid can only store one sort-column, you get unexpected results when you sort in a grouped-grid.
I for example have an overview of assignments, which I show in descending order (red). Every assignment can have one or more parcels (green) which I also show in descending order. See image and JSON-data:
http://fun4me.demon.nl/%7Eleon/Group-descending.png
See the end of the lines for the parcel-subject Data.
Code:
{totalCount:"3", data:[
{"assignment_subject":"3333","assignment_vessel":"Star Bonaire","assignment_sf_guard_user_related_by_created_by":"wouter", "assignment_created_at":"October 5, 2007 10:19 AM", "assignment_sf_guard_user_related_by_updated_by":"wouter", "assignment_updated_at":"October 5, 2007 10:19 AM", "assignment_assignmentid":"3", "assignmentparcel_assignmentparcelid":"8", "assignmentparcel_subject":"3333d"},
{"assignment_subject":"3333", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"wouter", "assignment_created_at":"October 5, 2007 10:19 AM", "assignment_sf_guard_user_related_by_updated_by":"wouter", "assignment_updated_at":"October 5, 2007 10:19 AM", "assignment_assignmentid":"3", "assignmentparcel_assignmentparcelid":"7", "assignmentparcel_subject":"3333c"},
{"assignment_subject":"3333","assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"wouter", "assignment_created_at":"October 5, 2007 10:19 AM","assignment_sf_guard_user_related_by_updated_by":"wouter", "assignment_updated_at":"October 5, 2007 10:19 AM", "assignment_assignmentid":"3", "assignmentparcel_assignmentparcelid":"6", "assignmentparcel_subject":"3333b"} ,
{"assignment_subject":"3333", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"wouter", "assignment_created_at":"October 5, 2007 10:19 AM", "assignment_sf_guard_user_related_by_updated_by":"wouter", "assignment_updated_at":"October 5, 2007 10:19 AM", "assignment_assignmentid":"3", "assignmentparcel_assignmentparcelid":"5", "assignmentparcel_subject":"3333a"}
,
{"assignment_subject":"2222", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 29, 2007 1:12 AM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 29, 2007 1:12 AM", "assignment_assignmentid":"2", "assignmentparcel_assignmentparcelid":"", "assignmentparcel_subject":""}
,
{"assignment_subject":"1111", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 22, 2007 3:38 PM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 22, 2007 3:38 PM", "assignment_assignmentid":"1", "assignmentparcel_assignmentparcelid":"4", "assignmentparcel_subject":"1111d"},
{"assignment_subject":"1111", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 22, 2007 3:38 PM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 22, 2007 3:38 PM", "assignment_assignmentid":"1", "assignmentparcel_assignmentparcelid":"3", "assignmentparcel_subject":"1111c"},
{"assignment_subject":"1111", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 22, 2007 3:38 PM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 22, 2007 3:38 PM", "assignment_assignmentid":"1", "assignmentparcel_assignmentparcelid":"2", "assignmentparcel_subject":"1111b"},
{"assignment_subject":"1111", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 22, 2007 3:38 PM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 22, 2007 3:38 PM", "assignment_assignmentid":"1", "assignmentparcel_assignmentparcelid":"1","assignmentparcel_subject":"1111a"}
]}
Now I click on the Parcel-column-header, to change the sort-order of the parcels to ascending. The sorting is done remote and the JSON-data I receive now contains the assignments still in descending order, and the parcels in ascending order, but as you can see the Assignments are now also shown in ascending order...
http://fun4me.demon.nl/%7Eleon/Group-ascending.png
See the end of the lines for the parcel-subject Data.
Code:
{totalCount:"3", data:[
{"assignment_subject":"3333","assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"wouter", "assignment_created_at":"October 5, 2007 10:19 AM", "assignment_sf_guard_user_related_by_updated_by":"wouter", "assignment_updated_at":"October 5, 2007 10:19 AM", "assignment_assignmentid":"3", "assignmentparcel_assignmentparcelid":"5", "assignmentparcel_subject":"3333a"},
{"assignment_subject":"3333", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"wouter", "assignment_created_at":"October 5, 2007 10:19 AM", "assignment_sf_guard_user_related_by_updated_by":"wouter", "assignment_updated_at":"October 5, 2007 10:19 AM", "assignment_assignmentid":"3", "assignmentparcel_assignmentparcelid":"6", "assignmentparcel_subject":"3333b"},
{"assignment_subject":"3333","assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"wouter", "assignment_created_at":"October 5, 2007 10:19 AM", "assignment_sf_guard_user_related_by_updated_by":"wouter", "assignment_updated_at":"October 5, 2007 10:19 AM", "assignment_assignmentid":"3", "assignmentparcel_assignmentparcelid":"7", "assignmentparcel_subject":"3333c"},
{"assignment_subject":"3333", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"wouter", "assignment_created_at":"October 5, 2007 10:19 AM", "assignment_sf_guard_user_related_by_updated_by":"wouter", "assignment_updated_at":"October 5, 2007 10:19 AM", "assignment_assignmentid":"3", "assignmentparcel_assignmentparcelid":"8", "assignmentparcel_subject":"3333d"}
,
{"assignment_subject":"2222", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 29, 2007 1:12 AM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 29, 2007 1:12 AM", "assignment_assignmentid":"2", "assignmentparcel_assignmentparcelid":"", "assignmentparcel_subject":""}
,
{"assignment_subject":"1111", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 22, 2007 3:38 PM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 22, 2007 3:38 PM", "assignment_assignmentid":"1", "assignmentparcel_assignmentparcelid":"1", "assignmentparcel_subject":"1111a"},
{"assignment_subject":"1111", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 22, 2007 3:38 PM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 22, 2007 3:38 PM", "assignment_assignmentid":"1", "assignmentparcel_assignmentparcelid":"2", "assignmentparcel_subject":"1111b"},
{"assignment_subject":"1111", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 22, 2007 3:38 PM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 22, 2007 3:38 PM", "assignment_assignmentid":"1", "assignmentparcel_assignmentparcelid":"3", "assignmentparcel_subject":"1111c"},
{"assignment_subject":"1111", "assignment_vessel":"Star Bonaire", "assignment_sf_guard_user_related_by_created_by":"admin", "assignment_created_at":"August 22, 2007 3:38 PM", "assignment_sf_guard_user_related_by_updated_by":"admin", "assignment_updated_at":"August 22, 2007 3:38 PM", "assignment_assignmentid":"1", "assignmentparcel_assignmentparcelid":"4", "assignmentparcel_subject":"1111d"}
]}
I suspect this is due to extjs only being able to sort on one column, maybe a nice solution can be found in this implementation: http://tablesorter.com/docs/