Вниз
Скачать: CL | DM;

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

 
810   (2005-09-17 19:02) [0]

Есть таблица DBF (tblScan), в ней поле TIME_PP (типа Date). Есть глобальная переменная DATE_RAB в которой содержится дата. Задача - фильтровать в ран-тайме таблицу в зависимости от значения переменной.

procedure TfmMain.tblScanFilterRecord(DataSet: TDataSet;
 var Accept: Boolean);
begin
   Accept := DataSet["TIME_PP"] = DATE_RAB;
end;

Фильтрую таблицу по TfmMain.OnShow

      fmMain.tblScan.Filtered:=True;

И фильтр применяется нормально.
Но при изменении значения DATE_RAB никак не могу добиться, чтобы фильтр таблицы переназначился. Пробовал: Filtered:=False потом Filtered:=True (не помогает)
tblScan.Refresh (не помогает)

Помогает только закрытие и открытие таблицы с последующим Filtered:=True, а без закрытия/открытия как-нить возможно применить новый фильтр?

ЗЫ: в книжках ничего подобного нет, приходится методом научного самотыка......... Звиняйте.


 
Anatoly Podgoretsky ©   (2005-09-17 19:13) [1]

fmMain.tblScan.Filtered:=False;
fmMain.tblScan.Filtered:=True;
можно еще добавить First, а можно и вместо.


 
810   (2005-09-18 04:54) [2]

Accept := DataSet["TIME_PP"] = DATE_RAB;
-------------------------------------------------------

А как в ран-тайме можно поменять это условие?

Точнее: Как синтаксически правильно вызвать процедуру TfmMain.tblScanFilterRecord(DataSet: TDataSet; var Accept: Boolean);

Допустим, если я хочу добавить к существуюшему условию  условие DataSet["Summa"]>0


 
Anatoly Podgoretsky ©   (2005-09-18 13:17) [3]

Дельфи не интерпритатор



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
10-1106204689
Vlash
2005-01-20 10:04
2005.10.30
Блокирование клиента


14-1128586993
BURN
2005-10-06 12:23
2005.10.30
Пятнашки


14-1128593205
syte_ser78
2005-10-06 14:06
2005.10.30
Прошу прощения ексли боян


2-1127728356
SMATMP
2005-09-26 13:52
2005.10.30
Bitmap.PixelFormat


6-1121239399
kot andrei
2005-07-13 11:23
2005.10.30
запрос пароля




   Наверх