![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Фильтрация [D6, Paradox]
GIL © (2003-11-05 15:36:00)
помогите, надо отфильтровать бд по дате, так чтобы был без разницы год, но число и месяц из заданного диапазона
GIL (2003-11-05 17:23:00) [1]
спасибо, вроде заработало, просто раньше с таким не сталкивался, про свойство знал, но как-то всегда без него все работало, а тут вдруг!! 8)
Anatoly Podgoretsky (2003-11-05 17:22:00) [2]
GIL © (05.11.03 17:14) [26]
GIL © (05.11.03 17:18) [28]
Тогда чего ты ожидаешь
GIL (2003-11-05 17:18:00) [3]
нет
Sandman25 (2003-11-05 17:18:00) [4]
Filtered установили в True?
GIL (2003-11-05 17:14:00) [5]
все значения стандартные, умолчальные, кроме индекса, имени таблицы и эктив,
показываются абсолютно все записи, даже если я просто ставлю Active:=False; и нигде не присваиваю ему труэ
Anatoly Podgoretsky (2003-11-05 17:10:00) [6]
Приведи значения свойств таблицы
Sandman25 (2003-11-05 17:09:00) [7]
[22] GIL © (05.11.03 17:05)
Вы хотите сказать, что показываются записи за ноябрь и декабрь?
GIL (2003-11-05 17:05:00) [8]
как сделать, чтобы вызывалось OnFilterRecord?
GIL (2003-11-05 17:05:00) [9]
показываются все записи
Sandman25 (2003-11-05 17:01:00) [10]
[20] GIL © (05.11.03 16:50)
Вы хотите сказать, что показываются записи за ноябрь и декабрь?
GIL (2003-11-05 16:50:00) [11]
но first\last до условий фильтра!! мне надо проверить все записи!! а насчет "я извлекаю день и месяц"
procedure TForm1.Main_TFilterRecord(DataSet: TDataSet;
var Accept: Boolean);
var y,d,m,m1,d1:word;
da:TDate;
begin
Accept:=False;
decodedate(Main_TBirth.Value,y,m,d);
da:=date;
decodeDate(da,y,m1,d1);
DateTimePicker1.DateTime:=Main_TBirth.Value;
DateTimePicker1.Date:=DateTimePicker1.Date+5;
if m<m1 then Accept:=true;
end;
не обращать внимание на смысл, пока он только в том, чтобы хоть что-то фильтровать
Anatoly Podgoretsky (2003-11-05 16:45:00) [12]
А это "я извлекаю день и месяц" где, не наблюдается
Anatoly Podgoretsky (2003-11-05 16:44:00) [13]
Это не фильтр, поэтому ему ни к чему вызывать, а все потому что ты все заказал First/Last
GIL (2003-11-05 16:42:00) [14]
вот именно, что все!! а обработчик OnFilterRecord не вызывается, и получается, что никакой фильтрации нет
Anatoly Podgoretsky (2003-11-05 16:40:00) [15]
Это отлично работает, выдает все указаные записи
GIL (2003-11-05 16:34:00) [16]
With main_T do
begin
Active:=False;
IndexName:="ID_Birth";
Active:=True;
First;
i:=Main_TID_Birth.Value;
Last;
j:=Main_TID_Birth.Value;
SetRangeStart;
Main_TID_Birth.Value:=i;
SetRangeEnd;
Main_TID_Birth.Value:=j;
ApplyRange;
end;
Anatoly Podgoretsky (2003-11-05 16:31:00) [17]
Не видать как ты это делаешь
GIL (2003-11-05 16:27:00) [18]
короче, я извлекаю день и месяц из значения, и если они подходят, то Accept:=true, но вопрос в другом, как вызвать это событие, а то оно не вызывается!
DenK_vrtz (2003-11-05 16:27:00) [19]
Sandman25 ©, если год не учитывать совсем, то свою поправку снимаю.
Anatoly Podgoretsky (2003-11-05 16:21:00) [20]
Раз идет рчь об диапазоне, то год влияния не оказывает.
Вероятно вопрос неточный.