![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
фильтр БД [dBase, FoxPro]
kdv1977 © (2004-04-27 11:33:00)Подскажите уважаемые. Можно ли сделать фильтр по двум полям. Например к фильтру: Table1.filter:='tab ='+str подставить еще одно поле или более. Где str:string. Зараннее благодарен.
kdv1977 (2004-04-27 14:48:00) [1]Огромное спасибо. Все получилось.
HSolo (2004-04-27 14:42:00) [2]Поля mm и otdel оба integer?
Query_MY.Filter:= 'mm = '+ str1 + ' and otdel = '+ str;
Если кто-то из них - строка, то
sniknik © (27.04.04 14:23) [11]
kdv1977 (2004-04-27 14:39:00) [3]Я пытаюсь вставить фильтр:
Query_MY.Filter:= ('mm = '+ str1) and ('otdel = '+ str);
а он мне ругается несовместимостью операндов.
sniknik (2004-04-27 14:23:00) [4]странная запись
str1 := Query_MY.Lookup('mm', MaskEdit1.Text, 'mm');
ишеш строку с mm = MaskEdit1.Text, и получаеш ее же проще сразу значение MaskEdit1.Text в фильтр подставить.
ну да ладно, но это строка похоже? а кавычек обрамляющих строку не задаеш.
kdv1977 (2004-04-27 14:23:00) [5]поле создается из запроса:
SELECT N_PP, EXTRACT( MONTH FROM D_WW ) mm, SUMMA, D_WW
FROM Razgovor
HSolo (2004-04-27 14:17:00) [6]Какого типа поле mm? Как выглядит Query_MY.Filter?
kdv1977 (2004-04-27 14:01:00) [7]procedure TForm1.Button1Click(Sender: TObject);
var str,str1 :string;
begin
if All_Check.Checked = False then
begin
Query_MY.Filtered := False;
All_Check.Checked :=False;
str := Qmen_otd.Lookup('otdel', DBLookupComboBox1.Text, 'n_pp');
str1 := Query_MY.Lookup('mm', MaskEdit1.Text, 'mm');
Query_MY.Filter:= 'mm = '+ str1; // ??????????
Query_MY.Filtered:=true;
end
else
Query_MY.Filtered := False;
end;
sniknik (2004-04-27 13:54:00) [8]bushmen © (27.04.04 13:52) [7]
не весь код не надо, упаси боже. ;о)) только 17ю строку. (хотя бы приблизительно +- несколько строк)
sniknik (2004-04-27 13:52:00) [9]это значит в том месте которое я не вижу. (зайди на сайт Anatoly Podgoretsky там подробности)
bushmen (2004-04-27 13:52:00) [10]>kdv1977 © (27.04.04 13:49) [5]
>Извини я не понял что значит в 17-й. Я ведь только новичок.
Если не покажешь код своей программы, то так и останешься новичком :)
kdv1977 (2004-04-27 13:49:00) [11]Извини я не понял что значит в 17-й. Я ведь только новичок.
sniknik (2004-04-27 13:45:00) [12]ошибка в 17-й строке
kdv1977 (2004-04-27 13:37:00) [13]and я пробую а он пишет несовместимость типов операндов.
sniknik (2004-04-27 11:39:00) [14]все зависит от движка, некоторые позволяют довольно сложные выражения, но уж and в фильтре все похоже поддерживают.
так что можно.
Vlad (2004-04-27 11:37:00) [15]
> kdv1977 © (27.04.04 11:33)
про and, or что нибудь слышали ?
А вобще, совет: пользуйтесь событием OnFilterRecord.