|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Как задать интервал времени используя DateTimePicker1 и DateTimePicker2
Здравствуйте! Про интервал времени с помощью этих компонентов читал в ранее написанных темах, но увы ничего не получилось да и не совсем мне было понятно!
P.S Я конечно давненько работаю в Delphi но не опытный пользователь..так что пожалуйста поподробней Использую Turbo Delphi 6.0. Вопрос: Делаю курсовой проект. В нем надо сделать отчёт по продажам и приёме товаров т.е, с периода 15.05.2009 по 15.10.2009 и т.д! Подключение базы: Использую базу Access, подключение ее произвел компонентами ADOConnection1, TADOTable, DataSource1. Для отоброжения данных таблицы использую DBGrid1. Смог сделать поиск "Фильтрацию" по одной дате. Вот код: DataModule1.Otchet_o_prieme.Filtered:=false; DataModule1.Otchet_o_prieme.Filter:='Data_postyple niya='''+datetostr(DateTimePicker1.Date)+''''; DataModule1.Otchet_o_prieme.Filtered:=true; Form6.Show; А как сделать период времени используя DateTimePicker1 и DateTimePicker2 т.е с кокого периода по какой не имею представления! Ребят, кто знает помогите пожалуйста! |
#2
|
||||
|
||||
Мой тебе совет начни изучать SQL язык компонента TQuery...в 10 раз проще, в 100 раз быстрее, в 1000 раз эффективнее, в 10000 гибче...
Помню я тож столкнулся точно с такой же проблемой...возился, возился и режил проблему при помощи SQL запроса... В начале был Бит, потом Байт и только потом появилось Слово... |
#3
|
|||
|
|||
Я уже это понял..но работы сделано много! А если начать изучать SQL то это все заного надо настраивать! Вообще делов куча! Разве нет выхода в том что я делаю? Если сделал на 1 дату то можно сделать и на две
|
#4
|
||||
|
||||
Я как- то так когда- то делал:
Код:
var myD1,myD2:String; begin myD1:=DateToStr(DateTimePicker1.Date); myD2:=DateToStr(DateTimePicker2.Date); Table1.Filtered:=True; Table1.Filter:='Date_creation>='+QuotedStr(myD1)+ ' and Date_creation <='+QuotedStr(myD2); |
#5
|
||||
|
||||
Тебе нужно не на две даты, как я понял, а на диапазон дат...а фильтр работает так, если условие фильтрации совпадает с содержимым поля, то оно выводится...
Не нужно переделывать весь код под SQL, только эту процедуру... От набора данных отключаешь Table, подключаешь Query...делаешь выборку...Я использовал и то и другое, постепенно переходя только на Query... Единственный минус Query так это невозможность использовать DBNavigator специально заточенный под TTable... В начале был Бит, потом Байт и только потом появилось Слово... |
#6
|
|||
|
|||
TOJluK
Я тебя готов расцеловать СПАСИБО ТЕБЕ ОГРОМНОЕ! Топик можно закрывать! Проблема решена! |