![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Locate
User_OKA © (2003-05-03 11:33:00)Необходимо выполнить следующий поиск:
Locate("FIO;Adres;Ndom;",VarArrayOf([Любое значение,Edit1.Text,Любое значение]),[loCaseInsensitive])
Как задать любое значение?
VAleksey (2003-05-05 10:24:00) [1]Формировать надо строку "FIO;Adres;Ndom;", а так же
вариантный массив. Их и подставлять. Другого пути нет.
Zacho (2003-05-05 10:24:00) [2]
> User_OKA © (05.05.03 09:49)
Просто перед Locate формируй динамически KeyField и KeyValues в зависимости от того, в каких Edit"ах есть значения.
User_OKA (2003-05-05 09:49:00) [3]Я хотел в событии Edit.OnChange определить какие из Edit-ов пустые. И если Edit пуст, то этот параметр в поиске принимал бы любое значение, а если Edit содержал бы какое-то значение, то параметр поиска соответствовал значению Edit.
Форма поиска всегда оставалась неизменной
Locate("FIO;Adres;Ndom;",VarArrayOf ([???,Edit2.Text,???]),[loCaseInsensitive])
Palladin (2003-05-03 14:59:00) [4]:) а в этой конференции веселые вещи встречаются
MsGuns (2003-05-03 12:33:00) [5]>User_OKA © (03.05.03 12:19)
>Мне нужно поиск по 3 Edit.
Тебе нужен поиск по Edit или по содержимым их св-ва Text ?
Если в каком-то Edit нет значения (пусто), надо ли это воспринимать как аргрумент поиска (значение поля не указано) или же что по этому полю искать не надо ?
Если первое, то см. MsGuns © (03.05.03 12:16) & Anatoly Podgoretsky © (03.05.03 12:27), если второе, то User_OKA © (03.05.03 11:33) с EditN.Text вместо [Любое значение]
Anatoly Podgoretsky (2003-05-03 12:27:00) [6]Значит не надо в ключать в поиск это поле
User_OKA (2003-05-03 12:19:00) [7]MsGuns> Locate("Adres",Edit2.Text,[loCaseInsensitive]) - поиск только по адресу
Мне нужно поиск по 3 Edit.
MsGuns (2003-05-03 12:16:00) [8]Locate("Adres",Edit2.Text,[loCaseInsensitive]) - поиск только по адресу
User_OKA (2003-05-03 12:10:00) [9]Например у меня есть 3 Edit.
Edit1 - FIO
Edit2 - Adres
Edit3 - NDom
По ним мне необходимо организовать поиск в БД.
В событии Edit OnChange пишу
Locate("FIO;Adres;Ndom;",VarArrayOf([Edit1.Text,Edit2.Text,Edit3.Text]),[loCaseInsensitive])
Если Edit1.Text и Edit2.Text пустые, а Edit2.Text имеет какое то значение, то поиск не работает.
Для этого я и хочу задать, если Edit.Text пустой значит любое значение.
Anatoly Podgoretsky (2003-05-03 11:58:00) [10]Строго как написано в твоем вопросе и в ответе, именно так и не иначе.
User_OKA (2003-05-03 11:56:00) [11]Ну и как это понять?
Anatoly Podgoretsky (2003-05-03 11:52:00) [12]Locate("FIO;Adres;Ndom;",VarArrayOf(["Любое значение",Edit1.Text,"Любое значение"]),[loCaseInsensitive])