|
Hola, yo utilizo este codigo:
Var
Valor,Valor1 : String;
begin
if Edit1.text = '' then
begin
Tabla.Filtered := false;
exit;
end;
Tabla.Locate('campo', edit1.Text,[loPartialKey,loCaseInsensitive]);
valor := Edit1.text;
Valor1 := Valor;
inc(valor1[length(Valor1)]);
Tabla.Filter := 'campo >= '+QuotedStr(Valor)+ ' and campo < ' +QuotedStr(valor1);
Tabla.Filtered := true;
end;El problema, es que si tecleo una letra y no tengo ningun registro que coincida me pone en blanco el dbgrid, y quisiera que me diera un mensaje de que no se encontro, y que me borrara dicha letra del edit y me permitiera volver a teclear..
Otra cosa, es que si tecleo la primera letra, y la borro, me causa error, y quisiera que me permitiera dejar el edit en blanco y volver a teclear..
|