Bonjour à tous, j'ai besoin d'un coup de pouce pour trouver une solution à mon problème actuel qui est le suivant.
#region BOUTON NOUVEAU private void Click_Nouveau(object sender, EventArgs e) { #region NOUVEAU if (this.btnNouveau.Text == "&Nouveau") { Defaut(); Montrer_btn(true); this.txtDoublant.Text = "N"; this.txtEcoleExClasse.Text = ""; this.txtCodeEleve.Text = ""; this.txtCodeEnseignant.Text = " "; this.txtCodeEnseignant.SelectAll(); this.txtCodeEnseignant.Focus(); this.txtCodeLieu.Text = ""; this.txtCodeSexe.Text = ""; this.txtCodeNationalite.Text = ""; this.txtCodeStatut.Text = ""; this.txtAffectation.Text = ""; this.txtCodeClasse.Text = ""; this.txtCodeAnneeScolaire.Text = ""; this.txtCodeDiplome.Text = ""; this.txtCodeEcole.Text = ""; this.txtCodeExClasse.Text = ""; this.txtCodeExAnnee.Text = ""; this.lblTotal.Visible = false; this.cboExClasse.Enabled = false; this.cboRedoublant.Text = ""; this.btnNouveau.Text = "&Sauver"; this.btnNouveau.BackColor = Color.Green; this.btnAnnuler.Text = "&Annuler"; this.btnAnnuler.BackColor = Color.Green; this.btnModifier.Enabled = false; this.btnSupprimer.Enabled = false; this.btnPrecedent.Enabled = false; this.btnSuivant.Enabled = false; this.btnPremier.Enabled = false; this.btnDernier.Enabled = false; this.lblPosition.Text = "00/00"; this.AcceptButton = this.btnNouveau; this.dgvEleves.Visible = false; } #endregion #region SAUVER else { System.Data.OleDb.OleDbConnection Cnx = new System.Data.OleDb.OleDbConnection(); Cnx.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data source=" + Application.StartupPath + @"\GestionNotesScolaires.mdb;Jet OLEDB:Database Password=guehi_1964"; if ((this.txtCodeEnseignant.Text == "") || (this.txtCodeEnseignant.Text == " ")) { MessageBox.Show("Le Code du Personnel\n est obligatoire", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.txtCodeEnseignant.Text = " "; this.txtCodeEnseignant.Focus(); this.txtCodeEnseignant.SelectAll(); } else { if ((this.txtCodeEleve.Text == "") || (this.txtCodeEleve.Text == " ")) { MessageBox.Show("Le Matricule de l'Elève\n est obligatoire", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.txtCodeEleve.Text = " "; this.txtCodeEleve.Focus(); this.txtCodeEleve.SelectAll(); } else { if (string.IsNullOrEmpty(this.txtNomEleve.Text))// == "") { MessageBox.Show("Veuillez Saisir\nle Nom de l'Elève svp", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.txtNomEleve.Focus(); } else { if (string.IsNullOrEmpty(this.txtPrenomEleve.Text))//=="") { MessageBox.Show("Veuillez Saisir\nle Prénom de l'Elève svp", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.txtPrenomEleve.Focus(); } else { if (this.txtCodeLieu.Text == "") { MessageBox.Show("Veuillez choisir le Lieu de Naissance\ndans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboLieuNaissance.Text = "-----Select-----"; this.cboLieuNaissance.Focus(); this.cboLieuNaissance.SelectAll(); } else { if (this.txtCodeSexe.Text == "") { MessageBox.Show("Veuillez choisir le Sexe\nde l'Elève dans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboSexe.Text = "-----Select-----"; this.cboSexe.Focus(); this.cboSexe.SelectAll(); } else { if (this.txtCodeNationalite.Text == "") { MessageBox.Show("Veuillez choisir la Nationalité\ndans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboNationalite.Text = "-----Select-----"; this.cboNationalite.Focus(); this.cboNationalite.SelectAll(); } else { if (this.txtCodeStatut.Text == "") { MessageBox.Show("Veuillez choisir le Statut de\nl'Elève dans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboStatut.Text = "-----Select-----"; this.cboStatut.Focus(); this.cboStatut.SelectAll(); } else { if (this.txtCodeAffectation.Text == "") { MessageBox.Show("Veuillez choisir le N° de la Décision\nd'Affectation dans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboDecision.Text = "-----Select-----"; this.cboDecision.Focus(); this.cboDecision.SelectAll(); } else { if (this.txtCodeClasse.Text == "") { MessageBox.Show("Veuillez choisir\nla Classe Actuelle\ndans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboClasse.Text = "--Select--"; this.cboClasse.Focus(); this.cboClasse.SelectAll(); } else { if (this.txtCodeAnneeScolaire.Text == "") { MessageBox.Show("Veuillez choisir l'Année Scolaire\ndans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboAnneeScolaire.Text = "-Select-"; this.cboAnneeScolaire.Focus(); this.cboAnneeScolaire.SelectAll(); } else { if (this.cboRedoublant.Text == "") { MessageBox.Show("Veuillez indiquer si l'Elève\nRedouble ou non", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboRedoublant.Text = "-----Select-----"; this.cboRedoublant.Focus(); this.cboRedoublant.SelectAll(); } else { if (this.txtCodeRegime.Text == "") { MessageBox.Show("Veuillez indiquer si l'Elève\nest Boursier ou non", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboRegime.Text = "-----Select-----"; this.cboRegime.Focus(); this.cboRegime.SelectAll(); } else { if (this.txtCodeEcole.Text == "") { MessageBox.Show("Veuillez choisir l'Ecole d'Origine\ndans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboEcole.Text = "------Select------"; this.cboEcole.Focus(); this.cboEcole.SelectAll(); } else { if (this.txtCodeExClasse.Text == "") { MessageBox.Show("Veuillez choisir la Classe d'Origine\ndans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboExClasse.Text = "--Select--"; this.cboExClasse.Focus(); this.cboExClasse.SelectAll(); } else { if (this.txtCodeExAnnee.Text == "") { MessageBox.Show("Veuillez choisir l'Année Scolaire\ndans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboExAnnee.Text = "--Select--"; this.cboExAnnee.Focus(); this.cboExAnnee.SelectAll(); } else { if (this.txtCodeDiplome.Text == "") { MessageBox.Show("Veuillez choisir le Diplôme\ndans la liste déroulante", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.cboDiplome.Text = "-----Select-----"; this.cboDiplome.Focus(); this.cboDiplome.SelectAll(); } else { if (this.pbxPhoto.Image == null) { MessageBox.Show("Veuillez Ajouter la photo de l'Elève", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { //Declaration d'une boite de dialogue "YesNo" //Si l'utilisateur confirme l'Enregistrement on exécute la requette if (MessageBox.Show("Êtes-vous sûr de vouloir Ajouter" + "\n" + "un nouvel enregistrement?", this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { if (float.TryParse(this.txtMoyenne.Text, out temp)) { if ((temp < 0) || (temp > 20)) { MessageBox.Show("La Moyenne doit être \ncomprise entre 00 et 20", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); this.txtMoyenne.Text = " "; this.txtMoyenne.SelectAll(); this.txtMoyenne.Focus(); } else { try { // Tableau d'octets representant l'image au format jpeg MemoryStream mstPhoto = new MemoryStream(); pbxPhoto.Image.Save(mstPhoto, System.Drawing.Imaging.ImageFormat.Jpeg); bytPhoto = mstPhoto.GetBuffer(); Cnx.Open(); System.Data.OleDb.OleDbDataReader DtR; String Sqlqueries = "SELECT * FROM [Eleves] where code_eleve=@p5;"; System.Data.OleDb.OleDbCommand Cmde = new System.Data.OleDb.OleDbCommand(Sqlqueries, Cnx); Cmde.Parameters.Add(new OleDbParameter("p5", System.Data.OleDb.OleDbType.VarWChar, 50, ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, this.txtCodeEleve.Text)); DtR = Cmde.ExecuteReader(); if (DtR.Read() != true) { //Majuscule(); // Connexion à la base de données OleDbConnection Conex = new OleDbConnection(strConex); //Préparation des paramètres OleDbParameter Param_CodeElv = new OleDbParameter("@CodeElv", OleDbType.VarWChar, 50); //0 OleDbParameter Param_NomElv = new OleDbParameter("@NomElv", OleDbType.VarWChar, 50); //1 OleDbParameter Param_PrenomElv = new OleDbParameter("@PrenomElv", OleDbType.VarWChar, 50); //2 OleDbParameter Param_Sexe = new OleDbParameter("@Sexe", OleDbType.Integer, 7);//3 OleDbParameter Param_DateNaiss = new OleDbParameter("@DateNaiss", OleDbType.Date, 8);//4 OleDbParameter Param_CodeLieu = new OleDbParameter("@CodeLieu", OleDbType.Integer, 7);//5 OleDbParameter Param_CodeNat = new OleDbParameter("@CodeNat", OleDbType.Integer, 7);//6 OleDbParameter Param_Pere = new OleDbParameter("@NomPere", OleDbType.VarWChar, 50);//7 OleDbParameter Param_Mere = new OleDbParameter("@NomMere", OleDbType.VarWChar, 50);//8 OleDbParameter Param_DateOps = new OleDbParameter("@DateOps", OleDbType.Date, 8);//9 OleDbParameter Param_Ecole = new OleDbParameter("@Ecole", OleDbType.Integer, 7);//10 OleDbParameter Param_Classe = new OleDbParameter("@Classe", OleDbType.Integer, 7);//11 OleDbParameter Param_Annee = new OleDbParameter("@Annee", OleDbType.Integer, 7);//12 OleDbParameter Param_CodeDip = new OleDbParameter("@CodeDip", OleDbType.Integer, 7);//13 OleDbParameter Param_Statut = new OleDbParameter("@Statut", OleDbType.Integer, 7);//14 OleDbParameter Param_Affect = new OleDbParameter("@Affect", OleDbType.Integer, 7);//15 OleDbParameter Param_Photo = new OleDbParameter("@Photo", OleDbType.VarBinary); //16 OleDbParameter Param_CodeEns = new OleDbParameter("@CodeEns", OleDbType.VarWChar, 50); //17 OleDbParameter Param_Transf = new OleDbParameter("@Transf", OleDbType.VarWChar, 50);//18 Param_CodeElv.Value = this.txtMatricule.Text; //0 Param_NomElv.Value = this.txtNomEleve.Text; //1 Param_PrenomElv.Value = this.txtPrenomEleve.Text; //2 Param_Sexe.Value = this.txtCodeSexe.Text; //3 Param_DateNaiss.Value = this.txtDateNaissance.Text; //4 Param_CodeLieu.Value = this.txtCodeLieu.Text; //5 Param_CodeNat.Value = this.txtCodeNationalite.Text; //6 Param_Pere.Value = this.txtNomPere.Text; //7 Param_Mere.Value = this.txtNomMere.Text;// 8 Param_DateOps.Value = this.txtDateInscription.Text; //9 Param_Ecole.Value = this.txtCodeEcole.Text;//10 Param_Classe.Value = this.txtCodeExClasse.Text;//11 Param_Annee.Value = this.txtCodeExAnnee.Text;//12 Param_CodeDip.Value = this.txtCodeDiplome.Text; //13 Param_Statut.Value = this.txtCodeStatut.Text;//14 Param_Affect.Value = this.txtCodeAffectation.Text;//15 Param_Photo.Value = this.bytPhoto; //16 Param_CodeEns.Value = this.txtCodeEnseignant.Text; //17 Param_Transf.Value = this.txtTransfert.Text;//18 string sInsertionSQL = string.Format("INSERT INTO Eleves([code_eleve], [nom_eleve], [prenom_eleve]," + "\n" + "[code_civilite], [date_naissance], [code_lieu], [code_nationalite], [nom_pere]," + "\n" + "[nom_mere], [date_inscription], [code_ecole], [code_classe], [code_annee], [code_diplome]," + "\n" + "[code_statut], [code_affectation], [photo_eleve], [code_personnel], [num_transfert])" + "\n" + "VALUES ({0},{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11},{12},{13},{14},{15},{16},{17},{18})", Param_CodeElv.ParameterName, //0 Param_NomElv.ParameterName, //1 Param_PrenomElv.ParameterName, //2 Param_Sexe.ParameterName,//3 Param_DateNaiss.ParameterName, //4 Param_CodeLieu.ParameterName, //5 Param_CodeNat.ParameterName, //6 Param_Pere.ParameterName, //7 Param_Mere.ParameterName,// 8 Param_DateOps.ParameterName, //9 Param_Ecole.ParameterName,//10 Param_Classe.ParameterName,//11 Param_Annee.ParameterName,//12 Param_CodeDip.ParameterName,//13 Param_Statut.ParameterName,//14 Param_Affect.ParameterName,//15 Param_Photo.ParameterName,//16 Param_CodeEns.ParameterName,//17 Param_Transf.ParameterName);//18 OleDbCommand Comd = new OleDbCommand(sInsertionSQL.ToString(), Conex); Comd.Parameters.Add(Param_CodeElv);//0 Comd.Parameters.Add(Param_NomElv);//1 Comd.Parameters.Add(Param_PrenomElv);//2 Comd.Parameters.Add(Param_Sexe);//3 Comd.Parameters.Add(Param_DateNaiss);//4 Comd.Parameters.Add(Param_CodeLieu);//5 Comd.Parameters.Add(Param_CodeNat);//6 Comd.Parameters.Add(Param_Pere);//7 Comd.Parameters.Add(Param_Mere);//8 Comd.Parameters.Add(Param_DateOps);//9 Comd.Parameters.Add(Param_Ecole);//10 Comd.Parameters.Add(Param_Classe);//11 Comd.Parameters.Add(Param_Annee);//12 Comd.Parameters.Add(Param_CodeDip);//13 Comd.Parameters.Add(Param_Statut);//14 Comd.Parameters.Add(Param_Affect);//15 Comd.Parameters.Add(Param_Photo);//16 Comd.Parameters.Add(Param_CodeEns);//17 Comd.Parameters.Add(Param_Transf);//18 Conex.Open(); Comd.ExecuteNonQuery(); MAJ_Reinscription(); Conex.Close(); Defaut_Ajout(); Montrer_btn(true); this.txtEcoleExClasse.Text = ""; this.txtCodeEleve.Text = " "; this.txtCodeEleve.Focus(); this.txtCodeEleve.SelectAll(); this.txtCodeLieu.Text = ""; this.txtCodeSexe.Text = ""; this.txtCodeNationalite.Text = ""; this.txtCodeStatut.Text = ""; this.txtAffectation.Text = ""; this.txtCodeClasse.Text = ""; this.txtCodeAnneeScolaire.Text = ""; this.txtCodeDiplome.Text = ""; this.txtCodeEcole.Text = ""; this.txtCodeExClasse.Text = ""; this.txtCodeExAnnee.Text = ""; this.txtCodeRegime.Text = ""; this.lblTotal.Visible = false; this.cboExClasse.Enabled = false; this.btnAnnuler.Enabled = true; this.btnAnnuler.Text = "&Annuler"; this.btnAnnuler.BackColor = Color.Green; this.btnNouveau.Text = "&Sauver"; this.btnNouveau.BackColor = Color.Green; this.dgvEleves.Visible = false; } else { MessageBox.Show("Cet Elève est déjà\nEnregistré dans\nla Base de Donnéees", "Enregistrement", MessageBoxButtons.OK, MessageBoxIcon.Information); Defaut(); this.txtCodeEleve.Focus(); this.txtCodeEleve.SelectAll(); } DtR.Close(); Cnx.Close(); } catch (FileNotFoundException ex) { MessageBox.Show(ex.Message, "Erreur", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } else { MessageBox.Show("Vous n'avez pas entré un nombre", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Exclamation); this.txtMoyenne.Text = " "; this.txtMoyenne.SelectAll(); this.txtMoyenne.Focus(); } } } } } } } } } } } } } } } } } } } } } #endregion } #endregion
Lorsque je cherche à vérifier le bon fonctionnement en essayant d'enregistrer deux fois le même élève, l'erreur n'est pas interceptée par l'application mais le programme se plante me demandant de les règle intégrité dans ma base de données. J'ai besoin de votre aide. Merci
Afficher la suite