Форум: "Базы";
Текущий архив: 2003.08.28;
Скачать: [xml.tar.bz2];
ВнизВыборка по дате Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.006 c