====== Compte rendu **Mission n°3**====== ===== Formulaire d'ajout d'un entraineur ===== ==== Aspect graphique ==== {{:ppe2.1:equipe3:formajout.jpg?300|}} Formulaire réalisé selon la charte graphique. ==== Aspect programmation ==== === Bouton "Fermer": === Private Sub Cmd_Fermer_Click() DoCmd.Close End Sub === Bouton "Ajouter": === Private Sub Cmd_Ajouter_Click() Dim bdKata As Database Dim rsEntrai, rsmax As Recordset Set bdKata = CurrentDb() Set rsEntrai = bdKata.OpenRecordset("ENTRAINEUR", DB_OPEN_DYNASET) Set rsmax = bdKata.OpenRecordset("select max(NUM_ENTRAINEUR)as entmax from ENTRAINEUR", DB_OPEN_DYNASET) Déclaration des variables et création de la requête. If IsNull(Txt_Nom) Then MsgBox "Saisir un nom", vbExclamation, "Gestion Entraineur" Txt_Nom.SetFocus Exit Sub End If If Len(Txt_Nom) < 2 Then MsgBox "Il faut au moins 2 caractères", vbExclamation, "Gestion Entraineur" Txt_Nom.SetFocus Exit Sub End If If IsNull(Txt_Prenom) Then MsgBox "Saisir un prénom", vbExclamation, "Gestion Entraineur" Txt_Prenom.SetFocus Exit Sub End If If Len(Txt_Prenom) < 2 Then MsgBox "Il faut au moins 2 caractères", vbExclamation, "Gestion Entraineur" Txt_Prenom.SetFocus Exit Sub End If If IsNull(lst_Club) Then MsgBox "Choisir un club", vbExclamation, "Gestion Entraineur" lst_Club.SetFocus Exit Sub End If Tests de validité des données entrées dans le formulaire. rsEntrai.AddNew rsEntrai!NOM_ENTRAINEUR = Txt_Nom rsEntrai!PRENOM_ENTRAINEUR = Txt_Prenom rsEntrai!NUM_CLUB = lst_Club rsEntrai!NUM_ENTRAINEUR = rsmax!entmax + 1 rsEntrai.Update MsgBox ("Entraineur ajouté avec succès.") Txt_Nom = "": Txt_Prenom = "": lst_Club = "": End Sub Remplissage de la base avec les données du formulaire et remise à zéro des champs du formulaires. ===== Formulaire de modification/suppression d'un entraineur ===== ==== Aspect graphique ==== {{:ppe2.1:equipe3:sans_titre1.png?300|}} Formulaire réalisé selon la charte graphique. ==== Aspect programmation ==== === Bouton "Modifier": === Private Sub Cmd_Modifier_Click() Dim bdKata As Database Dim rsEntrai As Recordset Dim rqt As String rqt = "select * from ENTRAINEUR where NUM_ENTRAINEUR =" & lst_Entraineur Set bdKata = CurrentDb() Set rsEntrai = bdKata.OpenRecordset(rqt, DB_OPEN_DYNASET) Déclaration des variables et création de la requête. If IsNull(Txt_Nom) Then MsgBox "Saisir un nom", vbExclamation, "Gestion Entraineur" Txt_Nom.SetFocus Exit Sub End If If Len(Txt_Nom) < 2 Then MsgBox "Il faut au moins 2 caractères", vbExclamation, "Gestion Entraineur" Txt_Nom.SetFocus Exit Sub End If If IsNull(Txt_Prenom) Then MsgBox "Saisir un prénom", vbExclamation, "Gestion Entraineur" Txt_Prenom.SetFocus Exit Sub End If If Len(Txt_Prenom) < 2 Then MsgBox "Il faut au moins 2 caractères", vbExclamation, "Gestion Entraineur" Txt_Prenom.SetFocus Exit Sub End If If IsNull(lst_Club) Then MsgBox "Choisir un club", vbExclamation, "Gestion Entraineur" lst_Club.SetFocus Exit Sub End If Tests de validité des données entrées dans le formulaire. rsEntrai.Edit rsEntrai!NOM_ENTRAINEUR = Txt_Nom rsEntrai!PRENOM_ENTRAINEUR = Txt_Prenom rsEntrai!NUM_CLUB = lst_Club rsEntrai.Update MsgBox ("L'entraineur a été modifié avec succès.") Txt_Nom = "": Txt_Prenom = "": lst_Club = "": lst_Entraineur = "": End Sub Modification des données dans la base de donnée et remise à zéro des champs du formulaire. === Bouton "Supprimer": === Private Sub Cmd_Supprimer_Click() Dim bdKata As Database Dim rsEntrai As Recordset Dim rsJuge As Recordset Dim rsNote As Recordset Dim rqt As String Dim rqt1 As String Dim rqt2 As String Set bdKata = CurrentDb() Déclaration des variables. rqt1 = "select NUM_ENTRAINEUR from JUGE where NUM_ENTRAINEUR =" & lst_Entraineur Set rsJuge = bdKata.OpenRecordset(rqt1, DB_OPEN_DYNASET) If Not rsJuge.EOF() Then MsgBox ("L'enregistrement ne peut pas être supprimé car il est en lien avec un juge dans la table JUGE"), vbExclamation, "JUGE" lst_Entraineur.SetFocus Exit Sub End If rqt2 = "select NUM_ENTRAINEUR from [NOTE] where NUM_ENTRAINEUR =" & lst_Entraineur Set rsNote = bdKata.OpenRecordset(rqt2, DB_OPEN_DYNASET) If Not rsNote.EOF() Then MsgBox ("L'enregistrement ne peut pas être supprimé car il est en lien avec une note dans la table NOTE"), vbExclamation, "NOTE" lst_Entraineur.SetFocus Exit Sub End If Tests d'autorisation de suppression par rapport aux autres tables. rqt = "select * from ENTRAINEUR where NUM_ENTRAINEUR =" & lst_Entraineur Set rsEntrai = bdKata.OpenRecordset(rqt, DB_OPEN_DYNASET) rsEntrai.Delete MsgBox ("L'entraineur à été supprimé avec succès.") Txt_Nom = "": Txt_Prenom = "": lst_Club = "": End Sub Suppression et remise à zéro des champs du formulaire. ===== Formulaire de création d'un jury ===== ==== Aspect graphique ==== === Aspect de la charte graphique === {{:ppe2.1:equipe3:aidejury.png?300|}} === Aspect du formulaire de création du jury === {{:ppe2.1:equipe3:ajouterjury.png?300|}} === Aspect du formulaire de modification du jury === {{:ppe2.1:equipe3:modifjury.png?300|}} ==== Aspect programmation ==== === Aspect du code du formulaire de création du jury === === Bouton ajouter=== Voici le code qui permet, lorsque l'on clique sur le bouton ajouter, de créer un nouveau jury. Dim bdKara As Database Dim rsKara As Recordset Set bdKara = CurrentDb() Set rsKara = bdKara.OpenRecordset("JUGE", DB_OPEN_DYNASET) If IsNull(lst_entraineur) Then MsgBox "Saisir un nom", vbExclamation, "Gestion Entraineur" lst_entraineur.SetFocus Exit Sub End If If IsNull(lst_compétition) Then MsgBox "Saisir une compétition", vbExclamation, "Gestion Compétition" lst_compétition.SetFocus Exit Sub End If Dim cMembre As DAO.Recordset Dim sql sql = "select NUM_COMPETITION, NUM_ENTRAINEUR, NUM_JURY from JUGE where NUM_COMPETITION=" & lst_compétition & " AND NUM_ENTRAINEUR=" & lst_entraineur Set cMembre = CurrentDb().OpenRecordset(sql) If cMembre.EOF() = False Then MsgBox "L'entraineur fait déjà partie de cette compétition", vbCritical, "Gestion Membre" lst_compétition.SetFocus Exit Sub End If rsKara.AddNew rsKara!NUM_COMPETITION = lst_compétition rsKara!NUM_ENTRAINEUR = lst_entraineur rsKara!NUM_JURY = txt_numérojury rsKara.Update MsgBox ("Jury créé avec succès !") End Sub === Bouton fermer=== Ce bouton permet de fermer le formulaire, en voici le code: Private Sub Cmd_Fermer_Click() DoCmd.Close End Sub === liste des compétitions=== Ce code permet, lorsque l'on choisit un numéro de compétition, d'afficher les entraîneurs affectés à celle-ci. Private Sub lst_entraineur_Change() Dim bdKara As Database Dim rsMax As Recordset Dim req As String Set bdKara = CurrentDb() req = "SELECT Max(JUGE.NUM_JURY) AS jurymax FROM JUGE WHERE NUM_COMPETITION= " & lst_compétition MsgBox (req) Set rsMax = bdKara.OpenRecordset(req, DB_OPEN_DYNASET) txt_numérojury = rsMax!jurymax + 1 End Sub === Aspect du code formulaire de modification du jury === === liste des arbitres et bouton supprimer=== Ce code permet la suppression d'un membre du jury, en sélectionnant l'arbitre dans la liste, cela permet d'afficher les informations le concernant. Private Sub listeJury_Click() Dim bdKara As Database Dim rsKara As Recordset Dim requete As String '0:num_competitin 1:date 2:jury 3:num entraineur 4:nom ent rowc = listeJury.ListIndex + 1 'num_comp = listeJury.Column(0, rowc) textEntraineur = listeJury.Column(4, rowc) 'va chercher les données directement dans la liste texteNumComp = listeJury.Column(0, rowc) texteNumJury = listeJury.Column(2, rowc) End Sub Le code suivant permet de supprimer l'arbitre sélectionné en cliquant sur le bouton "supprimer". Private Sub cmdSupprimer_Click() Dim dbKara As Database Dim rsJury As Recordset Dim requete1 As String Set dbKara = CurrentDb() 'rowc = listeJury.ListIndex + 1 NUM_ENTRAINEUR = listeJury.Column(3, rowc) requete1 = "select * from juge where num_competition=" & texteNumComp & " and num_entraineur=" & NUM_ENTRAINEUR Set rsJury = dbKara.OpenRecordset(requete1, DB_OPEN_DYNASET) rsJury.Delete MsgBox ("Juge supprimé avec succès !") 'supprime les champs textEntraineur = "": texteNumJury = "": texteNumComp = "": listeJury = "": listeJury.Requery End Sub