Buenas tardes,
No encuentro la manera de hacer lo siguiente:
Cuando se hace click en una columna de un browse, me la ordena automáticamente.
Pero necesito que después de ordenarla, poder ejecutar una función.
Si defino el evento onSort(), ya no me ordena, sólo ejecuta mi función.
Gracias,
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Click en Header Browse
-
- Mensajes: 100
- Registrado: Vie Abr 10, 2009 11:02 pm
Click en Header Browse
Un Saludo,
Joaquín Martínez
Joaquín Martínez
- ignacio
- Site Admin
- Mensajes: 9256
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Click en Header Browse
Buenos días,
Puede realizar la ordenación llamando al método TBrowse:Sort( oCol, nMode )
nMode: 1) Ascendente, -1) Descendente
Saludos
Puede realizar la ordenación llamando al método TBrowse:Sort( oCol, nMode )
nMode: 1) Ascendente, -1) Descendente
Saludos
-
- Mensajes: 100
- Registrado: Vie Abr 10, 2009 11:02 pm
Re: Click en Header Browse
Buenos días Ignacio,
Dime como hacerlo porque se queda recursivamente llamando al evento onSort(), le ponga que retorne Nil o 0.
Aparte que en los fuentes de Xailer, el parámetro nSort no existe:
METHOD Sort( oCol ) CLASS XArrayBrowse
Este es el código que pruebo:
Dime como hacerlo porque se queda recursivamente llamando al evento onSort(), le ponga que retorne Nil o 0.
Aparte que en los fuentes de Xailer, el parámetro nSort no existe:
METHOD Sort( oCol ) CLASS XArrayBrowse
Este es el código que pruebo:
Código: Seleccionar todo
METHOD ArrayBrowse1Sort( oSender, aData, oCol, nAt, lDesc ) CLASS TFormScanArt
oSender:Sort( oCol)
RETURN 0 ó NIL (NINGUNO FUNCIONA)
Un Saludo,
Joaquín Martínez
Joaquín Martínez
-
- Mensajes: 100
- Registrado: Vie Abr 10, 2009 11:02 pm
Re: Click en Header Browse
Buenos días Ignacio,
¿ Tiene alguna solución este tema ? ¿ O no es posible ?
¿ Tiene alguna solución este tema ? ¿ O no es posible ?
Un Saludo,
Joaquín Martínez
Joaquín Martínez
- ignacio
- Site Admin
- Mensajes: 9256
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Click en Header Browse
Espero que este código y mis explicaciones resuelvan sus dudas:buzonjmartial escribió:Buenos días Ignacio,
¿ Tiene alguna solución este tema ? ¿ O no es posible ?
Código: Seleccionar todo
METHOD HeaderClick( nFlags, nPosX, nPosY ) CLASS XBrwColumn
LOCAL xRet
xRet := ::OnHeaderClick( nFlags, nPosX, nPosY )
IF ( Valtype( xRet ) != "L" .OR. xRet ) .AND. ::oParent:lAutoOrder
::oParent:Sort( Self )
ENDIF
RETURN xRet
Por lo tanto, tiene esos dos mecanismos para PARAR la ejecución del método SORT por parte del control.
Un saludo
-
- Mensajes: 100
- Registrado: Vie Abr 10, 2009 11:02 pm
Re: Click en Header Browse
Muchas gracias Ignacio,
Funcionando perfecta y limpiamente, necesitaba ordenar y posteriormente refrescar un proceso en la fila que se posicione.
Así lo he conseguido:
Funcionando perfecta y limpiamente, necesitaba ordenar y posteriormente refrescar un proceso en la fila que se posicione.
Así lo he conseguido:
Código: Seleccionar todo
METHOD onHeaderClick( oSender, nFlags, nPosX, nPosY ) CLASS TFormScanPedidos
oSender:oParent:Sort( oSender )
::oTmant:clickBrwPedidos()
return .F. // No haga nada después
Un Saludo,
Joaquín Martínez
Joaquín Martínez