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

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

 
stoper   (2003-10-03 13:17) [0]

Я устонавливаю фильтрацию по какому нибудь полю все нормально.Но как только я устонавливаю фильтрацию снова, то она действует только на данные предидущего отфильтрованого набора.Т.е. даные которые не подходят под условия первой фильтрации теряются.
Что уже только не делал. На даном этапе имеем следущий код

procedure TForm3.Button1Click(Sender: TObject);
begin
if Query1.Filtered then Query1.Filtered:=false;
Query1.Filtered:=true;
end;

procedure TForm3.Query1FilterRecord(DataSet: TDataSet;
var Accept: Boolean);
begin
Accept:=(DataSet["sum1"]>=strtofloat(form3.Edit1.Text)) and (DataSet["sum1"]<=strtofloat(form3.Edit2.Text));
end;


 
Rem ©   (2003-10-03 13:31) [1]

Мне особо понравился конструктив:
if Query1.Filtered then Query1.Filtered:=false;
Query1.Filtered:=true;

Обнови запрос:
Query1.Refresh;


 
Rem ©   (2003-10-03 13:32) [2]

А вообще... перемести условия отбора из OnFilterRecord в условия запроса.


 
Johnmen ©   (2003-10-03 13:47) [3]

>...то она действует только на данные предидущего отфильтрованого набора...

Ты это видишь где-то ? Скорее всего - да. Тогда просто обнови отрисовывание контрола, на котором видишь.


 
stoper   (2003-10-03 14:16) [4]

Rem, ты бы не умничал,запрос там не архисложный ну и не простой.Выборка идет 15 сек.Фильтр в наборе срабатывает первый раз в мгновение ока.
2 Никакие обновления не помогают . Не ужто никто не знает.


 
Rem ©   (2003-10-03 14:32) [5]

>> Rem, ты бы не умничал

И осталась баба с разитым корытом...


 
SPIRIT ©   (2003-10-03 14:52) [6]


procedure TForm3.Button1Click(Sender: TObject);
begin
if Query1.Filtered then Query1.Filtered:=false;
Query1.Filtered:=true;
end;

замени

procedure TForm3.Button1Click(Sender: TObject);
begin
Query1.Filtered:=false;
// здесь условие фильтра ....
Query1.Filtered:=true;
end;


так нас в универе учили :)


 
Johnmen ©   (2003-10-03 14:55) [7]

> [3]

Ну попробуй DisableControls EnableControls



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

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



Память: 0.46 MB
Время: 0.015 c
3-74033
drAlex
2003-10-06 10:59
2003.10.23
Apollo Dll в Delphi 6


1-74150
saska
2003-10-10 14:40
2003.10.23
GUID


1-74250
Извращенец2
2003-10-13 07:12
2003.10.23
PReport - класс формы предварительного просмотра не найден


1-74215
jazz
2003-10-09 18:32
2003.10.23
Запуск exe файла


1-74160
Nobody2002
2003-10-10 14:44
2003.10.23
DBGrid - как выделять всю строку с возможностью редактирования




   Наверх