Clipper/FiveWin - ordenar una arreglo

 
Vista:

ordenar una arreglo

Publicado por mizalo (8 intervenciones) el 16/09/2010 23:32:49
hola al foro,

Por favor necesito una ayudita, para lo siguiente.

tengo un arreglomultidimensional matriz(500,5)

las columnas tienen los siguentes campos.

fecha,cliente,tipo_doc,nro_doc,moneda

me piden mostrar la informacion ordenada

dependiendo a las opciones que tengo en mi programa,

por ejemplo

- ordenado por moneda,tipo_doc,nro_doc
- ordenado por tipo_doc,nro_doc
- ordenado por fecha,moneda,tipo_doc,nro_doc

uso la instruccion asort para ordenarlo pero solo puedo pordenar por una columna.

Algun amigo podria ayudarme como ordenar por multiples campos?

gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Javier

RE:ordenar una arreglo

Publicado por Javier (3 intervenciones) el 22/09/2010 17:36:48
Hola, fijate en este codigo:

En un ciclo recorro una pequeña tabla y genero un array bidimensional con 6 columnas:

Aadd( aErrores , { CODERROR->ERRORCOD, CODERROR->ERRORDES, 0 , 0 ,
CODERROR->ARCHIVO , CODERROR->PRIORIDAD } )

Luego del ciclo lo ordeno DE MENOR A MAYOR por la ultima columna (convertida con strzero) MAS la primera columna (tambien convertida con str) .

Asort( aErrores,,, { | x,y | StrZero( x[ 6 ], 3 ) + StrZero( x[ 1 ] , 3 ) < ;
StrZero( y[ 6 ], 3 ) + StrZero( y[ 1 ] , 3 ) } )

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar