Teilmengen von Daten mithilfe von Filtern anzeigen und bearbeiten

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Datenmengen - Index


Häufig wird für eine Anwendung nur eine Teilmenge der Datensätze einer Datenmenge benötigt. So könnte beispielsweise eine Situation eintreten, in der Sie aus Ihrer Kundendatenbank nur Datensätze von Firmen ermitteln und anzeigen wollen, die ihren Sitz in einem bestimmten Bundesland haben. Sie könnten aber auch nach einem Datensatz suchen, der eine bestimmte Gruppe von Feldwerten enthält. In diesem Fall können Sie den Zugriff der Anwendung auf eine Teilmenge der Datensätze in der Datenmenge beschränken.

Bei unidirektionalen Datenmengen können Sie die Menge der Datensätze nur einschränken, indem Sie hierzu eine Abfrage ausführen lassen. Bei anderen Nachfahren von TDataSet können Sie allerdings eine Teilmenge der bereits abgerufenen Daten definieren. Mit Filtern beschränken Sie den Zugriff einer Anwendung auf eine bestimmte Teilmenge der in einer Datenmenge enthaltenen Datensätze.

Ein Filter legt die Bedingungen fest, die ein Datensatz erfüllen muss, damit er angezeigt wird. Filterbedingungen können in der Eigenschaft Filter einer Datenmenge gesetzt oder in die Ereignisbehandlungsroutine für Data.DB.TDataSet.OnFilterRecord aufgenommen werden. Filterbedingungen werden anhand der Werte in einer beliebigen, anzugebenden Anzahl von Feldern der Datenmenge definiert. Dabei ist es unerheblich, ob die betreffenden Felder indiziert sind oder nicht. Beispiel: Wenn nur die Datensätze für Firmen in Kalifornien angezeigt werden sollen, können Sie einen einfachen Filter definieren, über den festgelegt wird, dass die Datensätze im Feld State den Wert "CA" enthalten müssen

Hinweis: Bei der Suche mit einer Filterbedingung wird jeder Datensatz der Datenmenge berücksichtigt. Wenn Sie eine große Datenmenge filtern möchten, ist es unter Umständen sinnvoller, die Anzahl der abgerufenen Datensätze über eine Abfrage zu begrenzen oder in einer indizierten Tabelle einen Bereich festzulegen, als einen entsprechenden Filter zu definieren.

Themen

Siehe auch