Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
1-17950
jonik pegas
2002-05-28 10:05
2002.06.06
Визуальный компонент подобный Object Inspector-у


1-17879
dim-
2002-05-26 12:17
2002.06.06
интеграция в эксплорер


1-18023
Sniffer
2002-05-24 09:22
2002.06.06
Com-порт


7-18172
sniknik
2002-03-12 19:31
2002.06.06
Нужно загасить форму :).


1-17983
bmai
2002-05-23 21:28
2002.06.06
Какой язык выбран в данный момент в другом приложении





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский