Affichage et édition d'ensembles de données en utilisant des filtres

De RAD Studio
Aller à : navigation, rechercher

Remonter à Compréhension des ensembles de données - Index


Il arrive souvent qu'une application ne s'intéresse qu'à un sous-ensemble d'enregistrements d'un ensemble de données. Par exemple, votre application peut souhaiter récupérer ou visualiser dans une base de données des clients les enregistrements des sociétés dont le siège se trouve en Californie, ou bien rechercher un enregistrement contenant un ensemble de valeurs de champ déterminé. Dans tous les cas, vous pouvez utiliser des filtres pour limiter l'accès d'une application à un sous-ensemble de tous les enregistrements de l'ensemble de données.

Avec des ensembles de données unidirectionnels, vous ne pouvez limiter les enregistrements de l'ensemble de données que par le biais d'une requête. Avec d'autres descendants de TDataSet, vous pouvez toutefois définir un sous-ensemble dans les données déjà extraites. Pour limiter l'accès d'une application à un sous-ensemble de tous les enregistrements de l'ensemble de données, vous pouvez utiliser des filtres.

Le filtre spécifie des conditions qu'un enregistrement doit satisfaire pour être affiché. Les conditions de filtre peuvent être stipulées dans la propriété Filter de l'ensemble de données ou codées dans son gestionnaire d'événement DB.OnFilterRecord. Les conditions de filtre sont basées sur les valeurs contenues dans un nombre quelconque de champs d'un ensemble de données, que ces champs soient indexés ou non. Ainsi, pour ne visualiser que les enregistrements correspondant à des entreprises situées en Californie, un filtre simple consistera à rechercher les enregistrements contenant la valeur "CA" dans le champ Etat.

Remarque :  Les filtres sont appliqués à chaque enregistrement récupéré dans l'ensemble de données. Pour extraire des volumes importants de données, il est plus efficace d'utiliser une requête pour restreindre la récupération des enregistrements ou de définir une portée sur un ensemble de données client indexée plutôt que d'utiliser des filtres.

Rubriques

Voir aussi