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

Вниз

Свойство Filter   Найти похожие ветки 

 
andrey__   (2003-09-25 14:13) [0]

есть таблица у которой поле pol1 типа TDateTime
вытаскиваю с помощью компонента TADOQuery несколько записей.

Хочу отфильтровать их с помощью свойства Filter
делаю
qrList_UU_P.Filtered:=false;

qrList_UU_P.Filter:= "pol1 = 100";

qrList_UU_P.Filtered:=true;

Пишет несоответствие типов
хотя если вместо "pol1 = 0" поставить "pol1 = Null" все работает ставил так же условие
if qrList_UU_P.FieldValues["Date_F"] =100 then
ShowMessage("равно");
работает


 
stone ©   (2003-09-25 14:16) [1]


> Пишет несоответствие типов


потому что


> поле pol1 типа TDateTime


 
ZrenBy ©   (2003-09-25 14:18) [2]

MSSQL не имеет типа TDateTime.

100 - сто, в смысле, что 100 ?


 
Adony ©   (2003-09-25 14:26) [3]

Зато имеет datetime :)
А если поставить вместо 100 "20030925 16:24:00.000"????


 
andrey__   (2003-09-25 14:30) [4]

> MSSQL не имеет типа TDateTime.

извини DateTime

>100 - сто, в смысле, что 100 ?

100 я написал образно , вообще то я писал и так

qrList_UU_P.Filter:= "pol1 =" + FloatToStr(Curr_DateTime);

где Curr_DateTime типа TDateTime и на такое тоже пишет несоответствие типов.


 
Adony ©   (2003-09-25 14:33) [5]

А почему FloatToStr???? а не DateTimeToStr


 
ZrenBy ©   (2003-09-25 14:33) [6]

qrList_UU_P.Filter:= "pol1 ="+
QuotedStr(FormatDateTime("yyyymmdd hh:nn:ss",Curr_DateTime));
?


 
andrey__   (2003-09-25 15:01) [7]

> А почему FloatToStr???? а не DateTimeToStr

потому что тип TDateTime представляет числа вида 37740.381529, а если я напишу DateTimeToStr(Curr_DateTime) получится сравнение вида
37740.381529 = 2003.09.25 16:24:00


 
Adony ©   (2003-09-25 15:06) [8]

А Вы попробуйте :)


 
Adony ©   (2003-09-25 15:06) [9]

И еще почитайте help про преобразования...


 
Stas ©   (2003-09-25 15:14) [10]

А вообще лучше используй Where, при количестве записей более 1000 Filter начинает значительно протормажевать


 
andrey__   (2003-09-25 15:32) [11]

> А Вы попробуйте :)
пробовал.


 
Johnmen ©   (2003-09-25 15:40) [12]

>Stas © (25.09.03 15:14)
>при количестве записей более 1000 Filter начинает значительно протормажевать

Не может быть. Или это недоработка в АДО ?

>andrey__

Попробуй, как часто советуют, использовать OnFilterRecord.


 
Stas ©   (2003-09-25 15:47) [13]

to Johnmen © (25.09.03 15:40) [12]
И в BDE тоже самое, только с парадоксом.
Я тоже думал что не должен фильтр протормаживать.
Но у меня сильно тормозила таблица на 3000 записей когда я ее пытался фильтровать фильтром (это заметно при вставке записи и при пролистывании таблицы PageDown и PageUp), а стал фильтровать where все нормально.
Такое впечатление что при использовании фильтра на клиента передаются все данные а потом они отбирабтся.
MDAC у меня 2.8 .


 
andrey__   (2003-09-25 17:25) [14]

ZrenBy
QuotedStr(FormatDateTime("yyyymmdd hh:nn:ss",Curr_DateTime));

да помогло спасибо



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

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

Наверх




Память: 0.49 MB
Время: 0.041 c
1-51337
Dionis
2003-09-27 18:11
2003.10.16
Разворачивание окна чужой формы


1-51198
zumo
2003-10-04 08:55
2003.10.16
2 вопроса


1-51234
Буфер обмена
2003-10-03 14:32
2003.10.16
Clipboard.AsText - белеберда получается


14-51447
SPeller
2003-09-29 17:18
2003.10.16
Центр американского английского


3-51075
Scald
2003-09-24 08:42
2003.10.16
TreeView и базы данных