![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Метод Locate (компонент TADOQuery) [D6, MSSQL]
andrey__ © (2003-09-30 13:22:00)
Метод Locate (компонент TADOQuery) находит первую запись удовлетвор. условию и делает ее текущей, дальше я хочу найти следущую запись соотв. условию и сделать ее текущей (и так до конца).
Подскажите как.
andrey__ (2003-09-30 17:33:00) [1]
> сделай навигацию с псевдо фильтрацией и всё
> кажется FindFirst, FindNext, FindLast...
я так понял условие описуем в св-ве Filter?
Term (2003-09-30 15:14:00) [2]
сделай навигацию с псевдо фильтрацией и всё
кажется FindFirst, FindNext, FindLast...
поищи в хелпе
Е-Моё имя (2003-09-30 14:48:00) [3]
в смысле фильтр по нужному значению, а там просто next
Е-Моё имя (2003-09-30 14:47:00) [4]
можно с фильтром извратица
Nikolay M. (2003-09-30 14:37:00) [5]
> Vlad © (30.09.03 14:17) [5]
А ты уверен в таком поведени Locate-а?
FindFirst/FindNext - как раз то, что нужно автору ветки, имхо.
Конечно, можно извратиться и с Locate: находим первую запись, в DataSet.Filter заносим "(ID <> ID_найденной записи)", опять делаем Locate, в фильтр добавляем " (AND ID <> ID_найденной записи)" и тд. Но это слишком дико :)
Hooch (2003-09-30 14:26:00) [6]
Locate всё равно ищет с начала, так что Next не поможет, сам беги по датасету и сравнивай знаечения, почему уменно Locate нужен ?
Vlad (2003-09-30 14:17:00) [7]
>andrey__ (30.09.03 13:37) [4]
Это ты не понял. Next нужен для того чтобы в следующий раз не отобралась таже самая запись
andrey__ (2003-09-30 13:37:00) [8]
> Andrey007 (30.09.03 13:23) [1]
может я ошибаюсь но метод Next ни как не отталкивается от условия в методе Locate а просто делает текущей следующую запись не проверяя соотв. она условию или нет.
Может ты не понял но мне надо поочередно пройтись по всем записям удовлетвор условию в Locate.
andrey__ (2003-09-30 13:34:00) [9]
> Andrey007 (30.09.03 13:23) [1]
может я ошибаюсь но метод Next ни как не отталкивается от условия в методе Locate а просто делает текущей следующую запись не проверяя соотв. она условию или нет.
DenK_vrtz (2003-09-30 13:32:00) [10]
Сделать запрос с соответствующим условием, а на его основе делать Locate в основном наборе. Оба набора должны содержать одно и тоже уникальное поле.
Andrey007 (2003-09-30 13:23:00) [11]
if Locate then
begin
Next
end;