/** * Fonction privée pour sauvegarder sous-famille à partir les champs de l'interface */ private void SaveSousFamille() { //Reference de sous-famille String RefSF = referenceSousTextBox.Text; //Nom de sous-famille String Nom = nomSousTextBox.Text; //Indice de la famille selectionnée int fIndex = familleComboBox.SelectedIndex; //L'utilisateur doit fournir le reference, nom et la famille if (fIndex > -1 && !RefSF.Equals("") && !Nom.Equals("")) { try { int RefSousFamille = int.Parse(RefSF); //converte string à int int RefFamille = familleList[fIndex].Ref_Famille; // reference de la famille selectionnée //Reconstruction de sous-famille SousFamille sousFamille = new SousFamille(RefSousFamille, RefFamille, Nom); if (toUpdate) { //Modification de sous-famille SousFamille.UpdateSousFamille(databaseFileName, sousFamille); MessageBox.Show("The sous-famille was updated.", "Sous-Famille info", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { SousFamille Sous_Fam = SousFamille.FindSousFamille(databaseFileName, RefSousFamille); if (Sous_Fam != null) { //Message de l'exception pour notifier l'utilisateur MessageBox.Show("This reference is already present", "Famille error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } //Insertion de sous-famille SousFamille.InsertSousFamille(databaseFileName, sousFamille); MessageBox.Show("The sous-famille was added.", "Sous-Famille info", MessageBoxButtons.OK, MessageBoxIcon.Information); } //Ferme la fenetre Dispose(); } catch (FormatException e) { //Message de l'exception pour notifier l'utilisateur MessageBox.Show(e.Message, "Sous-Famille error", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { //Message de remplir pour l'utilisateur MessageBox.Show("Please fill all the required fields...", "Sous-Famille error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
/** * Fonction privée pour gérer le sous-famille dans le noeud */ private SousFamille HandleSousFamille(XmlNode node, Famille famille) { //Npm de sous-famille String sousFamilleNom = node.ChildNodes[4].InnerText; //Recherche si le sous-famille est déjà dans la base de données SousFamille sousFamille = SousFamille.FindSousFamilleByNom(databaseFileName, sousFamilleNom); if (sousFamille == null) { //Insertion de sous-famille int Count = SousFamille.GetSize(databaseFileName); sousFamille = new SousFamille(Count, famille.Ref_Famille, sousFamilleNom); SousFamille.InsertSousFamille(databaseFileName, sousFamille); //Affiche d'un message de notification RegisterMessage("Sous-Famille : " + sousFamilleNom + " is added."); } return(sousFamille); }