Вниз
Скачать: CL | DM;

Фильтрация в TQuery   Найти похожие ветки 

 
Andrey Filatow   (2003-05-08 16:30) [0]

Есть Query уже активированный. Как дельфовами методами (к примеру свойством filter или что нить еще ) получить результат на подобии запроса sql:
select * from table1 where id like "%hi%" ?


 
Mike Kouzmine ©   (2003-05-08 17:18) [1]

accept := (pos("hi",qt1.asString) >0);


 
Erik Ivanov   (2003-05-09 14:59) [2]

Делаеш Filter := "id like "%hi%""; - тут возможны варианты
Filtred := True;


 
Tolik1   (2003-05-09 16:11) [3]

у меня работает такой пример (правда, если строка для Like не содержит пробелов)
Здесь фильтрование происходит по нескольким параметрам.

procedure TForm1.MakeDBGrid1Filter;
begin
ADOQuery1.Filtered := False;
case RadioGroup2.ItemIndex of // признак того, что документ возвращен
0: AdoQuery1.Filter := "";
1: AdoQuery1.Filter := "Возвращен = 1";
2: AdoQuery1.Filter := "Возвращен = 0";
end;
CurrentFilter := trim(AdoQuery1.Filter);

if (Edit1.Text = "") OR (Edit1.Text = null) then
AdoQuery1.Filter := CurrentFilter
else
begin
if (CurrentFilter = "") OR (CurrentFilter = null) Then
AdoQuery1.Filter := "[ФИО агента] LIKE %"+Edit1.text+"%"
else
AdoQuery1.Filter := CurrentFilter + " AND " + "[ФИО агента] LIKE %"+Edit1.text+"%";
end;
CurrentFilter := trim(AdoQuery1.Filter);

if (Edit2.Text = "") OR (Edit2.Text = null) then
AdoQuery1.Filter := CurrentFilter
else
begin
if (CurrentFilter = "") OR (CurrentFilter = null) Then
AdoQuery1.Filter := "[Наименование организации] LIKE %"+Edit2.text+"%"
else
AdoQuery1.Filter := CurrentFilter + " AND " + "[Наименование организации] LIKE %"+Edit2.text+"%";
end;

ADOQuery1.Filtered := True;

end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.011 c
7-95140
Puzzle
2003-03-31 15:36
2003.05.29
Как перезагрузить компьютер?


3-94694
Vanoshka
2003-05-07 22:27
2003.05.29
InterBase


9-94652
Эдуард
2002-12-17 05:11
2003.05.29
Программирование вращения


1-94907
tv
2003-05-16 18:30
2003.05.29
Запрет перетаскивания окна


1-94846
Pirat
2003-05-19 23:24
2003.05.29
Как повесится на 40 полях ?? :)




   Наверх