![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Фильтр [D6, Paradox]
NickNaz © (2003-12-17 11:22:00)
Добрый день уважаемые мастера!
У меня следующий вопрос: необходимо написать фильтр для Query по числовому значению. Как-то летом я задавал похожий вопрос, но по строковому значению и фильтр нужен был для Table. Вы по рекомендовали использовать функцию AnsiQuotedStr, она ведь конвертирует лишь строковые значения, а мне необходимо конвертировать число.
Какую функцию вы бы посоветовали?
Спасибо.
AlexVas (2004-01-10 13:35:00) [1]
Просто должен быть filter="2"
" - chr(39)
попробуй так
procedure TDataModule2.KopiAfterScroll(DataSet: TDataSet);
begin
QOtslKopi.Filtered:=false;
QOtslKopi.Filter :="Nomer_Kopi=" + chr(39)+InttoStr(DataSet.FieldByName("Nomer_Kopi").AsInteger)+ chr(39) ;
QOtslKopi.Filtered:=true;
end;
Anatoly Podgoretsky (2003-12-17 14:30:00) [2]
Здесь не фильтр нужен а мастер-летайл связь
JibSkeart (2003-12-17 12:33:00) [3]
А почему у тебя именно на этом событие ?
толесть ты смотришь в одной табличке
филтруется в другой ?
NickNaz (2003-12-17 12:31:00) [4]
JibSkeart © (17.12.03 12:27) [14]
Пожалуйста >NickNaz © (17.12.03 11:40) [4]
JibSkeart (2003-12-17 12:29:00) [5]
ShowMessage(QOtslKopi.Filter); ;)
NickNaz (2003-12-17 12:28:00) [6]
Sandman25 © (17.12.03 12:26) [13]
каким образом посмотреть?
JibSkeart (2003-12-17 12:27:00) [7]
Код покажите :)
так проше будет взглянуть что вы там натворили :)
Sandman25 (2003-12-17 12:26:00) [8]
Посмотрите QOtslKopi.Filter после его изменения.
О становится Nomer_Kopi=2 ?
NickNaz (2003-12-17 12:25:00) [9]
NickNaz © (17.12.03 12:12) [11]
Скажите что-либо, не молчите... Please
NickNaz (2003-12-17 12:12:00) [10]
Ситуация следующая: в таблице Kopi есть поле Nomer_Kopi=1, Nomer_Kopi=2 ... , в таблице OtslKopi есть поле Nomer_Kopi=1.
Значит, если я хочу фильтр по Nomer_Kopi=1 в таблице OtslKopi, то все ОК, но если по Nomer_Kopi=2 в таблице OtslKopi, то происходит вывод все тех же записей, что и по Nomer_Kopi=1, а вывод должен быть пустых записей.
Anatoly Podgoretsky (2003-12-17 12:10:00) [11]
QOtslKopi.Filter :="Nomer_Kopi="+DataSet.FieldByName("Nomer_Kopi").AsString;
Sandman25 (2003-12-17 11:57:00) [12]
[4] NickNaz © (17.12.03 11:40)
Посмотрите QOtslKopi.Filter после его изменения.
VAleksey (2003-12-17 11:54:00) [13]
Когда будем использовать OnFilterRecord?
Или связь мастер-деталь?
PS
Но для этого надо действительно читать книги. Увы :-(.
Alex_Bredin (2003-12-17 11:54:00) [14]
а так?
QOtslKopi.Filter :="Nomer_Kopi="""+InttoStr(DataSet.FieldByName("Nomer_Kopi").AsInteger)+"""";
NickNaz (2003-12-17 11:46:00) [15]
Плохиш_ (17.12.03 11:43) [5]
Соответственно нет!
Плохиш_ (2003-12-17 11:43:00) [16]
А Nomer_Kopi не null случайно?
NickNaz (2003-12-17 11:40:00) [17]
Sandman25 © (17.12.03 11:37) [3]
procedure TDataModule2.KopiAfterScroll(DataSet: TDataSet);
begin
QOtslKopi.Filtered:=false;
QOtslKopi.Filter :="Nomer_Kopi="+InttoStr(DataSet.FieldByName("Nomer_Kopi").AsInteger);
QOtslKopi.Filtered:=true;
end;
Sandman25 (2003-12-17 11:37:00) [18]
[2] NickNaz © (17.12.03 11:33)
Код покажите.
NickNaz (2003-12-17 11:33:00) [19]
>Плохиш_ (17.12.03 11:24) [1]
Компилирует, но DGrid пуст на удивление!
P.S. Если можно, то без нравоучений
Плохиш_ (2003-12-17 11:24:00) [20]
IntToStr
PS. С такими знаниями и тягой к ним ты далеко не уедещь