802.4 Les sous-formulaires
a. Un exemple simple
Nous allons créer un formulaire basé sur la table tb_etudiant qui affiche simultanément la liste des étudiants et la liste des notes.
La liste des notes se trouvera dans le sous-formulaire mais les deux formulaires seront liés par la relation entre les deux tables par l'attribut id_et.
Les notes seront donc filtrées selon l'étudiant sélectionné
Impossible d'accéder à la ressource audio ou vidéo à l'adresse :
La ressource n'est plus disponible ou vous n'êtes pas autorisé à y accéder. Veuillez vérifier votre accès puis recharger le média.
Créer un formulaire à l'aide de l'assistant
1 | Sélection de champ | Tous les attributs de la table tb_etudiant |
2 | Paramétrer un sous-formulaire | Ajouter un sous-formulaire basé sur une relation existante : la relation avec la table tb_note est la seule disponible |
3 | Ajouter des champs au sous-formulaire | Tous les champs de la table tb_note |
4 | Obtenir des champs joints | Cette étape n'apparaît pas car le champ joint pour le formulaire et le sous-formulaire est obligatoirement l'attribut |
5-6-7-8 | On peut laisser les propositions par défaut |
Remarque : Exécution
Lorsque l'on sélectionne un étudiant, on voit bien que seules les notes de l'identifiant sélectionné sont affichées dans le sous-formulaire
Amélioration du formulaire
On manipule les colonnes via leur menu contextuel (clic droit sur le colonne)
1. Masquer les colonnes indésirables
2. Dans le sous-formulaire des notes, insérez une colonne avec un contrôle de type Zone de liste
.
3. La colonne est nommée par défaut Zone de liste 1 (Clic droit option colonne pour accéder à ses propriétés)
4. Modifiez les propriétés comme dans la fiche 5c : vous avez construit le même contrôle Zone de liste
pour sélectionner la matière
Simulation : Afficher les moyennes et les notes
Vous avez déjà construit une requête qui calcule la moyenne pour chaque étudiant
Construisez une requête basée sur la table tb_note qui affiche la matière en clair (rq_802_4b******)
Construisez une formulaire (frm_802_4c) basé sur la requête rq_802_4b qui affiche en sous-formulaire les données de la requête.
Le résultat à atteindre est présenté ci-dessous
