Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Filtro DBEdit y DBGrid (https://www.clubdelphi.com/foros/showthread.php?t=70249)

Lenny 09-10-2010 07:19:39

Filtro DBEdit y DBGrid
 
Estimados, nuevamente acudo a ustedes, necesito hacer una pregunta algo tonta.
Para filtrar utilizo este codigo:

Código Delphi [-]
BDATOS.TWOT.Filter := 'OT = ''' + DBEdit1.Text +'''';
BDatos.TWOT.Filtered:= True;

Lo hace perfecto, esto lo tengo en el OnChange del DBEdit y cada vez que hay un nuevo registro hace su trabajo perfecto, pero cuando el DBEdit esta en "Blanco" me muestra toda la lista y yo necesito no muestre nada, se entiende??? Se puede???

Utilizo Delhpi 2010, Zeos y MySQL, Gracias de antemano!!!

ecfisa 09-10-2010 09:26:32

Hola Lenny.

Tengo dos dudas, la primera es si usas el DBEdit para filtrar la misma tabla o es otra la tabla que se filtra, a medida que
vas ingresando el campo.
La segunda es con que componente estas mostrando la lista.


Saludos. :)

Lenny 09-10-2010 09:35:59

Sep... es un DBEdit que filtra un DBGrid y que este a la vez filtra otro, me explico, DBGrid1 OT, DBGrid2 Productos, DBEdit1 muestra el Numero de OT Del DBGrid1 y Filtra los Productos en el DBGrid2, el problema es cuando no hay OT's pendientes en productos me muestra todos los que hay en la base de datos y necesito quede en blanco cuando no hay con que filtrar el DBGrid2, se entiende??? algo enredado pero eso... Gracias!!!

ecfisa 09-10-2010 09:48:48

Hola Lenny.

Suponiendo Table1 y TWOT abiertas y DBEdit1 con su datasourse apuntando al campo de la tabla1:
Código Delphi [-]
(* aplicar filtro sobre tabla TWOT *)
procedure TForm1.DBEdit1Change(Sender: TObject);
begin
  TWOT.Filtered:= False;
  TWOT.Filter:='OT ='+ QuotedStr(DBEdit1.Text);
  TWOT.Filtered:= True;
end;

Saludos. :)

Lenny 11-10-2010 09:16:15

Me he tomado unos dias libres y por eso no respondi antes, MUCHAS GRACIAS ECFISA!! Funciona perfecto, hace lo que necesito, Elegantemente simple. Byes y gracias nuevamente!!!


La franja horaria es GMT +2. Ahora son las 13:57:35.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi