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

Вниз

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

 
jack128 ©   (2003-08-04 14:39) [0]

День добрый

Нужно выбрать из базы архивные данные за период, определенный пользователем.
Делаю так:

в ibquery1.sql. text = "select * from MULTICAL_CDE_ARHIVE ma
where ma.datetime >= :DATE1 and
ma.datetime <= :DATE2 and
order by datetime
"

procedure TForm1.UpdateQuery1(Sender: TObject);
begin
IbQuery1.Close;
IBQuery1.ParamByName("Date1").AsDateTime := DateTimePicker1.date;
IBQuery1.ParamByName("Date2").AsDateTime := DateTimePicker2.date;
ibquery1.Open;
end;

так вот, проблема в том, что набор данных начинается не с date1, а с date1 + 1(на один день позже).
Причем, как я понял, этот эффект дает DateTimePicker. Если написать, например ( "Date1") День добрый

Нужно выбрать из базы архивные данные за период, определенный пользователем.
Делаю так:

в ibquery1.sql. text = "select * from MULTICAL_CDE_ARHIVE ma
where ma.datetime >= :DATE1 and
ma.datetime <= :DATE2 and
order by datetime
"

procedure TForm1.UpdateQuery1(Sender: TObject);
begin
IbQuery1.Close;
IBQuery1.ParamByName("Date1").AsDateTime := DateTimePicker1.date;
IBQuery1.ParamByName("Date2").AsDateTime := DateTimePicker2.date;
ibquery1.Open;
end;

так вот, проблема в том, что набор данных начинается не с date1, а с date1 + 1(на один день позже).
Причем, как я понял, этот эффект дает DateTimePicker. Если написать, например IBQuery1.ParamByName("Date1").AsDateTime := EncodeDate(2003, 7, 4), то все работает нормально...

Как решить проблему?


 
Mike1 Kouzmine1   (2003-08-04 14:53) [1]

странно, а если between :date1 and :date2?


 
jack128 ©   (2003-08-04 14:58) [2]


> странно, а если between :date1 and :date2?

тоже самое..
Я думаю тут дело именно в DateTimePicker"e
Может конечно в компонентах доступа(ibx), но наврятли..
Кстати IBExpert нармально отрабатывает запрос...


 
jack128 ©   (2003-08-04 15:01) [3]

Да, точно виноват глючный пикер
вот такой код рабоает на ура..

var year, month, day : word;
begin
IbQuery1.Close;
DecodeDate(DateTimePicker1.datetime, Year, Month, Day);
IBQuery1.ParamByName("Date1").AsDateTime := EncodeDate(Year, Month, Day);
ibquery1.Open;
end;
Но согласитесь - это ж бред сивой кобылы!!!!


 
Mike1 Kouzmine1   (2003-08-04 15:13) [4]

Бред. Пикером пользуюсь. Без проблем.


 
HSolo ©   (2003-08-04 15:18) [5]

1. Что В ТОЧНОСТИ у Вас лежит в DateTimePicker1.datetime? Какая дата и какое время?
2. А так:
IBQuery1.ParamByName("Date1").AsDateTime := Trunc(DateTimePicker1.datetime);
не пойдет?


 
Mike1 Kouzmine1   (2003-08-04 15:24) [6]

DateTimePicker.Date


 
Anatoly Podgoretsky ©   (2003-08-04 15:27) [7]

ShowMeassage(DateTimeToStr(DateTimePicker1.date))


 
Johnmen ©   (2003-08-04 15:36) [8]

>jack128 © (04.08.03 15:01)

Никакого бреда. Свойство Date содержит не только дату, но и время. Значит делай HSolo © (04.08.03 15:18) пункт 2.


 
jack128 ©   (2003-08-04 16:22) [9]


> Никакого бреда. Свойство Date содержит не только дату, но
> и время.

По вашему это не бред? ;-)
А так - все понятно, всем спасибо.



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

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

Наверх




Память: 0.48 MB
Время: 0.016 c
14-92197
Mr&MsGuns
2003-08-11 02:16
2003.08.28
Ружья и розы


9-91967
Andy Eremin
2003-02-27 07:35
2003.08.28
определение расстояния до объекта


3-91986
Niky
2003-08-06 11:05
2003.08.28
TPageControl


4-92320
nester
2003-06-26 19:17
2003.08.28
Как выгрузить чужую dll-ну? shdoclc.dll


3-92041
chexum
2003-08-04 14:25
2003.08.28
TDBChart