Data.DB.TField.LookupCache

De RAD Studio API Documentation
Aller à : navigation, rechercher

Delphi

property LookupCache: Boolean read FLookupCache write SetLookupCache default False;

C++

__property bool LookupCache = {read=FLookupCache, write=SetLookupCache, default=0};

Propriétés

Type Visibilité  Source Unité  Parent
property published
Data.DB.pas
Data.DB.hpp
Data.DB TField

Description

Détermine si les valeurs d'un champ de référence sont placées dans un cache ou examinées de manière dynamique à chaque fois que l'enregistrement en cours de l'ensemble de données change.

Affectez la valeur true à la propriété LookupCache pour placer dans un cache les valeurs du champ de recherche quand LookupDataSet a peu de risque de changer et que le nombre de valeurs distinctes est faible. Placer les valeurs de référence dans un cache peut améliorer les performances puisque les valeurs de référence pour chaque ensemble de valeurs de LookupKeyFieldsLookupKeyFields sont préchargées quand DataSet est ouvert. Quand l'enregistrement en cours de DataSet change, l'objet champ peut localiser sa valeur (Value) dans le cache au lieu d'accéder à LookupDataSet. Cette amélioration des performances est particulièrement sensible quand l'ensemble de données de référence (LookupDataSet) se trouve sur un réseau dont les temps d'accès sont élevés.

Si chaque enregistrement de DataSet a une valeur différente pour KeyFields, le temps de recherche des valeurs dans le cache peut être plus élevé que le gain de temps qu'offre le cache. Le temps de recherche dans le cache augmente en proportion du nombre de valeurs distinctes que peut prendre KeyFields.

Si LookupDataSet peut changer, l'utilisation d'un cache pour les valeurs de référence peut entraîner des résultats imprévisibles. Appelez RefreshLookupList pour actualiser les valeurs du cache de référence. RefreshLookupList régénère la propriété LookupList qui contient les valeurs de LookupResultField pour chaque ensemble de valeurs de LookupKeyFields.

Si vous affectez LookupCache à l'exécution, appelez RefreshLookupList pour initialiser le cache.

Remarque :  LookupCache n'a de sens que si la propriété FieldKind a la valeur fkLookup.

Voir aussi