Estimados,
Espero se encuentren todos bien.
Primero mi planteo:
Tengo un TEdit sobre el cual el operador puede digitar lo que desea buscar y en el evento onChar de dicho TEdit pongo esto:
METHOD Nombre1Char( oSender, nKey, nFlags ) CLASS TForm2
do case
case 47 <= nKey .and. nKey <= 57 // Números y /
::oDBBrwCtas:aCols[2]:cFilter := AllTrim(oSender:Value) + Upper(Chr(nKey))
case 65 <= nKey .and. nKey <= 90 // Letras mayúsculas
::oDBBrwCtas:aCols[2]:cFilter := AllTrim(oSender:Value) + Upper(Chr(nKey))
case 97 <= nKey .and. nKey <= 122 // Letras minúsculas
::oDBBrwCtas:aCols[2]:cFilter := AllTrim(oSender:Value) + Upper(Chr(nKey))
case nKey == 8 // Back Espace
::oDBBrwCtas:aCols[2]:cFilter := SubStr(AllTrim(oSender:Value),1,Len(AllTrim(oSender:Value))-1)
endcase
Si bien el filtrado se realiza perfectamente, lo que no logro hacer, es limpiar correctamente el filtro para poder realizar otra búsqueda.
He probado muchas opciones pero no siempre el filtro se limpia.
He puesto en el evento onEnter del TEdit y en varios lugares más esto: ::oDBBrwCtas:aCols[2]:cFilter := Nil pero, si bien el filtro se "limpia", (dado que el debugger así me lo muestra), el TDBBrowse, la Tabla asociada o "no se quien" a veces sigue filtrado.
Tambien he probado agregar cosas como estas que pongo a continación pero si bien el Browse se muestra sin filtro, igualmente el filtro anterior está en algún lugar, porque cuando el operador comienza a realizar otra búsqueda, la misma, parte desde el filtro anterior.
::oDBBrwCtas:aCols[2]:cFilter := Nil
Cuentas->(dbclearfil())
::oDBBrwCtas:Refresh(.T.)
Espero haberme hecho entender.
Y ahora mi consulta:
¿Cómo funciona y sobre qué actua realmente la propiedad cFilter?, ¿como se realiza una limpieza "total"?
Se agradece toda ayuda que me puedan brindar.
Saludos
Daniel
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.
Sobre cFilter en un TDBBrowse
Re: Sobre cFilter en un TDBBrowse
Hola.
Prueba con:
::oDBBrwCtas:aCols[2]:cFilter := ""
Saludos,
Fausto
Prueba con:
::oDBBrwCtas:aCols[2]:cFilter := ""
Saludos,
Fausto
Re: Sobre cFilter en un TDBBrowse
Fausto,
Lo he brobado pero lamentablemente sigue quedando filtrado (a veces)
Muchas gracias por la ayuda.
Saludos
Daniel
Lo he brobado pero lamentablemente sigue quedando filtrado (a veces)
Muchas gracias por la ayuda.
Saludos
Daniel
Re: Sobre cFilter en un TDBBrowse
Resuelto,
El problema se me daba en una situación en la que "limpiaba" el filtro del TDBBrowse luego de poner la propiedad lVisible := .F.
Saludos
Daniel
El problema se me daba en una situación en la que "limpiaba" el filtro del TDBBrowse luego de poner la propiedad lVisible := .F.
Saludos
Daniel