Ver Mensaje Individual
  #9  
Antiguo 19-05-2011
Avatar de darkerbyte
darkerbyte darkerbyte is offline
Miembro
 
Registrado: feb 2005
Posts: 196
Reputación: 20
darkerbyte Va por buen camino
Thumbs up Aqui la respuesta, luego de 6 años

Bueno, yo tenia el mismo problema, la consulta es demasiado compleja para estar repitiendo cada vez q el usuario presionaba una tecla en el edit.

Otras ocasiones he utilizado un TJvDBFindEdit de los controles Jedi el cual asignandole un DataSet y el campo ya no hay que programar nada mas. Funciona excelente a excepción de que cuando utilizas el mismo query para diferentes consultas, el control empieza a generar excepciones ya que las nuevas consultas no tienen el campo que tiene asignado para filtrar.

Esto es un dolor de cabeza y por mas que busque no logre hecharlo a andar correctamente (hay que reportar ese error a la comunida de JEDI).
Asi que estuve buscando otras alternavitas prara crear un filtro sobre un TZQuery (ZeosLib)
Aqui la respuesta:

En el Evento OnChange de un edit (en este caso, sEdit5)

Código Delphi [-]
    DM.ZQuery.Filter := 'descripcion LIKE '+#39+'*'+sEdit5.text+'*'+#39;
    DM.ZQuery.FilterOptions := [foCaseInsensitive];
    DM.ZQuery.Filtered := (sEdit5.Text <> '');
   //descripción es el nombre del campo sobre el cual se va a filtrar

Y eso es todo! Probablemente muchos ya lo sabían pero pienso que al igual que yo, mucha gente desconoce este truco, de hecho estuve buscando en muchos hilos.

Este filtro funciona como un "WHERE CAMPO LIKE %CONDICION%"


Salud OS
Responder Con Cita