Форум: "Базы";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];
Внизфильтр в TTable по месяцам Найти похожие ветки
← →
VicV (2002-05-13 17:59) [0]Помогите пожалуйста! Вот какой вопрос. В таблице есть поле с типом Дата. Необходимо выбрать записи за определенный месяц. (для каждого месяца в году. Каким образом можно этосделать?
← →
Reindeer Moss Eater (2002-05-13 18:37) [1]...Where EXTRACT(MONTH from Дата) = Тра-ля-ля
← →
VicV (2002-05-13 19:39) [2]Reindeer Moss Eater, прости тупого, не совсем (то есть совсем не понятно, что с этим делать)?
← →
Desdechado (2002-05-13 20:20) [3]2 VicV
это к TQuery, SQL-запрос с указанным ограничением
← →
Reindeer Moss Eater (2002-05-14 08:21) [4]>Vicv
Все записи всех январей:
Select * from MyTable
Where EXTRACT(MONTH from Дата) = 1
← →
Johnmen (2002-05-14 09:13) [5]А если фильтр, то обрабатывать OnFilterRecord.
← →
Reindeer Moss Eater (2002-05-14 09:37) [6]К сожалению в свойстве Filter нельзя использовать LocalSQL выражения, поэтому действительно, для TTable покатит только OnFilterRecord
← →
Exp (2002-05-14 18:11) [7]If (ComboBox1.Text<>"") AND (ComboBox2.Text<>"") Then
begin
DateComboBox1:="01."+IntToStr(ComboBox1.ItemIndex+1)+"."+ComboBox2.Text;
DateComboBox2:=IntToStr(Datdm(ComboBox1.ItemIndex+1,StrToInt(ComboBox2.Text)))+"."+IntToStr(ComboBox1.ItemIndex+1)+"."+ComboBox2.Text;
DataMod.TableData.Filter:="(Date >= "+""""+DateComboBox1+""""+") AND (Date <= "+""""+DateComboBox2+""""+")";
← →
Exp (2002-05-14 18:11) [8]If (ComboBox1.Text<>"") AND (ComboBox2.Text<>"") Then
begin
DateComboBox1:="01."+IntToStr(ComboBox1.ItemIndex+1)+"."+ComboBox2.Text;
DateComboBox2:=IntToStr(Datdm(ComboBox1.ItemIndex+1,StrToInt(ComboBox2.Text)))+"."+IntToStr(ComboBox1.ItemIndex+1)+"."+ComboBox2.Text;
DataMod.TableData.Filter:="(Date >= "+""""+DateComboBox1+""""+") AND (Date <= "+""""+DateComboBox2+""""+")";
← →
Anatoly Podgoretsky (2002-05-14 18:32) [9]Exp (14.05.02 18:11)
Это не соответствует его условию, в Filter не возможно задать, только OnFilterRecord
← →
Deniz (2002-05-15 08:40) [10]В TTable есть SetRange
или как написал Exp
Table1.Filter:=
"(DateField >= "01.04.2002") and (DateField < "01.05.2002")";
Выбирает весь АПРЕЛЬ.
Удачи.
← →
Reindeer Moss Eater (2002-05-15 08:46) [11]А надо было ВСЕ апрели.
← →
Deniz (2002-05-15 09:34) [12]Вообще в вопросе не совсем понятно, один месяц из 1 года или всех лет.
Лучше дождаться поправки Автора или закончить ветку.
← →
Anatoly Podgoretsky (2002-05-15 12:55) [13]Reindeer Moss Eater (15.05.02 08:46)
И май и июни
← →
VAleksey (2002-05-15 15:09) [14]Пиши в OnFilterRecord
var
Year1,month1,day1:word;
begin
DecodeDate(DataSet[DateField],Year1,month1,day1);
Accept:=month1 = NeedingMonthVar;
end
и наращиваещь это условие для выборки по нужным месяцам, годам и тп.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.06.06;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c