Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];




Вниз

IBQuery + Edit 


Malyatkoya   (2002-01-21 21:46) [0]

Добрый вечер Метры баз данных! Появилась проблема которую не могу решить:((( А суть ее такова:есть база данных в которой в одной из таблиц находятся имена фирм заказчиков и другая информация о этой фирме.Необходимо написать запрос который при вводе в поле Еdit1 названия фирмы выводил бы в DBGride отображал название этой фирмы и другую информацию.Но при этом чтобы выполнялось условие, что при вводе например первых двух букв из названий фирмы и нажатии кнопки выводился бы список фирм в которых эти две буквы есть в начале названия фирмы.
При вводе трех... и т.д.
Пробовал сделать так:

procedure TForm1.Button1Click(Sender: TObject);
begin
IBQuery1.close;
iBQuery1.sql.Clear;
IBQuery1.SQL.Add("select * from firm");
IBQuery1.SQL.Add("where firm ="+Edit1.text+"");
IBQuery1.open;
end;

Но как результат получал пустую строку:(

Не знает ли кто как решить данную проблему?
Буду очень признателен за помощь. С ув. Malyatko.



Сержик   (2002-01-21 23:34) [1]

IBQuery1.SQL.Add("where firm like ""+Edit1.text+"%"");



Hawk2   (2002-01-22 10:01) [2]

TO Malyatko:
У меня похожая задача, только нужно написать телефонный справочник но всё лень. Мне тоже нужно чтобы при вводе одной буквы появлялись Фамилии людей которые начинаются на эту букву, при вводе ещё одной происходила фильтрация по двух буквах и т.д. Я пробовал делать так: обрабатывать не щелчек по кнопке, а метод OnKeyUp, получается набрал букву метод отработал и данные сразу же видаются (как в справочной системе Windows). А на счет кода то нужно вот так:
IBQuery1.SQL.Add("where firm like ""+Edit1.text+"% "");



User_OKA   (2002-01-22 14:42) [3]

to Hawk2
А событие OnChange того же TEdit не подойдет?



Hawk2   (2002-01-23 09:49) [4]

TO User_OKA:
Незнаю не пробовал. Я могу объяснить почему OnKeyUp, дело в том что я пробовал OnKeyDown, но получается с тормозами, например набрал 1-ю букву не фильтруется, набрал вторую фильтруется по первой, набрал третью фильтруется по первым двум и т.д. А OnKeyUp работает нормально.



User_OKA   (2002-01-23 12:23) [5]

to Hawk2
Событие OnChange наступает всякий раз при изменении TEdit.Text. Поэтому отпадает необходимость мучиться с кодами клавиш в OnKeyUp. Если же нужно отслеживать ввод, то можно использовать TMaskEdit (там тоже OnChange).




Форум: "Базы";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.02 c
1-57142           Seri                  2002-01-29 14:39  2002.02.18  
DG и TreeView


4-57253           GOSHAT                2001-12-19 01:18  2002.02.18  
DELPHI, WIN API


1-57140           Lion                  2002-02-03 19:54  2002.02.18  
StringGrid


14-57191          dido                  2001-12-28 09:09  2002.02.18  
Хочу совет


1-57043           SAlex                 2002-02-04 11:57  2002.02.18  
вставка таблицы в RichEdit