++Funkcja LOCATE w BCB lub Delphi++

0

Problem:

ID Nazwa Lokalizacja
1 n1 plik1
2 n2 plik1
3 n3 plik1
4 n2 plik2
5 n4 plik2
6 n5 plik2
7 n6 plik2
8 n7 plik3
9 n2 plik3
...
...

Przypuscmy, ze chce znalezc rekord w kolumnie "Nazwa" o nazwie n2. Za pomoca funkcji Locate wyszukuje rekord:
Table1->Locate("Nazwa", "n2", SearchOptions);
Po tym poleceniu wyszukuje najpierw rekord z ID=2(i po nastepnych wywolaniach funkcji tez, czyli zawsze na pierwszy znaleziony rekord), a chce, zeby mi wyszukal kolejne rekordy z n2, czyli rekordy o id=4, id=9, itd.
W zwiazku z tym, pytanie:
JAK wyszukiwac kolejne rekordy(lub przeskakiwac po rekordach) za pomocą funkcji Locate dla powtarzajacych sie elementów w kolumnie?

Mam nadzieje, ze wszystko jest teraz zrozumiale.
Z góry Dzieki Wszystkim za pomoc [green], Pozdrawiam

0

Użyj SetRange lub SetKey... i dalej normalnie: First, Next, Prev, ...

0

Dzieki QUTE. Wybralem troche inny wariant (filtry) i pomoglo.
Dla i innych wskazowka: lepiej używać TQuery niz TTable jak ktos zna SQL'a. Mniej meczarni. :)

0

Hallo!

Ale jesli ktos jednak woli "Locate", to zeby znaleŹĆ nastepne recordy po pierwszym "Locate" moze uzyc
"LocateNext".

Pozdrawiam
Markus

0

Racja Markus, ale funkcja LocateNext jest dla bazy InterBase(TIBCustomDataSet.LocateNext) a nie Paradox.
Na forum juz jednak bylo cos podobnego :) :
http://4programmers.net/Forum/236182#236182
Warto zajrzec pod powyzszy link albo tez "wygooglac" :) "LocateNext"

Pozdro,
Don

1 użytkowników online, w tym zalogowanych: 0, gości: 1