Durch Datensätze einer gefilterten Datenmenge navigieren
Nach oben zu Teilmengen von Daten mithilfe von Filtern anzeigen und bearbeiten
Für die Navigation durch die Datensätze einer gefilterten Datenmenge stehen vier Methoden zur Verfügung: Die folgende Tabelle beschreibt diese Methoden:
Methoden zur Navigation in gefilterten Datenmengen :
Methode | Beschreibung |
---|---|
FindFirst |
Bewegt den Cursor zum ersten Datensatz, der den aktuellen Filterkriterien entspricht. Die Suche beginnt immer beim ersten Datensatz der ungefilterten Datenmenge. |
FindLast |
Bewegt den Cursor zum letzten Datensatz, der den aktuellen Filterkriterien entspricht. |
FindNext |
Wechselt vom aktuellen Datensatz der gefilterten Datenmenge zum nächsten Datensatz. |
FindPrior |
Wechselt vom aktuellen Datensatz der gefilterten Datenmenge zum vorherigen Datensatz. |
Die folgende Anweisung positioniert den Cursor auf den ersten gefilterten Datensatz einer Datenmenge:
DataSet1.FindFirst;
DataSet1->FindFirst();
Wenn Sie die Eigenschaft Filter definiert oder eine Behandlungsroutine für das Ereignis DB.OnFilterRecord geschrieben haben, positionieren diese Methoden den Cursor immer auf den angegebenen Datensatz, ungeachtet dessen, ob für die Datenmenge die Filterung aktiviert ist. Werden diese Methoden bei deaktivierter Filterung aufgerufen, geschieht Folgendes:
- Die Filterung wird temporär aktiviert.
- Der Cursor wird auf einen Datensatz gesetzt, der die Bedingungen erfüllt (falls vorhanden).
- Die Filterung wird deaktiviert.
Anmerkung: Wenn die Filterung deaktiviert ist und Sie die Eigenschaft Filter nicht setzen oder keine OnFilterRecord-Ereignisbehandlungsroutine erstellen, führen diese Methoden dasselbe wie First, Last, Next und Prior aus.
Alle oben aufgeführten Methoden positionieren den Cursor auf einen übereinstimmenden Datensatz (falls einer gefunden wird), machen diesen zum aktuellen Datensatz und geben True zurück. Ist kein passender Datensatz vorhanden, bleibt die Position des Cursors unverändert, und der Rückgabewert lautet False. Der Status der Eigenschaft Found lässt sich zum zyklischen Prüfen dieser Aufrufe verwenden. Es wird nur eine Aktion eingeleitet, wenn für Found der Wert True zurückgegeben wird. Befindet sich z.B. der Cursor bereits auf dem letzten übereinstimmenden Datensatz der Datenmenge, liefert ein Aufruf der Methode FindNext den Wert False, und der aktuelle Datensatz ändert sich nicht.