PDA

Ver la Versión Completa : realizar busqueda en paradox


phoenix
09-06-2003, 18:23:04
hola, tengo que realizar una busqueda en una tabla paradox, la busqueda tiene que ser que me muestre todas las palabra que por ejemplo tengan la silaba pa como zapato, patata... tengo hecha esa busqueda mediante sql pero necesito que sea mediante un table.filter, he probado a poner table1.filter:='dondemirar=' + QuotedStr(*Edit1.Text*); pero me da error, sabeis de alguna forma?

delphi.com.ar
09-06-2003, 19:07:51
Supongo que habrás puesto table1.filter:='dondemirar=' + QuotedStr('*' + Edit1.Text + '*');

O ese fue tu error!

Saludos!

phoenix
09-06-2003, 20:50:02
pues probe la que me pusiste y al filtar no me muestra nada

marcoszorrilla
09-06-2003, 22:59:59
Que yo sepa Paradox no acepta filtros del tipo contiene, solamene comienza por.

Por lo tanto tendrás que utilizar el evento FilterRecord del Dataset, en este ejemplo utilizamos un edit, para escribir el filtro parcial que queremos y luego mediante un botón accionamos:

MiTabla.Filtered:=True;

Entonces se ejecuta el código al efecto que sigue:


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 :=EdMifiltro.Text; {TEdit Contiene la subcadea a filtrar}

ss:= AnsiUpperCase(FieldByName('Codigo').asString);
Accept := Pos(sp, ss) > 0;
end;
end;


Un Saludo.