Temps nécessaire pour suivre cette leçon : Trois bons quarts d'heure
Pour suivre cette leçon, vous devez avoir suivi les leçons précédentes. Ou plus précisément, vous devez être en possession de la base de données ProFormation.mdb telle qu'elle était à la fin de la leçon précédente. Si vous n'êtes pas certain de l'avoir, vous pouvez la télécharger ici
Dans cette leçon, nous allons quelque peu personnaliser nos états : il ne va plus du tout s'agir d'étiquettes, mais de regroupements. |
Nous n'allons maintenant plus nous occuper de T_Client, mais nous allons revenir à notre bonne vieille table T_Celebrite.
Demandez un nouvel état avec "Assistant Etat", basé sur T_Celebrite :
Lorsque vous cliquez sur OK, vous arrivez alors sur la boîte de dialogue suivante :
Cette boîte de dialogue va vous permettre de sélectionner les champs de la table T_Celebrite que vous voulez voir apparaître dans votre état. Dans notre cas, nous voulons voir apparaître seulement 3 champs : Le titre, le nom et le prénom. Déplacez les avec le bouton > dans la partie de droite.
Oui, mais, nous n'allons pas utiliser cette option pour l'instant, ce serait trop compliqué, et la seule autre table dont nous disposons est la table T_Pays qui ne nous permettrait pas de faire des choses intéressantes.. Restons dans une seule table. Cliquez sur Suivant.. Cette boîte de dialogue est particulièrement intéressante, car c'est ici que vous allez pouvoir regrouper les célébrités.
Plutôt qu'avoir une simple liste des célébrités, ce serait intéressant de regrouper par leur titre par exemple : d'abord toutes de "Madame", après, toutes les "Mademoiselle", et enfin, tous les "Monsieur", pour se rendre compte très facilement de la répartition des Monsieur, Madame et Mademoiselle dans notre table, ou pour d'autres raisons. Vous allez voir, c'est une fonction d'Access très intéressante qui n'existe pas dans Excel (en tout cas pas sous une forme aussi conviviale).
Envoyez le titre à droite avec le bouton > :
Parce que ça n'aurait pas servi à grand chose : ç'aurait été un état qui aurait regroupé toutes les célébrités qui s'appellent "Adjani", puis toutes celles qui s'appellent "Alési", "Allen", etc. Il n'y aurait chaque fois qu'une seule personne dans chaque groupe, c'est idiot... Bon pour "Belmondo", on aurait eu 2 personnes : Jean-Paul et Paul, mais c'est tout... L'intérêt est plus que limité.
Oui, si à l'écran d'avant on avait sélectionné le domaine.
Bon, assez palabré, cliquez sur Suivant : Nous arrivons dans un écran nettement moins important puisqu'il s'agit de déterminer l'ordre de tri :
Vous constatez l'existence de 4 listes déroulantes sur la droite, dont seule la première est active. Dans cette première liste, vous pouvez choisir entre le nom et le prénom, mais pas le titre :
Exactement. Le groupe des titres sera automatiquement trié : c'est à dire qu'on aura d'abord toutes les "Madame", ensuite les "Mademoiselle" et après tous les "Monsieur" simplement parce qu'alphabétiquement, c'est cet ordre qui est respecté.
Et maintenant, à l'intérieur-même de chaque groupe, vous voulez peut-être que les célébrités soient triées par ordre alphabétique : on aura donc d'abord toutes les "Madame", et DANS les "Madame", ce sera trié : Balasko, Bardot, Birkin, etc.
Après, nous aurons le groupe des "Mademoiselle", qui sera aussi trié : Adjani, Hingis, Ledoyen, Lopez, Mauresmo, etc. et après ça recommence avec les "Monsieur"
Oui, c'est comme une 2ème clé de tri... Mais ce serait complètement idiot de trier aussi par prénom !
Et bien, si vous vous rappelez la leçon 26, sur le tri Multi-colonnes dans les requêtes, vous devriez vous en rendre compte : si vous triez aussi sur les prénoms, il va donc d'abord donc trier sur les noms, et par exemple, pour Adjani, il va donner tous les prénoms des gens qui ont pour nom Adjani : Complètement crétin puisqu'il n'y a qu'UNE personne qui s'appelle Adjani. Bon pour Hallyday, il y a 2 personnes : Johnny et David, alors il les triera par ordre alphabétique, mais bon, c'est quand même idiot.
Oui. C'est dur à comprendre quand c'est expliqué théoriquement, mais nous allons le faire dans un 2ème temps. Pour l'instant, nous allons nous contenter de notre état qui contient seulement les titres, et un ordre alphabétique pour les noms de famille. Cliquez sur Suivant :
Cette boîte de dialogue va simplement vous permettre de déterminer l'aspect esthétique de votre état. Quand vous choisissez Echelonné, Bloc, Contour 1, etc. dans la liste du milieu, vous visualisez une sorte de mini-aperçu dans la partie de gauche qui va vous montrer plus ou moins l'aspect de votre état.
A droite, l'orientation portrait ou paysage décide de dans quel sens vous allez imprimer : portrait, c'est quand c'est imprimé en hauteur, et Paysage en largeur (votre feuille de papier A4 donc). Si vous choissez Paysage, vous n'aurez pas besoin de mettre votre feuille dans l'imprimante dans l'autre sens : vous la placez toujours dans le sens de la hauteur, mais c'est Access qui va imprimer l'état dans l'autre sens. C'est assez rare qu'on imprime en paysage. On pourrait choisir d'imprimer en paysage quand par exemple il y a vraiment beaucoup de champs les uns à côté des autres et qu'on a besoin d'une grande largeur de feuille.
Un peu plus bas, il y a une case à cocher "Ajuster la taille des champs afin qu'ils tiennent tous sur une page". J'ai essayé d'afficher un état avec et sans cette coche, mais je n'ai pas vu de différence... S'il y a trop de champs, ça continue à ne pas tenir sur la page. Mais nous verrons un peu plus tard comment faire pour pallier à ce problème de place.
Choisissez Echelonné, et cliquez sur Suivant.
C'est à nouveau une boîte de dialogue peu importante qui va vous permettre de déterminer plus ou moins les polices de caractère et les couleurs de votre état. Dans la partie de droite, vous cliquez sur les difféents modèles (Compact, Formel, Léger, etc.), et dans la partie de gauche, vous avez un petit aperçu :
1. C'est le style du titre. ATTENTION : IMPORTANT : Il y a une confusion : Ce n'est PAS parce que c'est marqué Titre que c'est le champ Titre. En fait c'est le style de titre du groupe. Si vous aviez choisi dans le premier écran de regrouper par Etat Civil, dans cet écran, ce serait aussi marqué Titre dans la partie de gauche. En fait, plutôt que d'écrire "Titre" en tout gros, ils auraient à mon avis mieux fait d'écrire "En-tête du groupe", mais bon...
2. Ca c'est le style de l'étiquette : vous aurez tous les noms et les prénoms, mais au dessus des noms et des prénoms, ce sera bien inscrit "Nom" et "Prénom". Ces titres "Nom" et "Prénom" seront écrit avec ce style (2)
3. C'est le style d'écriture des noms et des prénoms bien réels : Johnny Hallyday, Josiane Balasko, Isabelle Adjani, etc.
Choisissez "Compact", et cliquez sur Suivant.
Il ne reste plus qu'à donner un nom à notre état. Appelez-le E_CelebriteGroupeeParTitre, et cliquez sur Terminer :
Voici la première page de votre état (les chiffres et les cadres rouges n'apparaissent pas chez vous, c'est pour vous montrer les zones importantes) :
1 : Ce titre représente le nom de l'état. C'est lors de la dernière étape de la création de cet état que vous avez donné le nom "E_CelebriteGroupeeParTitre" qu'Access l'a attribué au nom de l'état ET au titre de la première page, car ça n'apparait que sur la première page (Il y a 4 pages comme vous pouvez constater en bas à droite)
2 : Ces titres sont répétés, eux, sur chacune des pages... En l'occurrence, ils ne sont pas très utiles parce qu'on se doute bien en voyant les données que c'est le titre, le prénom et le nom, mais bon...
3 : Cette liste de 5 personnes en tête de l'état sont des personnes...
qui n'ont pas de titre... Oui,
on sait que Einstein, Gorbatchev, Lennon et Reno sont des "Monsieur, et
Goya une "Madame", mais DANS LA TABLE, leurs titres ne sont pas renseignés...
Pourquoi apparaissent-ils en premier lieu ? Simplement car, comme nous l'avons
dit lors de la conception de l'état, les titres sont triés par
ordre alphabétique... et "rien", c'est alphabétiquement
avant "Madame".
En fait "rien" est avant tout le monde. Evidemment, ça fait
bizarre de ne pas voir de titre, mais il y a bien le titre en haut à
gauche, mais comme il est vide... On ne voit rien !
4 : Voici la liste complète des "Madame". Comme vous pouvez le constater, elles sont correctement triées par leur nom : Balasko, Bardot, Birkin, ... , Zeta-Jones.
5. C'est la liste des "Mademoiselle". Peut-être sont-elles toutes là, ou alors en reste-t-il d'autres affichées dans la 2ème page ???
6. C'est le pied de page : Sous chaque page, la date, et le numéro de la page seront imprimés.
Eh oui ! C'est de nouveau la faute à la table ! Les données ne sont pas toutes correctes... Et jusque là, nous ne nous étions rendu compte de rien... Mais tout à coup, lorsqu'il s'agit de montrer les données de manière synthétique, rien ne va plus ! Ce sera le travail de notre prochaine leçon : le nettoyage des tables. D'ailleurs, si vous vous rendez sur la dernière page, vous verrez également Charlie Chaplin qui est montré dans la catégorie "Mr.".
Vous pouvez fermer cet état.
L'assistant Etat permet de personnaliser quelque peu les états : choix des tables et des champs, aspect esthétique choisi dans une liste, et surtout l'initiation aux groupes : C'est à dire la possibilité de regrouper les données selon tel ou tel critère. Nous avons vu que pour qu'un groupe soit efficace, il faut qu'il s'agisse de données répétitives, comme par exemple le Titre, mais le Pays ou l'état civil auraient aussi convenus. Par contre les informations uniques comme le nom de famille ou la remarque ne sont pas des en-têtes de groupes judicieux. |
Pour voir les solutions, il vous suffit de sélectionner le questionnaire ci-dessus : 3 petites étoiles *** apparaîtront en face des bonnes réponses. |
L'exercice consiste à créer 3 états, dans votre base de données habituelle, qui vont ressembler à E_CelebriteGroupeParTitre (Qui vont chaque fois contenir le prénom et le nom, trié chaque fois par le nom), selon les critères suivants : Vous allez constater à quel point c'est désagréable d'avoir des groupes qui contiennent ?? ou ???, d'ou l'intérêt de nettoyer les tables. Vous verrez ce que je veux dire quand vous ferez l'exercice. Etat Numéro 1 Etat Numéro 2
Etat
Numéro 3 (A peu près l'inverse de l'état précédent,
mais avec une requête paramétrée) Téléchargez la solution de l'exercice ici, qui n'est autre que ProFormation.MDB telle qu'elle devrait être à la fin de cette leçon. |
Si vous n'êtes pas tout à fait certain d'avoir suivi correctement toutes les étapes de cette leçon, vous avez la possibilité de télécharger ici la version de ProFormation.mdb exactement dans l'état ou elle devrait être à la fin de cette leçon.
Avez-vous une question technique
concernant cette leçon ? Cliquez
ici !
Une remarque sur cette leçon ? Un problème
? Une erreur ? une ambiguité ? Soyez
gentil de m'en informer