Um outro problem que enfrentei, foi o seguinte:
tinha um campo numérico no banco e quando trazia estes dados para o DataGrid ele o ordenava como string, conforme abaixo:
1
11
12
2
22
3
33
333
Para resolver isso existe uma função no flex "sortCompareFunction", utilize a função abaixo:
private function numberSortFunction(obj1:Object, obj2:Object):int
{
var n1: Number = Number(obj1["campo_que_deseja_ordenar"]) ;
var n2: Number = Number(obj2["campo_que_deseja_ordenar"]) ;
if( n1 < n2 ) {
return -1;
}
else if( n1 > n2 )
{
return 1;
}
return 0;
}
Depois na coluna do grid que deseja ordenar, coloque, conforme abaixo:
<mx:DataGridColumn sortCompareFunction="numberSortFunction" width="450" headerText="Parent" dataField="campo_que_deseja_ordenar"/>
Pronto. Agora o sistema ordenará correto: 1,2,3.....
Nenhum comentário:
Postar um comentário