Hola Caral
Veo dos cosas,
1. El idx yo lo pondría en el evento onchange del combobox de los campos.
2. en el Edit1.Change veo que hay una inconsistencia que te da error cuando inicializas a '';
Código Delphi
[-]
procedure TFManTablas.Edit1Change(Sender: TObject);
begin
if Edit1.Text <> '' then begin AdoQuery1.Close;
case AdoQuery1.Fields[idx].Datatype of
ftString : AdoQuery1.Filter := ComboBox2.Text+ ' = '''+Edit1.Text+ '*''';
ftInteger : AdoQuery1.Filter := ComboBox2.Text+ ' = '+Edit1.Text;
ftFloat,
ftCurrency : AdoQuery1.Filter := ComboBox2.Text+ ' >= '+Edit1.Text;
ftDate,
ftTime : AdoQuery1.Filter := ComboBox2.Text+ ' = '''+Edit1.Text+ '''';
end;
AdoQuery1.Filtered := True;
AdoQuery1.Open;
end;
end;
Salud OS.