Ver Mensaje Individual
  #7  
Antiguo 28-05-2003
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Reputación: 10
marcoszorrilla Va por buen camino
Los filtros no aceptan like ni aproximaciones, eso lo tienes que hacer mediante SQL.

O por el contrario utilizar el evento OnFilterRecord del TTable.

Aquí tienes un ejemplo, utilizando la tabla Customers del Alias DbDemos de Delphi.

Necesitas un TTable conectado a dicho alias y a la tabla Customers y un Edit en donde escribiras la cadena a filtrar.

procedure TForm1.Table1FilterRecord(DataSet: TDataSet;
var Accept: Boolean);
var
sp, ss: ShortString;
begin

with DataSet do
begin
//En el Tedit escribimos la cadena a filtrar
sp :=AnsiUpperCase(EdMifiltro.Text);
ss := AnsiUpperCase(FieldByName('Country').asString);
Accept := POS(SP,SS)>0 ;

end;


end;

procedure TForm1.Button1Click(Sender: TObject);
begin
Table1.Filtered:=True;
end;


Un Saludo.
Responder Con Cita