[
https://issues.apache.org/jira/browse/FLEX-21464?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Justin Mclean resolved FLEX-21464.
----------------------------------
Resolution: Fixed
resolved by fix to FLEX-25369
> DataGridColumn Sorting Blows up when using Complex data fields
> --------------------------------------------------------------
>
> Key: FLEX-21464
> URL: https://issues.apache.org/jira/browse/FLEX-21464
> Project: Apache Flex
> Issue Type: Bug
> Components: Collections, mx: DataGrid
> Affects Versions: Adobe Flex SDK 3.4 (Release)
> Environment: Affected OS(s): Windows
> Affected OS(s): Windows XP
> Browser: Firefox 3.x
> Language Found: English
> Reporter: Adobe JIRA
> Priority: Minor
>
> This bug comes from this minor enhancement ticket added in Flex 3.4:
> https://bugs.adobe.com/jira/browse/SDK-9801
> Steps to reproduce:
> 1. Create a data grid column using dot notation for the dataField.
> <mx:DataGridColumn headerText="Customer" dataField="customer.name"/>
> 2. Try to sort this column, either as is, or with a sort compare function
>
> Actual Results:
> Error: Find criteria must contain at least one sort field value.
> at
> mx.collections::Sort/findItem()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\collections\Sort.as:491]
> at
> mx.collections::ListCollectionView/getItemIndex()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:542]
> at
> ListCollectionViewCursor/collectionEventHandler()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:2207]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at
> mx.collections::ListCollectionView/dispatchEvent()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:862]
> at
> mx.collections::ListCollectionView/internalRefresh()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:1328]
> at
> mx.collections::ListCollectionView/refresh()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\collections\ListCollectionView.as:402]
> at
> mx.controls::DataGrid/sortByColumn()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\controls\DataGrid.as:3556]
> at
> mx.controls::DataGrid/headerReleaseHandler()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\controls\DataGrid.as:4986]
> at flash.events::EventDispatcher/dispatchEventFunction()
> at flash.events::EventDispatcher/dispatchEvent()
> at
> mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\core\UIComponent.as:9403]
> at
> mx.controls.dataGridClasses::DataGridHeader/mouseUpHandler()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\controls\dataGridClasses\DataGridHeader.as:1259]
>
> Expected Results:
> Sorting should work, no RTE.
>
> Workaround (if any):
> None
> It seems like the same logic that was implemented in data grid and data grid
> column needs to be implemented in Sort.as. The logic seems to get hung up in
> the Sort.findItem method:
> var hasFieldName:Boolean;
> try
> {
> hasFieldName = values[fieldName] !== undefined;
> }
> catch(e:Error)
> {
> hasFieldName = false;
> }
> this code won't handle complex values.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira