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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.06.2014, 13:06   #1
Corvus046
Пользователь
 
Регистрация: 18.05.2014
Сообщений: 14
Вопрос Опять фильтрация

Здравствуйте. Я около месяца назад спрашивал по поводу фильтрации через MonthCalendar, а теперь столкнулся с такой проблемой. Хочу добавить ещё фильтрацию к этой же таблице через эдиты, но выходит настройка только какого-то одного способа фильтрации (Либо эдиты, либо календарь). А как сделать, чтобы и то и то работало? Вот коды фильтраций:
Код:
procedure TZayavki.MonthCalendar1Click(Sender: TObject);
begin
ADOTable1.Filtered:=False;
ADOTable1.Filtered:=True;
end;

procedure TZayavki.ADOTable1FilterRecord(DataSet: TDataSet;
  var Accept: Boolean);
begin
Accept:=Int(DataSet.FieldByName('Data').AsDateTime)=MonthCalendar1.Date;
end;

procedure TZayavki.Edit1Change(Sender: TObject);
begin
if Length(Edit1.Text) > 0 then
  begin
  ADOTable1.Filtered:=false;
  ADOTable1.Filter:='Lastname' + ' LIKE ' + #39 + Edit1.Text + '%' + #39;
  ADOTable1.Filtered:=true;
  end
  else ADOTable1.Filtered:=false;
end;
Corvus046 вне форума Ответить с цитированием
Старый 14.06.2014, 19:21   #2
Corvus046
Пользователь
 
Регистрация: 18.05.2014
Сообщений: 14
По умолчанию

И ещё хочу сделать фильтр по докторам, но для этого хочу привязать фамилии врачей из БД с каким-то компонентом, типа ComboBox, чтобы из добавленных докторов можно было выбрать нужного и соответственно фильтровать записи, содержащие его фамилия. Может кто знает, через какой компонент это лучше осуществить и как организовать поиск.
Corvus046 вне форума Ответить с цитированием
Старый 14.06.2014, 19:40   #3
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Если OnFilterRecord=nil и не пусто Filter - работает только Filter
Если OnFilterRecord<>nil и пусто Filter - работает только OnFilterRecord
Если OnFilterRecord<>nil и не пусто Filter - работает OnFilterRecord и Filter как AND

Если OnFilterRecord<>nil, то и другие условия можно в него засунуть, не используя Filter
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 14.06.2014, 19:50   #4
Corvus046
Пользователь
 
Регистрация: 18.05.2014
Сообщений: 14
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Если OnFilterRecord=nil и не пусто Filter - работает только Filter
Если OnFilterRecord<>nil и пусто Filter - работает только OnFilterRecord
Если OnFilterRecord<>nil и не пусто Filter - работает OnFilterRecord и Filter как AND

Если OnFilterRecord<>nil, то и другие условия можно в него засунуть, не используя Filter
А можете пожалуйста это описать кодом и в какой именно процедуре все это нужно описывать. А то я не очень хороший знаток в программировании и боюсь не разберусь что, куда и как описать
Corvus046 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
опять я опять мемо nyasha2013 Помощь студентам 2 19.05.2011 21:09
Шо опять?! zumm Свободное общение 8 11.08.2010 15:13
И опять мэйлы.. Опять... Pusher PHP 6 28.06.2008 03:08