Fonctionnalité de JBuilder Professionnel et Entreprise.
L'éditeur de propriété PickList
sert à définir les propriétés associées à une relation de type liste de choix ou référence entre deux objets DataSet
.
Pour afficher cet éditeur, choisissez la propriété pickList
dans l'inspecteur lorsqu'un composant quelconque (StorageDataSet
) Column
est sélectionné dans le volet structure. Les valeurs précisées dans cette boîte de dialogue sont stockées dans une instance d'objet PickListDescriptor
.
Vous pouvez utiliser le champ liste de choix pour fournir des valeurs à une colonne en utilisant une liste de choix pour entrer une nouvelle valeur dans une colonne mais aussi pour créer une référence qui affichera des valeurs issues d'une autre colonne. Les liens s'adressent à des rubriques de la section Guide du développeur d'applications de bases de données.
Ce type de référence affiche la liste de choix sous forme de liste déroulante. Les choix qui remplissent la liste viennent des valeurs uniques d'une colonne d'un autre ensemble de données. Le tutoriel donne les étapes du référencement d'une valeur dans une liste de choix, pour la saisie, dans le but de sélectionner le pays d'un client ou d'un employé. Dans cet exemple, la propriété pickList
d'une colonne vous permet de définir quelle colonne de quel ensemble de données fournira les valeurs de la liste de choix. Les choix seront disponibles pour la saisie dans une composant visuel, tel une table, lorsque l'application sera exécutée.
Bien d'autres choses peuvent être faites avec une liste de choix. Pour avoir d'autres idées, reportez-vous à l'exemple de liste de choix du répertoire d'exemples dbSwing. Si vous téléchargez votre version de JBuilder, vous trouverez des exemples en téléchargeant le pack d'exemples.
Ce type de recherche récupère les valeurs d'une table spécifiée selon un critère défini et l'affiche dans la table en cours. Afin de créer une colonne calculée, vous devez créer un nouvel objet Column
dans le composant StorageDataSet
, définir de manière appropriée son calcType
et programmer le gestionnaire de l'événement calcFields
. Les valeurs de référence ne sont visibles que lorsque l'application fonctionne. Les colonnes de référence peuvent être définies et visualisées dans JBuilder, mais les colonnes de référence définies par JBuilder ne sont pas résolues dans sa source de données ni fournies par sa source de données, bien qu'elles puissent être exportées dans un fichier texte.
Voici un exemple de référencement d'un champ dans une table différente pour des besoins d'affichage : le référencement d'un numéro d'article afin d'afficher une description dans un élément de ligne de facture, le référencement d'un code postal pour une ville et un pays spécifiés.
La méthode lookup()
utilise un critère de recherche spécifié pour rechercher la première ligne correspondant au critère. Lorsque la ligne est trouvée, les données sont renvoyées depuis cette ligne, mais le curseur n'est pas déplacé sur cette ligne. La méthode locate()
est semblable à la méthode lookup()
, à la différence qu'elle déplace le curseur sur la première ligne correspondant à l'ensemble de critères spécifié. Pour plus d'informations sur la méthode locate()
, voir "Localisation des données".
La méthode lookup()
peut utiliser une ligne de données
restreinte (une ligne de données ayant moins de colonnes que l'ensemble de données) pour contenir les valeurs à rechercher et les options définies dans la classe Locate
pour contrôler la recherche. Cette ligne de données restreinte ne contiendra que les colonnes sélectionnées et les données correspondant au critère de recherche en cours, s'il existe. Avec le référencement, vous référencez généralement des valeurs dans une autre table, vous devrez donc instancier une connexion à cette table dans votre application.
Pour plus d'informations sur la création de listes de choix, consultez la description de classe de PickListDescriptor
.
Sélectionnez l'objet DataSet
contenant les données à afficher dans la liste de choix. L'ensemble de données doit être instancié pour l'affichage dans cette liste.
Lorsqu'un ensemble de données est sélectionné, la grille se remplit avec les données suivantes :
Nom du DataSet | Propriété en lecture seule qui affiche une liste de toutes les colonnes de l'ensemble de données indiqué dans le champ Ensemble de données Picklist/Lookup. |
Type de données | Propriété en lecture seule qui affiche le type de données de chaque colonne de l'ensemble de données indiqué dans le champ Ensemble de données Picklist/Lookup. Le type de données de la colonne détermine les choix qui seront affichés dans la colonne déroulante "destination" ; seuls des types de données similaires peuvent être spécifiés. |
Afficher dans la liste de sélection | Sélectionnez cette option pour choisir les composants Column à lire lors du remplissage des données, à partir de l'ensemble de données liste de choix, dans les colonnes indiquées dans la propriété Columns de "destination".
Si votre liste de choix contient plusieurs colonnes, vous devez aussi définir la propriété |
(Nom du DataSet) | Sélectionnez les composants Column de "destination" à remplir lorsqu'une entrée de la liste de choix est sélectionnée. Cette propriété est aussi utilisée pour l'affichage des valeurs de référence et si elle n'est pas définie, votre application peut générer une erreur java.lang.NullPointerException . |
Sélectionnez le nom de la colonne de l'ensemble de données liste de choix à afficher pour cette colonne (la colonne dont la liste de choix est en cours de définition) dans des contrôles orientés données.
Remarque : Si vous définissez cette propriété mais oubliez de spécifier une colonne dans la colonne "destination", votre application génèrera une erreur lors de son exécution, probablement une erreur java.NullPointerException
.
Sélectionnez cette option pour que JBuilder applique des contraintes de données (comme une valeur minimale ou maximale) sur les colonnes de destination.