Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.01.30;
Скачать: CL | DM;

Вниз

Фильтрация таблицы dBase   Найти похожие ветки 

 
Виталий Панасенко   (2004-12-23 09:23) [0]

Есть форма, на которой лежат компоненты TEdit, TDBGrid, TTable, TDataSourse ... Последние три соответственно связаны для отображения... В обработчике OnChange TEditа написан код Table1.Filtered := True;
Больше нчего.
В обработчике OnFilterRecord Table1 имеем код типа
Accept := Pos(Edit1.Text, dataSet["FILTER_FIELD"])>0;

Проблема в чем: при работе с форматом dBase, если менять значение Edit1 на заведомо не встречающуюся подстроку в поле фильтрации, получаем пустую сетку.. Так и должно быть.. НО! при исправлении значения на заведомо встречающуюся  -все равно пусто... с Paradox все реагирует мгновенно и адекватно...
При чем не важно, есть индексы или нет - глюк остается...
Пробовал как через БДЕ так и через АДО... Помогает только переоткрытие...


 
Johnmen ©   (2004-12-23 09:28) [1]

>В обработчике OnChange TEditа написан код Table1.Filtered := True;

А так
Table1.DisableControls;
//Table1.Filtered := False;
Table1.Filtered := True;
Table1.EnableControls;


 
Виталий Панасенко   (2004-12-23 09:46) [2]

Не помогло... :-(
вот весь OnFilterRecord(много лишнего - уже не знаю что и делать):
 Accept := True;
 if Edit1.Text<>"" then
  begin
    if not Table1.FieldByName("F").IsNull then
      Accept := Pos(Edit1.Text, Table1.FieldByName("F").AsString)>0
     else
       Accept := False;
  end
 else
  Accept := True;


 
Johnmen ©   (2004-12-23 10:56) [3]

Accept := (Edit1.Text="") or
 (Pos(Edit1.Text, Table1.FieldByName("F").AsString)>0);


Но дело не в этом. А в том, чтобы инициировать перерисовку грида после изменения условия фильтрации...



Страницы: 1 вся ветка

Текущий архив: 2005.01.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.027 c
11-1087418434
Sormy
2004-06-17 00:40
2005.01.30
Как преобразовывать палитры цветов?


1-1105691362
vvv_spb
2005-01-14 11:29
2005.01.30
key=#9


1-1105957994
glGLU
2005-01-17 13:33
2005.01.30
MessageDlg


14-1105134146
Kerk
2005-01-08 00:42
2005.01.30
Cуицид - форма девиантного поведения


1-1105639172
Fin
2005-01-13 20:59
2005.01.30
Showmessage???