Cours ACCESS création d’un état avec plusieurs tables, tutoriel & guide de travaux pratiques ACCESS en pdf.
Création d’un état avec plusieurs tables
Jusqu’à présent, nos états n’affichaient que le contenu d’une table, nous allons créer un état qui va afficher la liste des clients, avec, pour chaque client, la liste des commandes qu’il a passé.
Attention, pour que ceci fonctionne, vous devez avoir crée correctement les relations entre les tables, sinon, Access risque de se perdre…
Comme avant, on crée un état grâce à l’assistant :
La différence est qu’ici, on va chercher des données appartenant à deux tables : Nclient, Nom et Ville proviennent de la table « Clients », N° Commande, Commande réglée et Vendeur proviennent de la table « Commandes ».
Et là, on voit que si on a bien fait les relations entre les tables, Access est intelligent, il a vu qu’à un client peut correspondre plusieurs commandes, il nous propose donc de générer un état qui va soit afficher tous les clients, avec, pour chaque client les commandes correspondantes, ou toutes les commandes, avec, pour chaque commande, le client qui l’a passé.
Ce qui nous intéresse n’est pas d’avoir la liste des commandes, car un client peut avoir passé plusieurs commandes, on retrouvera donc son nom plusieurs fois dans l’état, on va donc regrouper par client.
On peut ajouter ici un nouveau niveau de regroupement, je veux par exemple, pour chaque client la liste des commandes, mais en plus, je veux avoir cette liste groupée par vendeur.
Ici, on va indiquer comment va se faire le tri, on va trier sur le Date (pourquoi pas), on aura donc un état qui va afficher pour chaque client, les commandes qu’il a passé, triées par date et regroupées par vendeur.
On choisit ensuite la présentation et on donne un nom à l’état et Access génére :
Comme on peut le constater, on a ici le client, suivi de la liste de ses commandes, regroupées par Vendeur.
Modifier la structure d’un état
A présent, nous allons modifier l’état, nous allons ajouter, pour chaque client, une ligne qui va indiquer combien il a passé de commandes :
On clique sur l’état que l’on vient de créer et sur le bouton « Modifier » dans la fenêtre principale d’Access :
Comme on peut le constater, il y a plusieurs parties dans un état :
?? L’en-tete de l’état : c’est ce qui va être imprimé au début de l’état, ce ne sera imprimé qu’une seule fois.
?? L’en-tete de page : c’est ce qui sera imprimé au début de chaque page (un titre par exemple).
?? L’en-tete de groupe : c’est ce qui va être imprimé au début de chaque groupe, ici l’état est groupé par client, en en-tête du groupe client, on va donc imprimer les informations sur le client, il y a un sous-groupe dans le groupe client, c’est le groupe « Vendeur », on va donc imprimer dans l’en-tete de ce sous groupe les informations sur les vendeurs.
?? Le détail : c’est ici que vont être imprimées chaque ligne de l’état, en l’occurrence ici les commandes
?? Le pied de page : c’est ce qui sera imprimé en bas de chaque page (souvent la date et la numérotation des pages)
?? Le pied d’état : c’est ce qui sera imprimé une seule fois à la fin de l’état.
A chaque en-tête peut correspondre un pied, ici les pieds pour les groupes Clients et Vendeur ne sont pas affichés, mais si ils l’étaient, à la fin de chaque groupement, le contenu du pied de groupe s’imprimerait, par exemple, après chaque client, avant d’imprimer l’en-tete pour le client suivant, Access imprimerait le pied pour le client, idem pour le groupe vendeur, avant d’imprimer l’en-tete du prochain vendeur, Access imprimerait le pied du groupe vendeur.
L’impression se fait ainsi :
En tête de l’état
En tête de page
En tête de groupe (client 1)
En tête de groupe (Vendeur 1)
Détail (commandes)
Pied de groupe (Fin du vendeur 1)
En tête de groupe (Vendeur 2)
Détail (commandes)
Pied de groupe (Fin du vendeur 2)
Pied de groupe (Fin du Client 1)
En tête de groupe (client 2)……
Pied de groupe (Fin du Client 2)
Pied de Page
Pied d’état
On va afficher le nombre de commandes passées dans le pied du groupe client, ce qui est logique : à la fin d’un client, on affiche le nombre de commandes qu’il a passé :
Le pied du groupe client n’existe pas, il va falloir l’afficher, pour cela on clique sur l’icône :
Access affiche alors :
Qu’avons-nous dans cette fenêtre ?
En haut, la liste des champs sur lesquelles sont groupées ou triées les informations dans l’état, lorsque les informations sont groupées sur un champ, le nom de ce champ est précédé d’un icône (ici l’état est groupés sur les champs Nclient et Vendeur), lorsque le champ est uniquement utilisé pour trier l’état, il n’est précédé d’aucun icône (le champ Date de Commande sert uniquement au tri, il n’a pas d’icône). On peut, dans cette fenetre, ajouter un nouveau critère de tri ou un nouveau groupe.
Dans la partie infèrieure se trouvent les propriétés de chaque champ. Pour le champ Nclient, on peut voir que, entres autres, la propriété « Pied de groupe » est à « Non », ce qui signifie qu’il n’y aura pas de pied de groupe pour ce groupe là, nous voulons qu’il y en ai un pour que nous puissions imprimer dans ce pied le nombre de commandes passées pour ce client. Nous choisissons « Oui ».
1. Création d’un état
2. Création d’un état Instantané Colonnes
3. Création d’un état Instantané Tableau
4. Création d’un état avec plusieurs tables
5. Modifier la structure d’un état
6. Insertion d’un sous-état
………