Création de champs persistants

De RAD Studio
Aller à : navigation, rechercher

Remonter à Composants champ persistant


Les composants champ persistants créés avec l'éditeur de champs offrent un accès en programmation aux données sous-jacentes. Ils garantissent qu'à chaque exécution de votre application, celle-ci utilise et affiche toujours les mêmes colonnes, dans le même ordre, même si la structure physique de la base de données sous-jacente change. Les composants orientés données et le code du programme qui dépendent de champs spécifiques fonctionnent toujours comme prévu. Si une colonne dont dépend un composant champ persistant est supprimée ou modifiée, Delphi provoque une exception au lieu de faire fonctionner l'application avec une colonne inexistante ou avec des données sans correspondance.

               Pour créer un composant champ persistant pour un ensemble de données
  1. Placez un ensemble de données dans un module de données.
  2. Liez l'ensemble de données à ses données sous-jacentes. Pour ce faire, vous devez généralement associer l'ensemble de données à un fournisseur ou composant connexion et spécifier les propriétés permettant de décrire les données. Par exemple, si vous utilisez TADODataSet, vous pouvez attribuer à la propriété Connection un composant TADOConnection correctement configuré et à la propriété CommandText une requête valide.
  3. Double-cliquez sur le composant ensemble de données dans le module de données de façon à appeler l'éditeur de champs. L'éditeur de champs contient une barre de titre, des boutons de navigation et une boîte liste.La barre de titre de l'éditeur de champs affiche le nom du module de données ou de la fiche contenant l'ensemble de données, ainsi que le nom de celui-ci. Ainsi, si vous ouvrez l'ensemble de données Customers dans le module de données CustomerData, la barre de titre affiche 'CustomerData.Customers', ou la partie du nom qu'elle peut contenir.Sous la barre de titre figure un ensemble de boutons de navigation vous permettant de faire défiler un à un les enregistrements d'un ensemble de données au moment de la conception ; ces boutons vous permettent également de passer directement au premier ou au dernier enregistrement. Les boutons de navigation sont estompés si vous n'avez pas encore créé de composant champ persistant pour l'ensemble de données ou si celui-ci n'est pas actif. Si l'ensemble de données est unidirectionnel, les boutons permettant de se déplacer sur les dernier et précédent enregistrements sont toujours estompés.La boîte liste affiche le nom des composants champ persistants de l'ensemble de données. Lors du premier appel à l'éditeur de champs pour un nouvel ensemble de données, la liste est vide car les composants champ de l'ensemble de données sont dynamiques et non persistants. Si vous lancez l'éditeur de champs pour un ensemble de données contenant déjà des composants champ persistants, vous verrez leur nom dans la boîte liste.
  4. Cliquez avec le bouton droit dans l'éditeur de champs et choisissez Ajouter des champs.
  5. Dans la boîte de dialogue d'ajout de champs, sélectionnez les champs persistants. Par défaut, tous les champs sont sélectionnés à l'ouverture de la boîte de dialogue. Tous les champs que vous sélectionnerez dans cette boîte de dialogue deviendront des champs persistants.

La boîte de dialogue d'ajout de champs se referme et les champs que vous avez sélectionnés apparaissent dans la boîte liste de l'éditeur de champs. Les champs de la boîte liste de l'éditeur de champs sont persistants. Si l'ensemble de données est actif, vous remarquerez également que les boutons de navigation Dernier (si l'ensemble de données n'est pas unidirectionnel) et Suivant, au-dessus de la boîte liste sont activés.

Désormais, à chaque fois que vous ouvrirez l'ensemble de données, il ne créera plus de composant champ dynamique pour chaque colonne de la base de données sous-jacente. Au lieu de cela, il ne créera des composants persistants que pour les champs spécifiés.

A chaque fois que vous ouvrirez l'ensemble de données, il vérifiera que chacun des champs persistants non calculés est présent ou qu'il peut être créé à partir des données de la base. Sinon, il provoquera une exception vous avertissant que le champ n'est pas valide et ne s'ouvrira pas.

Voir aussi