Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.02.2018, 14:51   #1
Armageddets
Форумчанин
 
Регистрация: 30.06.2012
Сообщений: 145
По умолчанию Фильтрация выборка поиск по дате AdoTable Delphi

Доброго времени суток, уважаемые эксперты. Есть БД Access. В таблице есть два требуемых поля с такими именами "ДатаНач" и "ДатаКон". В них хранятся даты. Так вот стоит задача показать только те даты, которые попадают под такие фильтры в зависимости от выбора:
- показать те записи, которые равны или больше даты из DateTimePicker1 в поле "Дата нач".
- показать те записи, которые меньше или равны из DateTimePicker2 в поле "ДатаКон".
- показать те записи, даты которых попадают под диапазон выбранных дат в DateTimePicker1 и DateTimePicker2.

Когда пишу фильтрацию таким образом у меня выскакивает ошибка "В коллекции не удается найти элемент, соответствующий требуемому имени или порядковому номеру". Подскажите в чем ошибка. Пробовал и немного другие варианты фильтрации, они тоже не сработали.

Код:
Form1.ADOTable6.Filtered:=False;
  Form1.ADOTable6.Filter:='';
    if (CheckBox3.Checked=True) and (CheckBox4.Checked=False) then
    Form1.ADOTable6.Filter:='[ДатаНач] >= #' + DateToStr(DateTimePicker1.Date) + '#';

    if (CheckBox3.Checked=False) and (CheckBox4.Checked=True) then
    Form1.ADOTable6.Filter:='[ДатаКон] <= #' + DateToStr(DateTimePicker1.Date) + '#';

    if (CheckBox3.Checked=True) and (CheckBox4.Checked=True) then
    Form1.ADOTable6.Filter:='[ДатаНач] >= #' + DateToStr(DateTimePicker1.Date) + '# AND [ДатаКон] <= #' + DateToStr(DateTimePicker2.Date) + '#';
 
 //Form1.ADOTable6.Filter:=Format('Date1 between DateValue(%s) and DateValue(%s)',[DateToStr(DateTimePicker1.Date),DateToStr(DateTimePicker2.Date)]);
  
Form1.ADOTable6.Filtered:=true;

Последний раз редактировалось Armageddets; 14.02.2018 в 16:00.
Armageddets вне форума Ответить с цитированием
Старый 14.02.2018, 17:16   #2
Armageddets
Форумчанин
 
Регистрация: 30.06.2012
Сообщений: 145
По умолчанию

Извиняюсь, банально другой AdoQuery был.
Armageddets вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фильтрация по дате при помощи FilterRecord (Delphi) Tonatonavt Помощь студентам 1 08.03.2015 22:39
Фильтрация ADOTable Agent2811 Помощь студентам 0 22.05.2013 17:55
ADOTable фильтрация delfin07 БД в Delphi 2 06.05.2013 14:04
Adotable фильтрация Айдар БД в Delphi 1 03.12.2012 20:04
Выборка данных по дате из БД Access. Delphi 7.0 tresheron Помощь студентам 5 01.05.2011 16:30