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

Вниз

Фильтр на базу   Найти похожие ветки 

 
ArtemB ©   (2003-05-07 09:26) [0]

Подскажите как сделать следующее:

Бызa dbf, у которой есть среди прочих поле даты Date (dd/mm/yy).
Есть компонент DateTime в котором стоит Long Format на показ только месяца и года.

Теперь задача: выбрать (фильтр наложить) из таблицы те записи, для которых поле Date удовлетворяет выбранному DateTime
(т.е. нужно вывести данные за такой то месяц такого то года... не важно какое число месяца)

Подскажите как сделать.... Спасибо


 
Johnmen ©   (2003-05-07 09:31) [1]

OnFilterRecord


 
snake1977   (2003-05-07 09:33) [2]

Например так

cost st:Char="""";
Var Table:TTable;
d:TDateTime;
.....

Table.Filter:="Date="+st+DateToStr(D)+st;
Table.Filtered:=True;
....


 
snake1977   (2003-05-07 09:41) [3]

пардон, ошибся, если надо за месяц, то тогда так
cost st:Char="""";
Var Table:TTable;
d:TDateTime;
yy,mm,dd:Word;
......
DecodeDate(d,yy,mm,dd);
Table.Filter="Date>="+st+"01"+"."+IntToStr(mm)+"."+IntToStr(yy)+st+" and Date<="+st+"30"+"."+IntToStr(mm)+"."+IntToStr(yy)+st;
Table.filtered:=True;
.....

примерно так, но наверняка есть способы поинтереснее, а вообще то прочсе сделать SQL запрос
например
Query.SQL.Append("select t.* from table t where t.Date like "%."+IntTostr(mm)+"."+IntToStr(yy)+""");
и
Query.Open;


 
Mike Kouzmine ©   (2003-05-07 09:42) [4]

DecodeDate(DateTimePicker1.Date,Y,M,D);
Table.Filter:="Date >= "+ QuotedStr(DateToStr(EncodeDate(Y,M,1))) + "and Date <= " + QuotedStr(DateToStr(EncodeDate(Y,M,DaysInMonth(DateTimePicker1.Date)))
Table.Filtered:=True;


 
Mike Kouzmine ©   (2003-05-07 09:46) [5]

SQL
select * from Table t
where t."Date" between :DB and DE

DecodeDate(DateTimePicker1.Date,Y,M,D);
Q.Params[0].asDate := EncodeDate(Y,M,1);
Q.Params[1].AsDate := EncodeDate(Y,M,DaysInMonth(DateTimePicker1.Date))
Q.Open


 
ArtemB ©   (2003-05-07 10:33) [6]

Спасибо :-)



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

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

Наверх




Память: 0.47 MB
Время: 0.024 c
14-83700
просто украинец
2003-05-05 14:24
2003.05.26
Межнациональная тусня


4-83806
Ик сик
2003-03-28 16:16
2003.05.26
Я пытаюсь поставить hook на нажатие левой кнопки мыши


14-83678
Домарощинер
2003-05-05 15:10
2003.05.26
---|Ветка была без названия|---


3-83391
BKGG
2003-05-01 16:01
2003.05.26
Помогитье запустить Oracle Enterprise Manager => consol


4-83822
_Split_
2003-03-30 17:52
2003.05.26
Помогите со снимком экрана.