Définition d'un champ de référence

De RAD Studio
Aller à : navigation, rechercher

Remonter à Définition de nouveaux champs persistants


Un champ de référence est un champ en lecture seule qui affiche des valeurs à l'exécution en fonction du critère de recherche ayant été spécifié. Dans sa forme la plus simple, on transmet à un champ de référence le nom du champ à rechercher, la valeur à rechercher et le champ de l'ensemble de données de référence dont la valeur doit s'afficher.

Prenons par exemple une application de VPC permettant à un opérateur d'utiliser un champ de référence pour déterminer automatiquement la ville et l'état correspondant à un code postal fourni par le client. La colonne dans laquelle s'effectue la recherche s'appelle ZipTable.Zip, la valeur à rechercher est le code postal du client saisi dans Order.CustZip, et les valeurs à renvoyer sont celles des colonnes ZipTable.City et ZipTable.State de l'enregistrement où la valeur de ZipTable.Zip correspond à la valeur en cours du champ Order.CustZip.


Remarque :  Les ensembles de données unidirectionnels ne prennent pas en charge les champs de référence.

Pour créer un champ de référence dans la boîte de dialogue Nouveau champ

  1. Saisissez le nom du champ de référence dans la zone de saisie Nom. Attention à ne pas saisir un nom de champ existant.
  2. Choisissez le type de données de ce champ dans la boîte à options Type.
  3. Le cas échéant, entrez la taille du champ dans la zone de saisie correspondante. La taille ne concerne que les champs de types Data.DB.TStringField, Data.DB.TBytesField et Data.DB.TVarBytesField.
  4. Sélectionnez Référence dans la boîte groupe Type de champ. Cette sélection active les boîtes à options d'ensemble de données et de champs clés.
  5. Choisissez dans la liste déroulante de la boîte à options Ensemble de données l'ensemble de données sur lequel doit porter la recherche des valeurs de champ. L'ensemble de référence doit être différent de celui du composant champ lui-même, sinon une exception de référence circulaire sera provoquée au moment de l'exécution. En spécifiant un ensemble de données de référence, vous activez les boîtes à options Clés de référence et Champ résultat.
  6. Dans la liste déroulante Champs clé, choisissez dans l'ensemble de données actif le champ dont les valeurs doivent se correspondre. Pour faire correspondre plusieurs champs, entrez leur nom directement au lieu de les choisir dans la liste déroulante. Séparez leur nom par des points-virgules. Si vous utilisez plusieurs champs, il faut employer des composants champ persistants.
  7. Dans la liste déroulante Clés de référence, choisissez un champ de l'ensemble de données de référence devant correspondre au champ source spécifié à l'étape 6. Si vous avez spécifié plusieurs champs clé, il faut spécifier le même nombre de clés de référence. Pour spécifier plusieurs champs, entrez leur nom directement. Séparez leur nom par des points-virgules.
  8. Dans la liste déroulante Champ résultat, choisissez un champ de l'ensemble de données de référence à renvoyer comme valeur du champ de référence que vous êtes en train de créer.

Lorsque vous concevez et exécutez votre application, les valeurs des champs de référence sont déterminées avant celles des champs calculés. Il est possible de créer des champs calculés basés sur des champs de référence mais il est impossible de créer des champs de référence basés sur des champs calculés.


Si LookupCache est définie à l'exécution, appelez RefreshLookupList pour initialiser la mémoire cache.

Voir aussi