Lecon 50 : Etats : Initiation aux groupes en mode création

Temps nécessaire pour suivre cette leçon : Entre un quart d'heure et trois 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

Aperçu de cette leçon

Dans cette leçon, voyons comment grouper les enregistrements selon certains critères, ou plutôt selon certains champs, mais à la main cette fois !

Sommaire

  1. Grouper manuellement les données par un champ judicieux : Le Domaine
  2. Définition de l'ordre de tri dans un groupe
  3. Définition de l'ordre de tri dans les données non groupées en utilisant astucieusement les options de groupe
  4. Titrage des groupes
  5. Conseils esthétiques sur l'apparence des titres de groupe

Nous avons déjà vu ces groupes !

Oui, aux leçons 44 et 46, avec l'assistant. Je vous conseille d'ailleurs de réviser ces deux leçons pour comprendre facilement celle-ci.

C'est fait. Je crée un nouvel état en mode création ?

Oui, basé sur T_Celebrite. Supprimez l'en-tête et le pied de page, et placez le nom et le prénom : . Supprimez les étiquettes, et placez le nom à côté du prénom : . Resserez le tout, comme ceci :

Oui, OK, Ca je sais faire. On a vu ça dans la leçon 48. C'est pour avoir une simple liste compacte.

Bonne mémoire !

Ajoutez le domaine juste à côté : Exemple de marche à suivre pour plus de facilité :

  1. Faites le glisser un peu plus bas :
  2. Supprimez l'étiquette du domaine :
  3. Faites glisser le domaine à côté du nom :
  4. Resserrez la section détail :

Vous êtes maintenant l'heureux propriétaire d'une simple liste, comme ceci :


Grouper manuellement les données par un champ judicieux : Le Domaine

Et maintenant, nous allons grouper par domaine, c'est ça ?

Oui. Mais il n'y a plus d'assistant cette fois !

Créons une section "En-tête de groupe Domaine". Pour ce faire, Allez dans le menu Affichage/Trier et Grouper :

Choisissez dans la liste : Domaine , ce qui a pour effet d'afficher les options du bas : Dans ces options, choisissez En-tête de groupe : Oui. A l'instant ou vous choisissez Oui, vous voyez automatiquement apparaître une nouvelle section "En-tête de groupe Domaine" dans votre état : . Réduisez-la un tout petit peu : .

Lancez votre état en mode aperçu avant impression :


Définition de l'ordre de tri dans un groupe

Il a donc groupé tous les gens par leur domains d'activité : Ceux qui sont dans les "Affaire", ceux qui sont dans la "Chanson", le cinéma etc.
Tiens ! En plus c'est par ordre alphabétique : affaire, chanson, cinéma, Non-spécifié, sport et télévision !

L'ordre alphabétique a été exigé automatiquement lorsque vous étiez dans Affichage/Trier et grouper : . Si on avait choisi aucun tri, il aurait simplement repris l'ordre de la table T_Celebrite.


Définition de l'ordre de tri dans les données non groupées en utilisant astucieusement les options de groupe

En parlant de tri, les gens ne sont pas triés : pour les "Affaire" par exemple : Sirven, Bonaparte, Tapie, Gates... Peut-on trier pour chaque groupe les noms des gens ?

Oui. C'est toujours dans cette boîte de dialogue que vous trouvez avec Affichage/Trier et grouper : en dessous de Domaine, choisissez NomClient, et laissez l'ordre de tri croissant. Mais cette fois, laissez En-tête de groupe à NON, car on ne veut pas en faire un groupe.

Pourquoi ?

Parce que sinon, on aurait un groupe avec tous les Sirven, puis un groupe avec tous les Bonaparte, puis...

J'ai compris, on avait d'ailleurs déjà vu ça dans l'assistant état.

Il n'y a pas de groupe de noms, mais ils sont triés :


Titrage des groupes

Pourrait-on visualiser tous les domaines juste une fois au dessus de la liste des gens, plutôt que de répéter :
Affaire, Affaire, Affaire
Chanson, Chanson, Chanson... etc. ?

Oui et c'est un jeu d'enfant. En mode création, déplacez le Domaine du détail jusqu'à la section En-tête de groupe Domaine : . Ce qui donne ceci en aperçu avant impression :


Conseils esthétiques sur l'apparence des titres de groupe

Ils sont tout petits, ces titres !
On ne le voit presque pas !

C'est toujours très important, l'apparence, particulièrement dans les états. Imposez-lui cette mise en forme :

Admirez-moi ça : :

Et le petit écart sur la droite des prénoms appuie encore cette impression de "sous-liste" en quelque sorte.

C'est ça !

Et si vous donniez un peu d'air entre chaque rubrique :

C'est encore mieux :

Arrêtons-nous là. Fermez votre état, Enregistrez le sous E_GroupeDomaine. C'est l'heure de la pause !

Bon... Hem... On peut résumer ?

Tout comme nous l'avons vu avec les assistants semi-automatiques, il est possible de grouper les données selon certains champs qui s'y prêtent. Nous avons vu ici un regroupement sur le domaine, mais vous imaginez aisément un regroupement sur le titre, l'état civil ou le pays d'origine par exemple. Encore une fois, nous avons vu que la mise en forme est ultra-importante pour la bonne lisibilité de l'état.
Après tout, c'est en quelque sorte "l'étape finale" de notre base de données, non ?

Avez-vous bien compris ?

  1. Les groupes sont par défaut :
    a. Triés par ordre alphabétique ***
    b. Triés par ordre alphabétique inverse
    c. Non triés
    d. Triés par ordre alphabétique, et il ne peut en être autrement

  2. La section détail est :
    a. Triée par défaut par ordre alphabétique
    b. Non triée par défaut ***
    c. Impossible à trier

  3. Je désire créer un état basé sur T_Celebrite, groupé par Prenom
    a. Je demande Affichage/Trier et grouper, je choisis Prenom, et En-tête de groupe : Oui
    b. Je pourrais répondre : "a." mais en fait, c'est un peu idiot dans notre cas de vouloir grouper par prénom, ils sont presque tous différents ***

  4. Afin d'avoir une liste alphabétiquement triée par nom, sans groupe, je :
    a. Crée malgré tout un groupe avec Affichage/Trier et grouper, Trié par ordre croissant, mais : "En-tête de groupe" : Je laisse à Non
    b. Crée une requête qui va, elle, trier par nom, et je baserai ensuite mon état sur cette requête spécifique
    c. Peux choisir la réponse "a." ou "b.", les deux fonctionnent ***
    d. Jette mon ordinateur par la fenêtre, et je me lance dans la plongée sous-marine, car j'en ai assez de lire des choix de réponses aussi ineptes

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.

Exercice

L'exercice consiste à créer cet état (groupe sur le pays, avec un en-tête d'état), dont voici le début de la première page:

Constatez que les gens sont triés par ordre alphabétique au sein de chaque pays. Enregistrez-le sous E_CelebriteGroupePays. Ne tenez pas en compte le fait que Belgique ne soit pas souligné. C'est une erreur d'affichage lié à l'écran plutôt qu'à Access, mais, par contre, constatez l'espace entre chaque groupe de pays.

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