Вниз
Скачать: CL | DM;

Запрос в ADOQuery   Найти похожие ветки 

← →
Иришка   (2004-04-06 10:35) [0]

Приветик!
SELECT AccountPays.Pay_ID,..................
From AccountPays LEFT OUTER JOIN
Inpays on  (Inpays.Inpay_ID = AccountPays.Inpay_ID.........

where InnerDepName=:b And Account_Base_Name=:d and (CreateDate>=:u and CreateDate<=:o)
                       
Всё в принцыпе работает нормально только по CreateDate (тип дата)
выдаёт данные > и <=, а должен >= и <=
Может я что-то не тек неписала?

Дополнение.
Выборка ведётся по параметрам u,o
P:=DateTimePicker1.Date;
ADOQuery1.Close;
ADOQuery1.Parameters.ParamByName("u").Value:=p;
ADOQuery1.Open;
------------------
P:=DateTimePicker1.Date;
ADOQuery1.Close;
ADOQuery1.Parameters.ParamByName("o").Value:=p;
ADOQuery1.Open;


← →
stone ©   (2004-04-06 10:44) [1]

P:=Trunc(DateTimePicker1.Date);


← →
Vlad ©   (2004-04-06 10:46) [2]


> Иришка   (06.04.04 10:35)  

Хм... Я по поводу дополнения.
А что собственно там происходит ? Первый раз открываем набор данных с одним параметром (где второй ?),  второй раз открываем  набор данных со вторым параметром (где первый ?)
И что же мы хотим получить ?


← →
stone ©   (2004-04-06 10:47) [3]


> Иришка   (06.04.04 10:35)  

Все дело в том, что DateTimePicker1.Date содержит время и дату, и если на сервере поле не содержит времени (например 06.04.2004 0:00:00), то это значение окажется меньше указанного в DateTimePicker1.Date, соответствено время нужно отрезать trunc(DateTimePicker1.Date)


← →
serge35   (2004-04-06 11:04) [4]

stone прав на все 100%. Присоединяюсь.


← →
Vlad ©   (2004-04-06 11:12) [5]

Да и я не оспариваю, ошибка безусловно может быть в этом, однако странновато что запрос открывается два раза и каждый раз вместо двух параметров присваивается один...


← →
stone ©   (2004-04-06 11:21) [6]


> Vlad ©   (06.04.04 11:12) [5]

Я не телепат:)) но мне кажется тут просто опечатка, вероятнее всего DateTimePicker все же 2. Задать диапазон дат одним действительно сложно :))


> Иришка   (06.04.04 10:35)  

Для выбора диапазона дат лучше использовать синтаксис: CreateDate BETWEEN :u and :o


← →
Vlad ©   (2004-04-06 11:37) [7]


> stone ©   (06.04.04 11:21) [6]

Пускай даже два. Но зачем запрос открывать два раза. С одним параметром вместо двух - вот что неясно ;-)


← →
serge35   (2004-04-06 11:45) [8]

Ну не объяснили девушке, что можно просвоить сразу 2 параметра, вот она и присваивает их по одному.
Перед вторым Open оба параметра будут присвоены.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: -0.965 c
3-1081136342
Марат
2004-04-05 07:39
2004.05.02
Формат ячейки в DBGrid


1-1082107901
Layner
2004-04-16 13:31
2004.05.02
Сдвиг элементов массива.


4-1079030059
BaDeVlad
2004-03-11 21:34
2004.05.02
Как сделать многоуровневую отмену в Richedit?


1-1081946153
REA
2004-04-14 16:35
2004.05.02
Интерфейсы и классовые функции


14-1081735795
RealRascal
2004-04-12 06:09
2004.05.02
Открытое плавание




   Наверх