Hola a todos:
A ver si me podeis ayudar porque llevo 3 horas con el mismo problema y no logro dar con ello, supongo es porque ya estoy encecado y no veo nada, pero me hace cosas muy raras.
Comento:
Tengo un xBrowse mediante un array que lo ordeno por el 1 campo ( fecha ), al introducir nuevos detalles reordeno la tabla para que siempre este ordenada, hasta aqui bien, el tema es, cuando edito cualquiera de los 8 primeros registro que aparecen en el xBrowse( que son los que se ven en pantalla ), me edita _ correctos, pero cuando bajo uno o mas registro ya sea con el teclado o con el raton, y selecciono un registro apartir del 8, me edita el registro anterior al que he seleccionado en el xBrowse.
Espero haberme explicado bien, alguna sujerencia porque me pasa esto? ( por cada alteracion del xBrowse siempre refresco el objeto xBrowse )
Otras Preguntas:
Supuestamente al declarar un xBrowse con array asi:
oGrid:SetArray( aDetalles, .T., 1, )
1.- No deberia de ordenar el array automaticamente?, si es asi a mi no me funciona, para tenerlo ordenado por fechas como quiero yo, por cada detalle nuevo tengo que reordenar con:
oGrid:aCols[1]:cOrder := "D" // orden descendente
oGrid:aCols[1]:cSortOrder := 1 // Por en campo 1 ( fecha )
oGrid:aCols[1]:SortArrayData() // Ordena el array
2.- Esto es correcto? se debe de hacer asi?
Muchas gracias de antemano por la ayuda.
JLL
Problemas con xBrowse/Array/ordenacion
Problemas con xBrowse/Array/ordenacion
Libreria: FWH/FWH1109 + Harbour 3.1.1 + Borland C++ 5.8.2
Editor de Recursos: PellecC
ADA + OURXDBU -
S.O: XP / Win 7
Blog: http://javierlloris.blogspot.com.es/
e-mail: jllorispersonal@gmail.com
Editor de Recursos: PellecC
ADA + OURXDBU -
S.O: XP / Win 7
Blog: http://javierlloris.blogspot.com.es/
e-mail: jllorispersonal@gmail.com
Re: Problemas con xBrowse/Array/ordenacion
Despues de descansar un par de horas y estar un poco despejado ya he encontrado el problema que me ha traido de cabeza 3 horas, diossssss que burro soy, y simpre son tonterias al final.
Para extraer y reemplazar la informacion del array estaba usando oGrid:nRowSel en vez de oGrid:nArrayAt, habia copia un trozo de codigo de otro programa y ni se me ha ocurrido mirar esto.
Bueno, solucionado mi chorrada, pero alguien sabria decirme como se puede ordenar xBrowse con array's mediante 2 columnas?
Ahora lo tengo asi: solo por fecha y me hace falta ordenarlo tambien por hora, es decir, Fecha + Hora
/* Cada vez que se introduce o se modifica un registro del xBrowse ( adetalles ) se */
/* reordena la el Array por "Fecha Toma" */
oGrid:aCols[1]:cOrder := "D"
oGrid:aCols[1]:cSortOrder := 1
oGrid:aCols[1]:SortArrayData()
Muchas gracias de antemano;
JLL
Para extraer y reemplazar la informacion del array estaba usando oGrid:nRowSel en vez de oGrid:nArrayAt, habia copia un trozo de codigo de otro programa y ni se me ha ocurrido mirar esto.
Bueno, solucionado mi chorrada, pero alguien sabria decirme como se puede ordenar xBrowse con array's mediante 2 columnas?
Ahora lo tengo asi: solo por fecha y me hace falta ordenarlo tambien por hora, es decir, Fecha + Hora
/* Cada vez que se introduce o se modifica un registro del xBrowse ( adetalles ) se */
/* reordena la el Array por "Fecha Toma" */
oGrid:aCols[1]:cOrder := "D"
oGrid:aCols[1]:cSortOrder := 1
oGrid:aCols[1]:SortArrayData()
Muchas gracias de antemano;
JLL
Libreria: FWH/FWH1109 + Harbour 3.1.1 + Borland C++ 5.8.2
Editor de Recursos: PellecC
ADA + OURXDBU -
S.O: XP / Win 7
Blog: http://javierlloris.blogspot.com.es/
e-mail: jllorispersonal@gmail.com
Editor de Recursos: PellecC
ADA + OURXDBU -
S.O: XP / Win 7
Blog: http://javierlloris.blogspot.com.es/
e-mail: jllorispersonal@gmail.com
-
- Posts: 257
- Joined: Wed May 16, 2007 9:40 pm
- Location: Iquique Chile
Re: Problemas con xBrowse/Array/ordenacion
Hola
Una consulta como pudiste solucionar el tema de orden por array, ya que me pasa lo mismo, solo se ordena cuando presiono el header,..
Gracias
Una consulta como pudiste solucionar el tema de orden por array, ya que me pasa lo mismo, solo se ordena cuando presiono el header,..
Gracias
Fivewin 11.07
Re: Problemas con xBrowse/Array/ordenacion
Hola elmoiquique:
Te copio el código del programa que ordenaba el array del xbrowse:
Espero que te sirva;
Un saludo
JLL
Te copio el código del programa que ordenaba el array del xbrowse:
Code: Select all
/* Para evitar un error de ejecucion hay que comprobar que el Array sea >= 2 */
If oGrid:nLen >= 2
ASort( oGrid:aArrayData,,, { |x, y| if( x[1]==y[1], x[2]<y[2], x[1]<y[1] ) })
End
Un saludo
JLL
Libreria: FWH/FWH1109 + Harbour 3.1.1 + Borland C++ 5.8.2
Editor de Recursos: PellecC
ADA + OURXDBU -
S.O: XP / Win 7
Blog: http://javierlloris.blogspot.com.es/
e-mail: jllorispersonal@gmail.com
Editor de Recursos: PellecC
ADA + OURXDBU -
S.O: XP / Win 7
Blog: http://javierlloris.blogspot.com.es/
e-mail: jllorispersonal@gmail.com
-
- Posts: 257
- Joined: Wed May 16, 2007 9:40 pm
- Location: Iquique Chile
Re: Problemas con xBrowse/Array/ordenacion
Gracias JLL
Me sirvio tu ejemplo y lo solucione de esta forma y funciono a la perfeccion
if olbx:nlen>=2
Asort( acFirmar2,,, { |x, y| x[1] < y[1] })
endif
Gracias Nuevamente
Me sirvio tu ejemplo y lo solucione de esta forma y funciono a la perfeccion
if olbx:nlen>=2
Asort( acFirmar2,,, { |x, y| x[1] < y[1] })
endif
Gracias Nuevamente
Fivewin 11.07