Показать сообщение отдельно
  #1  
Старый 22.10.2013, 07:39
DOR DOR вне форума
Начинающий
 
Регистрация: 14.01.2011
Сообщения: 171
Версия Delphi: 7
Репутация: 10
По умолчанию Фильтр GridEh

Пользовался вот таким фильтра (СУБД Акцесс) перешел на Firebird, перестало работать, не могу понять что нужно поправить, подскажите пожалуйста.
Код:
procedure Tf_Main.Grid_MainApplyFilter(Sender: TObject);
var
s: string;
cond: variant;
i: integer;
begin
cond := '';
s := '';
Datamodule1.T_Dogovor_View.filtered:=false;
 with TDBGridEh(Sender) do begin
    if (not DataSource.DataSet.Active) or (DataSource.DataSet.RecordCount = 0) then exit;
     for i := 0 to TDBGridEh(Sender).Columns.Count - 1 do
    begin
      cond := TDBGridEh(Sender).Columns[i].STFilter.ExpressionStr;
      if cond <> '' then begin
           s := s + '['+TDBGridEh(Sender).Columns[i].FieldName + '] LIKE ''%'+ cond + '%'' AND ';
      end;
    end; Delete(s, Length(s) - 3, 4);
       Datamodule1.T_Dogovor_View.Filter := s;
   end;
Datamodule1.T_Dogovor_View.filtered:=true;
end;
Ответить с цитированием