FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Error al ordenar array con sort
Posts: 396
Joined: Tue Mar 18, 2008 09:41 PM
Error al ordenar array con sort
Posted: Tue Jan 19, 2010 11:32 AM
Hola,

Quiero ordenar un array pero me da error.
El array es como se muestra a continuación:

Code (fw): Select all Collapse
aMulti := { { "", "", 0, 0 } }


Luego añado los datos...
Y lo intento ordenar por el ultimo elemento en orden ascendente....

Code (fw): Select all Collapse
ASort( aMulti,,, { |x,y| x[4] < y[4] }


Pero me devuelve un error:
Error description: Error BASE/1073 Error de argumento: <
Args:
[ 1] = N 0
[ 2] = C 26

No se lo que puede estar fallando la verdad.
:-)
Javier,

FWH 8.04 2008
Posts: 396
Joined: Tue Mar 18, 2008 09:41 PM
Re: Error al ordenar array con sort
Posted: Tue Jan 19, 2010 11:55 AM

Ups!! :oops:

Lo siento ya sé lo que pasaba.
Intentaba comparar dos valores de distintos tipos, uno numerico y otro caracter.

Lo sientooo. :oops: :oops:

Javier,

FWH 8.04 2008
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Error al ordenar array con sort
Posted: Tue Jan 19, 2010 06:10 PM
We can not compare variables of different data types. If it really necessary to sort an array having values of different data types, the following code can be tried
Code (fw): Select all Collapse
ASort( aMulti,,, { |x,y| If( ValType( x ) == ValType( y ), x < y, ValType( x ) < ValType( y ) ) }
Regards



G. N. Rao.

Hyderabad, India

Continue the discussion