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

Вниз

выборка по дате   Найти похожие ветки 

 
V.I.P ©   (2006-11-07 11:38) [0]

Есть в таблице поле формата Date
и есть соотв TDateTimePicker 2 штуки. Надо выбрать из таблицы строки с датой в промежутке от и до. делаю через фильтр, кинул Ttable, Filtered:=true;

procedure TForm6.Table1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
begin
 Accept := DataSet.FieldByName("Date").AsDateTime>datetimepicker1.DateTime;
end;

почему не пашет не знаю, никогда с этим не работал :(
при нажати на кнопку, которая Table1.active:=true; вылетает ошибка:
....."" - is not a valid date and time


 
Desdechado ©   (2006-11-07 11:41) [1]

в поле, небось, NULL затесалось?


 
V.I.P ©   (2006-11-07 11:43) [2]

скорее всего, как быть?


 
Anatoly Podgoretsky ©   (2006-11-07 11:52) [3]

Наверно система правду говорит.


 
Desdechado ©   (2006-11-07 11:56) [4]

Date - слишком стремное название для поля, ибо это зарезервированное слово
а нулл обойти - проверить на IsNull


 
ЮЮ ©   (2006-11-07 12:05) [5]

Accept :=
    not DataSet.FieldByName("Date").IsEmpty and
    (DataSet.FieldByName("Date").AsDateTime>datetimepicker1.DateTime);


 
V.I.P ©   (2006-11-07 12:07) [6]


> ЮЮ ©   (07.11.06 12:05) [5]
> Accept :=
>     not DataSet.FieldByName("Date").IsEmpty and
>     (DataSet.FieldByName("Date").AsDateTime>datetimepicker1.
> DateTime);


Accept :=
   not DataSet.FieldByName("Date").IsNull and
   (DataSet.FieldByName("Date").AsDateTime>datetimepicker1.DateTime);
   end;

тоже самое

Desdechado

и что тогда делать?


 
ASoft   (2006-11-07 12:16) [7]

а запросом не пробовал? тем более, что в сабже звучит >Надо выбрать из таблицы строки с датой в промежутке от и до...


 
ЮЮ ©   (2006-11-07 12:25) [8]


> тоже самое


Может тип поля и не Date? Кстати, зачем имя поля и его тип одинаково называются?
Да и ошибка может не из-за этой строки вылазить.  Отключи Filter для начала и пробеги по записи с пустым полем. Это может и другой компонент/обработчик глючить


 
V.I.P ©   (2006-11-07 12:48) [9]

ЮЮ

проверил тип date, название переименовал в Date_cr


 
Desdechado ©   (2006-11-07 13:11) [10]

datetimepicker1.DateTime - может, здесь пусто?


 
V.I.P ©   (2006-11-07 13:55) [11]

Desdechado

нет если я так напишу - Accept := DataSet.FieldByName("Date").AsDateTime=1;
то таже ошибка, во всех строках Бд дата проставлена. Мне подсказали что проблема со временем. мне надо выборка только по дате


 
Desdechado ©   (2006-11-07 14:04) [12]

> мне надо выборка только по дате
.AsDate и .Date


 
Anatoly Podgoretsky ©   (2006-11-07 14:30) [13]

> V.I.P  (07.11.2006 13:55:11)  [11]

> DataSet.FieldByName("Date").AsDateTime=1;

Это означет, что поле "Date"  не привести к типу TDateTime


 
Anatoly Podgoretsky ©   (2006-11-07 14:33) [14]

> Desdechado  (07.11.2006 14:04:12)  [12]

> .AsDate

Это не влияет на ошибку is not a valid date and time
Ошибка означает, что левую часть не перевести в TDateTime (Double)


 
V.I.P ©   (2006-11-07 22:08) [15]


> Desdechado ©   (07.11.06 14:04) [12]
> > мне надо выборка только по дате
> .AsDate и .Date

.AsDate нету такого

Anatoly Podgoretsky ©
и как быть?


 
ЮЮ ©   (2006-11-08 03:50) [16]

Ну а если просто Accept := true; ошибка продолжает появляться? Значит ошибка возникает не здесь. Для ловли багов пора использовать отладчик.


 
V.I.P ©   (2006-11-08 19:24) [17]

выборку сделал, спасибо


 
ЮЮ ©   (2006-11-09 03:40) [18]


> выборку сделал, спасибо


И как, интересно, если все предложенное не помогало?



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

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

Наверх




Память: 0.5 MB
Время: 0.045 c
2-1163061661
kyn66
2006-11-09 11:41
2006.11.26
Пользователи, запустившие программу.


2-1163094373
yuraspb
2006-11-09 20:46
2006.11.26
У кого какие мысли?


15-1162971219
ANB
2006-11-08 10:33
2006.11.26
Неизвестная война


15-1161516520
Mr.Dix
2006-10-22 15:28
2006.11.26
Ограничение количества выводимых на печать листов


11-1139397561
Igi
2006-02-08 14:19
2006.11.26
KOLHilightEdit в Delphi IDE