Listes de valeurs
Un élément franchement utile dans FileMaker Pro : la liste de valeurs.
Il existe en FileMaker Pro trois types de listes de valeurs:
Nous ne verrons pas ici les listes provenant d'un autre fichier : vieux souvenir des anciennes versions de FileMaker Pro... Soyons modernes ! Liste de valeurs personnaliséesPour créer une liste dans notre fichier, depuis le menu, cliquer "Fichier", "Définir" ou "Gérer" (v9), "Liste de valeurs" : Lorsque la fenêtre des listes de valeurs apparaît, cliquer sur le bouton "Créer" : la fenêtre de création apparaît : On se crée ici une liste de valeur de toutes pièces, avec des valeurs saisies à cet effet. Pour ce faire, on sélectionne "Utiliser les valeurs personnalisées" et on encode les valeurs désirées. Dans l'exemple, on veut se faire une liste de choix "Oui-Non". On encode simplement "Oui", on fait "enter" pour passer à la ligne suivante, puis on encode "Non" : on a ainsi une liste personnalisée. A noter que l'on peut se créer une liste d'une seule valeur... C'est parfois fort utile ! Liste de valeurs d'une rubrique, toutes les valeursIl s'agit ici de se créer une liste de valeurs en prenant les données d'une rubrique, sur la totalité des enregistrements d'une table FileMaker Pro. Par exemple, on aimerait avoir une liste qui reprend l'ensemble exhaustif des noms de la table PER_Personnes. Depuis l'écran de création, on rentre le nom de la liste (ici, "Personnes" ou "Personnes_r), et on choisi la première option, "Utiliser les valeurs de" : L'écran de sélection apparaît : Ne nous mêlons pas les pinceaux ici, ce serait trop bête ! S'il s'agit de lister l'entièreté des noms de la table PER, le mieux est de se placer dans le contexte de l'OT ancre "PER__" ! Lorsque "PER__" est sélectionné, il suffit de choisir "Nom" dans la liste des rubriques. On précise que l'on veut toutes les valeurs en cochant la case "Inclure toutes les valeurs". La liste est ainsi terminée. L'avantage de ce type de liste est qu'elles peuvent être utilisées partout dans le fichier FileMaker Pro, quel que soit le contexte. Prouvons-le ! On se crée une petite rubrique texte dans notre table "martyre", PAR_Parametres, en se plaçant sur le modèle PAR_Tech. Appelons cette nouvelle rubrique "test". Elle se place sur le modèle technique PAR_Tech (si on a pensé à le sélectionner avant, bien sûr). Cette rubrique étant sélectionnée, en mode modèle, on affiche le menu contextuel, et on appelle "Rubrique/contrôle", puis "Configuration" : Ou en double cliquant sur la rubrique (en mode modèle, toujours), la fenêtre de configuration apparaît : Dans cette fenêtre, on sélectionne d'abord le style de contrôle : Affichage comme Liste déroulante, puis, dans "Afficher les valeurs de", on sélectionne notre liste de valeurs, "Personnes". On coche également "Compléter automatiquement à l'aide de la liste de valeurs". Cette option est un filtre : lorsque le premier caractère est encodé dans la rubrique, la liste se limite aux données commençant par ce caractère, idem pour le 2e caractère, etc. La rubrique est ainsi configurée sous forme de liste déroulante avec l'ensemble des noms. On peut vérifier, en mode utilisation. si on clique dans la rubrique, la liste apparaît. En encodant quelques lettres : la liste se filtre au fur et à mesure. Notons au passage trois autres éléments importants :
Suite page 2 ____ Liste de valeurs filtréesDans la liste précédente, on ne tient pas compte du contexte : on prend tous les enregistrements d'une table, sans distinction. Ce serait pratique si la liste que l'on veut obtenir pouvait dépendre précisément du contexte, c'est à dire d'un lien établi sur une ancre de départ. Un exemple : la liste des élèves inscrits dans une classe. Cette liste varierait donc de l'enregistrement d'une classe à un autre ! On partirait donc de l'ancre CLA__ et on demanderait que la liste contienne les données liées de l'OT "cla_ins_PER__Eleves". A y réfléchir, c'est exactement la même chose que de demander à une Table Externe d'afficher une série de données : on devrait, en définitive, obtenir les mêmes données : une fois dans une TE et une autre fois dans une liste déroulante ! Pour créer la liste, on démarre comme pour une liste totale : du menu, "Fichier", "Définir" ou "Gérer", "Liste de valeurs", "Créer...", "Utiliser les valeurs de :" : Par contre, ici, on ne va pas rester sur l'OT de l'ancre "CLA__", mais on va chercher l'OT bouée "cla_ins_PER__Eleves", bien connue maintenant pour nous donner les élèves liés pour un an à une classe, et on sélectionne la rubrique "Nom". Comme on veut filtrer par classe, selon notre contexte, on ne va pas inclure toutes les valeurs, mais bien inclure uniquement les valeurs liées à partir de notre ancre "CLA__". On précise cela dans les options : On n'oublie pas de donner un nom approprié à la liste. Ici, Eleves_CLA devrait suffire, précisant que c'est une liste des élèves à partir du contexte CLA. Sur le modèle CLA_Tech (gardons nos bonnes habitudes), on se crée une petite rubrique texte bidon, appelée pompeusement "test". En mode modèle, on place cette rubrique sur notre modèle CLA_Fiche et on la configure en liste déroulante avec la liste Eleves_CLA. Si nous nous plaçons sur l'enregistrement de la classe des Grands, dans laquelle des élèves sont inscrits, nous allons obtenir : A comparer avec les données de la TE précédemment créée... Si nous nous plaçons sur une autre classe, qui n'a personne d'inscrit pour le moment, la liste reste désespérément vide... Remarques
Et puisque nous sommes dans les petits secrets : Une liste de valeurs sans listeDans le modèle PER_Fiche, en mode modèle, on double-clique sur la rubrique CP pour ouvrir la fenêtre de configuration. Dans cette fenêtre, on coche la case "compléter automatiquement à l'aide des valeurs précédemment saisies... On repasse en mode utilisation, on crée un nouvel enregistrement. On clique dans la rubrique CP, rien de particulier. Par contre, si je saisis une valeur correspondant au premier chiffre d'un code postal (en l'occurrence un 9 ou un 1), surprise, la liste de tous les codes postaux commençant par ce chiffre apparait...
|