powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Поиск по ПОЛЮ
17 сообщений из 17, страница 1 из 1
Поиск по ПОЛЮ
    #32208534
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имеется тейбл в нем поле ФИО ...
в едите ввожу фамилию и с каждым введенным символом список уменьшается пока не останется одна... смысл поняли . Не раз юзали сами.
как сделать без прохода таблички после ввода каждого символа в едит и разбиения значения поля на символы .... я видел как тип один так делал и всего несколько строк но внимания не обратил (синий был :)
кто знает сознавайтесь ...
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32208558
Hammer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По поводу нескольких строк енто ты маханул.
Получаестся где-то строк 80-100
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32208575
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я в принципе вижу (где то там в своих двух извилинах) как это сделать (по сивольно каждую запись перебирать) НО..... если записей будет тысячи или миллионы а на стареньком пне прога будет думать о как дого при поиске

вот и интересно мне нет ли таких функций или процедур у делфи чтоб упростить мою задачу..
неохота эти 80-100 строк писать
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32209170
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а фильтр почему бы не применить?

if trim(edFind.Text) <> '' then
begin
Employees.Filtered:=False;
Employees.Filter := 'SURNAME LIKE '+QuotedStr('%'+trim(edFind.Text)+'%');
Employees.Filtered:=True;
end;
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32209177
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а аааааа нифига .... пусто
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32209179
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а интересно как сделал то? покажи хоть кусок кода?

надо же этот кусок на TEdit OnChange повесить
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32209302
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
да хоть на таймер ....
я для проверки на кнопу символ ввел и кликнул
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32209309
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Employees.Filter := 'SURNAME LIKE '+QuotedStr('%'+trim(edFind.Text)+'%');
после имени поля никакого знака сравнения ????
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210277
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все должно работать на 100%
(у меня MS SQL2000)
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210305
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
блин, классический вариант с BDE
========================================
procedure TForm1.dsWellsDataChange(Sender: TObject; Field: TField);
var
mywell:String;
begin
// фильтрация образцов в зависимости от выбора скважины
if not dsWells.DataSet.FieldByName('W_Name').IsNull then
begin
mywell:= dsWells.DataSet.FieldValues['W_Name'];
Samples.Filtered:= False;
Samples.Filter := 'W_Name = '+QuotedStr(mywell);
Samples.Filtered:= True;
end;
end;
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210309
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тут в примере dsWells это датасурс датасета, отвечающего за список скважин

но можно TEdit ввести, и в TEdit вводить символы и в Samples будет показывать те образцы, которые по скважине похожи на подстроку введенную в TEdit

Samples.Filter := 'W_Name = '+QuotedStr(mywell);

поиграй с синтаксисом самого фильтра, у меня тоже не сразу получилось как я хотел

Filter := 'SURNAME LIKE '+QuotedStr('%'+trim(edFind.Text)+'%');

1) введи принудительно в Filter в инспекторе несколько символов - проверь

2) выведи на Label.Caption что у тебя получается в качестве строки фильтра - проверь
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210453
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Arguments are wrong type, or out of of acceptable range, or are in conglict with one another

фргументы неправильного типа или выходят за приемлемые рамки, или кофликтуют друг с другом
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210487
Alexander2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на Label всегда выводи что у тебя получается.
либо в отладчике смотри какая строка фильтра получается
поиграй с кавычками.
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210821
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Filter:='FIO like %'+QuotedStr( EditSearch.text)+'%';

результат FIO like %'Пути'%

играюсь играюсь, а чё то никак не могу избавиться от кавычек между % %
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210833
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Filter:='FIO like'+QuotedStr('%'+trim(editSearch.Text)+'%');

результат FIO like '%Пути% '

задолбался Я .....
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210835
Filter:='FIO like '+QuotedStr('%'+EditSearch.text+'%');

======
я не кю?
...
Рейтинг: 0 / 0
Поиск по ПОЛЮ
    #32210842
Cnupum
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Filter:='FIO like %'+ EditSearch.text+'%';

а вот теперь все работает хе хе
P.S. кстати чё такое QuotedStr
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Поиск по ПОЛЮ
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]