public void DeleteMarque(Marques Marque) { Query = "DELETE FROM Marques WHERE Nom = '" + Marque.MarqueName + "' ; DELETE FROM Articles WHERE RefMarque = '" + Marque.RefMarque + "'"; SQLiteCommand Command = new SQLiteCommand(Query, Connection); Command.ExecuteNonQuery(); }
public override string FindName <T>(ref T data) { if (data.GetType().Name == "Marques") { Marques marque = (Marques)Convert.ChangeType(data, typeof(Marques)); string nameFound; try { string sql = "SELECT * FROM Marques WHERE nom = '" + marque.marqueName + "'"; SQLiteCommand commande = new SQLiteCommand(sql, database.connection); SQLiteDataReader sQLiteDataReader = commande.ExecuteReader(); if (sQLiteDataReader.HasRows) { sQLiteDataReader.Read(); nameFound = sQLiteDataReader.GetString(0); sQLiteDataReader.Close(); return(nameFound); } }catch (SQLiteException e) { MessageBox.Show("L'erreur suivante a été rencontrée :" + e.Message); Console.WriteLine("L'erreur suivante a été rencontrée :" + e.Message); return(""); } } return(""); }
public void AddMarque(String MarqueName, AddMarque AddMarque) { if (FamillesDao.FindFamilleByFamilleName(MarqueName)) { MessageBox.Show("This name has already been used by a Famille!", "ERROR"); AddMarque.textBox_MarqueName.Text = ""; return; } if (SousFamillesDao.FindSousFamilleBySousFamilleName(MarqueName)) { MessageBox.Show("This name has already been used by a SousFamille!", "ERROR"); AddMarque.textBox_MarqueName.Text = ""; return; } if (MarquesDao.FindMarqueByMarqueName(MarqueName)) { MessageBox.Show("Marque Already exsited!", "ERROR"); AddMarque.textBox_MarqueName.Text = ""; return; } else { Marques Marque = new Marques(MarqueName); Marque.RefMarque = MarquesDao.GetMaxRefMarque() + 1; MarquesDao.AddMarque(Marque); if (MarquesDao.FindMarqueByMarqueName(MarqueName)) { MessageBox.Show("Add Marque succeed!"); AddMarque.Close(); } } }
/// <summary> /// Sauvegarde la marque dans la base (si elle existe déjà, alors elle est mise à jour). /// </summary> /// <param name="Marques">La marque à sauvegarder.</param> public void Save(Marques Marques) { using (var Connection = new SQLiteConnection(CONNECTION_STRING)) { Connection.Open(); using (var Command = new SQLiteCommand(Connection)) { if (Marques.Id == null) { Command.CommandText = "INSERT INTO Marques(Nom) VALUES (@name)"; } else { Command.CommandText = @"UPDATE Marques SET Nom=@name WHERE RefMarque = @refMarque"; Command.Parameters.AddWithValue("@refMarque", Marques.Id); } Command.Parameters.AddWithValue("@name", Marques.Nom); Command.ExecuteNonQuery(); if (Marques.Id == null) { Marques.Id = (int)Connection.LastInsertRowId; } } } }
/// <summary> /// DAO pour récupérer toutes les marques dans la base de donnees /// </summary> /// <returns> la liste de tous les noms </returns> public List <Marques> GetAllMarques() { List <Marques> AllMarques = new List <Marques>(); SQLiteConnection M_dbConnection = new SQLiteConnection("Data Source=" + DatabasePath); M_dbConnection.Open(); String Sql = "select RefMarque, Nom from Marques"; using (SQLiteCommand Command = new SQLiteCommand(Sql, M_dbConnection)) { using (SQLiteDataReader Reader = Command.ExecuteReader()) { while (Reader.Read()) { Marques m = new Marques(Reader.GetInt32(0), Reader.GetString(1)); AllMarques.Add(m); } } } M_dbConnection.Close(); return(AllMarques); }
public void ModifyMarque(Marques Marque) { Query = "UPDATE Marques SET Nom = '" + Marque.MarqueName + "' WHERE RefMarque = '" + Marque.RefMarque + "'"; SQLiteCommand Command = new SQLiteCommand(Query, Connection); Command.ExecuteNonQuery(); }
public void AddMarque(Marques Marque) { Query = "INSERT INTO Marques (Nom) values('" + Marque.MarqueName + "')"; SQLiteCommand Command = new SQLiteCommand(Query, Connection); Command.ExecuteNonQuery(); Marque.RefMarque = GetRefMarque(Marque.MarqueName); }
/// <summary> /// Crée un article avec les valeurs passées en paramètres. /// </summary> /// <param name="RefArticle">Une référence unique (entre 3 et 8 caractères).</param> /// <param name="Description">Une description de l'article (entre 1 et 150 caractères).</param> /// <param name="SubFamily">Une sous-famille.</param> /// <param name="Marque">La marque de l'article.</param> /// <param name="Price">Le prix de l'article (float >= 0).</param> /// <param name="Quantity">Le prix de l'article (float >= 0).</param> public Articles(string RefArticle, string Description, SubFamily SubFamily, Marques Marque, float Price, int Quantity) { this.RefArticle = RefArticle; this.Description = Description; this.SubFamily = SubFamily; this.Marque = Marque; this.Price = Price; this.Quantity = Quantity; }
/// <summary> /// Verify if two marques are same. /// </summary> /// <param name="Marque"></param> /// <param name="NewMarque"></param> /// <returns>True if they are same. Flase if not.</returns> public Boolean CompareMarques(Marques Marque, Marques NewMarque) { if (Marque.MarqueName != NewMarque.MarqueName) { return(false); } else { return(true); } }
/// <summary> /// Recupere tous les articles d'une marque et les affiche dans la ListView /// </summary> /// <param name="Marque"></param> public void LoadArticlesOfMarque(Marques Marque) { List.BeginUpdate(); InitializeColumnArticle(); ArticlesDAO aDAO = new ArticlesDAO(PathBdd); List <Articles> AllArticles = aDAO.GetArticlesOfMarque(Marque.GetRefMarque()); FillListView(AllArticles); List.EndUpdate(); }
private void modificationMarque() { int i = listView.SelectedIndices[0]; Console.WriteLine("Modification de la marque " + listView.Items[i].Text); Marques marque = new Marques(); marque.RefMarque = Convert.ToInt32(listView.Items[i].Text); marque.loadFromDB(); AddOrModifyMarque addMarque = new AddOrModifyMarque(marque); addMarque.ShowDialog(); }
/// <summary> /// Initialise les valeurs des champs de la fenêtre de modification. /// </summary> private void Initialize(string Title) { Text = Title; switch (Type) { case ActiveList.Brand: { // Si l'id a une valeur, on récupère la marque correspondante. if (Id.HasValue) { Brand = DaoRegistry.GetInstance.BrandDao.GetMarqueById(Id.Value); NameBox.Text = Brand.Nom; } break; } case ActiveList.Family: { // Si l'id a une valeur, on récupère la famille correspondante. if (Id.HasValue) { Family = DaoRegistry.GetInstance.FamilyDao.GetFamilleById(Id.Value); NameBox.Text = Family.Name; } break; } case ActiveList.Subfamily: { // On récupère toutes les familles pour les metttre dans la ComboBox des familles. foreach (var AFamily in DaoRegistry.GetInstance.FamilyDao.GetAllFamilles()) { FamillyComboBox.Items.Add(new ComboBoxItem(AFamily.Name, AFamily)); } // Si l'id a une valeur, on récupère la sous-famille correspondante. if (Id.HasValue) { SubFamily = DaoRegistry.GetInstance.SubFamilyDao.GetSousFamilleById(Id.Value); NameBox.Text = SubFamily.Name; FamillyComboBox.Text = SubFamily.Family.Name; } // On affiche la ComboBox des familles. FamillyComboBox.Visible = true; NameLabel.Visible = true; break; } } }
public AddOrModifyMarque(Marques Marque = null) { InitializeComponent(); marque = Marque; if (marque != null) { Text = "Modification d'une marque"; textBoxNom.Text = marque.Nom; } else { Text = "Ajout d'un article"; } }
private void suppressionMarque() { Marques marque = new Marques(); marque.RefMarque = Convert.ToInt32(listView.Items[listView.SelectedIndices[0]].Text); DialogResult dr = MessageBox.Show("Voulez vous supprimer la marque " + marque.RefMarque + " ? ", "Suppression marque", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question); if (dr == DialogResult.Yes) { marque.deleteFromDB(); listView.Items.Remove(listView.Items[listView.SelectedIndices[0]]); listView.Refresh(); } }
/// <summary> /// DAO pour ajouter une marque dans la base de données /// </summary> /// <param name="Marque"> Objet Marque à ajouter </param> public void AjouterMarque(Marques Marque) { //ouverture de la connexion avec la bdd & creation de la requete SQLiteConnection M_dbConnection = new SQLiteConnection("Data Source=" + DatabasePath); M_dbConnection.Open(); String Sql = "insert into marques (Nom) values ('" + Marque.GetNom() + "')"; using (SQLiteCommand Command = new SQLiteCommand(Sql, M_dbConnection)) { //ajout de la marque Command.ExecuteNonQuery(); } //fermeture de la connexion M_dbConnection.Close(); }
public Marques FindMarquesByMarqueName(string MarqueName) { Query = "SELECT * FROM Marques WHERE Nom = '" + MarqueName + "'"; SQLiteCommand Command = new SQLiteCommand(Query, Connection); var Reader = Command.ExecuteReader(); if (Reader.Read()) { var RefMarque = Reader.GetInt32(0); Marques Marque = new Marques(RefMarque, MarqueName); Reader.Close(); return(Marque); } else { return(null); } }
private void ButtonVal_Click(object sender, EventArgs e) { if (CheckValidData()) { if (marque != null) { DialogResult result; result = MessageBox.Show("Etes vous sur de vouloir modifier cette marque ?", "Attention : modification d'une marque existante", MessageBoxButtons.YesNo); if (result == System.Windows.Forms.DialogResult.Yes) { marque.Nom = textBoxNom.Text; marque.updateInDB(); this.DialogResult = DialogResult.OK; this.Close(); } } else { DialogResult result; result = MessageBox.Show("Etes vous sur de vouloir ajouter cette marque ?", "Attention : ajout d'une nouvelle marque", MessageBoxButtons.YesNo); if (result == System.Windows.Forms.DialogResult.Yes) { marque = new Marques(); marque.Nom = textBoxNom.Text; if (Marques.getRefMarqueFromName(marque.Nom) == -1) { marque.saveInDB(); this.DialogResult = DialogResult.OK; this.Close(); } else { MessageBox.Show("Impossible d'ajouter cette marque", "Attention : ajout d'une marque existante"); } } } } else { MessageBox.Show("Veuillez remplir correctement les champs", "Erreur"); } }
/** * Méthod Create * @param obj Marques marque * @return boolean */ public override Boolean CreateDAO <T>(ref T data) { if (data.GetType().Name == "Marques") { Marques marque = (Marques)Convert.ChangeType(data, typeof(Marques)); try { string sql = "insert into marques (refMarque,nom) values (null, '" + marque.marqueName + "')"; SQLiteCommand commande = new SQLiteCommand(sql, database.connection); commande.ExecuteNonQuery(); return(true); }catch (SQLiteException e) { MessageBox.Show("L'erreur suivante a été rencontrée :" + e.Message); Console.WriteLine("L'erreur suivante a été rencontrée :" + e.Message); return(false); } } return(false); }
public List <Marques> FindMarquesBySousFamilleName(string SousFamilleName) { Query = "SELECT * FROM Marques WHERE RefMarque IN (SELECT RefMarque FROM Articles WHERE RefSousFamille = (SELECT RefSousFamille FROM SousFamilles WHERE Nom = '" + SousFamilleName + "'))"; SQLiteCommand Command = new SQLiteCommand(Query, Connection); var Reader = Command.ExecuteReader(); List <Marques> Marques = new List <Marques>(); while (Reader.Read()) { var RefMarque = Reader.GetInt32(0); var MarqueName = Reader.GetString(1); Marques Marque = new Marques(RefMarque, MarqueName); Marques.Add(Marque); } Reader.Close(); return(Marques); }
/** * Méthod Update * @param obj Marques marque * @return boolean */ public override Boolean Update <T>(ref T data) { if (data.GetType().Name == "Marques") { Marques marque = (Marques)Convert.ChangeType(data, typeof(Marques)); try { string sql = "update marques SET nom = " + marque.marqueName + " WHERE refMarques=" + marque.refMarque; SQLiteCommand commande = new SQLiteCommand(sql, database.connection); commande.ExecuteNonQuery(); return(true); }catch (SQLiteException e) { MessageBox.Show("L'erreur suivante a été rencontrée :" + e.Message); Console.WriteLine("L'erreur suivante a été rencontrée :" + e.Message); return(false); } } return(false); }
public List <Marques> GetAll() { List <Marques> Resultats = new List <Marques>(); SQLiteConnection ConnectionBD = GererBD.Get_Connection(); string Sql = "select * from Marques"; SQLiteCommand Commande = new SQLiteCommand(Sql, ConnectionBD); SQLiteDataReader Reader = Commande.ExecuteReader(); if (Reader.HasRows) { while (Reader.Read()) { Marques Marque = new Marques(); Marque.Ref_Marque_Operation = (int)Reader["RefMarque"]; Marque.Nom_Operation = Reader["Nom"].ToString(); Resultats.Add(Marque); } } return(Resultats); }
public Marques FindMarqueByRefMarque(int RefMarque) { Query = "SELECT * FROM Marques WHERE RefMarque = '" + RefMarque + "'"; SQLiteCommand Command = new SQLiteCommand(Query, Connection); Command.ExecuteNonQuery(); var Reader = Command.ExecuteReader(); if (Reader.Read()) { var MarqueName = Reader.GetString(1); Marques Marque = new Marques(RefMarque, MarqueName); Reader.Close(); return(Marque); } else { return(null); } }
public void ModifyMarque(String MarqueName, ModifyMarque ModifyMarque, String LabelMarqueName) { if (FamillesDao.FindFamilleByFamilleName(MarqueName)) { MessageBox.Show("This name has already been used by a Famille!", "ERROR"); ModifyMarque.textBox_NewMarqueName.Text = ""; return; } else if (SousFamillesDao.FindSousFamilleBySousFamilleName(MarqueName)) { MessageBox.Show("This name has already been used by a SousFamille!", "ERROR"); ModifyMarque.textBox_NewMarqueName.Text = ""; return; } else if (MarquesDao.FindMarqueByMarqueName(MarqueName)) { MessageBox.Show("Marque Already exsited!", "ERROR"); ModifyMarque.textBox_NewMarqueName.Text = ""; return; } else { Marques Marque = FindMarquesByMarqueName(LabelMarqueName); Marque.MarqueName = MarqueName; MarquesDao.ModifyMarque(Marque); if (MarquesDao.FindMarqueByMarqueName(Marque.MarqueName)) { MessageBox.Show("Modify succeed!"); ModifyMarque.Close(); } else { MessageBox.Show("Modify Failed!"); } } }
private void refreshListView() { int countRows = Marques.countRows(); List <Marques> marques = Marques.getListMarques(); listView.Clear(); listView.View = View.Details; listView.GridLines = true; listView.FullRowSelect = true; listView.Columns.Add("Référence"); listView.Columns.Add("Nom"); foreach (Marques marque in marques) { String[] array = new String[2]; array[0] = marque.RefMarque.ToString(); array[1] = marque.Nom; listView.Items.Add(new ListViewItem(array)); } }
public List <Marques> GetMarques(int Id) { List <Marques> Resultats = new List <Marques>(); SQLiteConnection ConnectionBD = GererBD.Get_Connection(); string Sql = "select * from Marques where Marques.RefMarque= @Id"; SQLiteCommand Commande = new SQLiteCommand(Sql, ConnectionBD); SQLiteParameter Parametre = new SQLiteParameter("@Id", System.Data.DbType.Int16); Parametre.Value = Id; Commande.Parameters.Add(Parametre); SQLiteDataReader Reader = Commande.ExecuteReader(); if (Reader.HasRows) { while (Reader.Read()) { Marques Marque = new Marques(); Marque.Ref_Marque_Operation = (int)Reader["RefMarque"]; Marque.Nom_Operation = Reader["Nom"].ToString(); Resultats.Add(Marque); } } return(Resultats); }
/// <summary> /// Cherche une marque par son id et la retourne. /// </summary> /// <param name="Id">id de la marque recherchée.</param> public Marques GetMarqueById(int Id) { Marques Marque = null; using (var Connection = new SQLiteConnection(CONNECTION_STRING)) { Connection.Open(); using (var Command = new SQLiteCommand( "SELECT * FROM Marques WHERE RefMarque = @refMarque", Connection)) { Command.Parameters.AddWithValue("@refMarque", Id); using (var Reader = Command.ExecuteReader()) { if (Reader.HasRows) { Reader.Read(); Marque = new Marques(Reader.GetInt32(0), Reader.GetString(1)); } } } } return(Marque); }
/// <summary> /// Import de la base de données /// </summary> public void ImporterBDD() { Modale.SetProgressBarValue(10); MarquesDAO MarquesD = new MarquesDAO(Modale.GetPathToSave()); FamillesDAO FamillesD = new FamillesDAO(Modale.GetPathToSave()); SousFamillesDAO SousFamillesD = new SousFamillesDAO(Modale.GetPathToSave()); ArticlesDAO ArticlesD = new ArticlesDAO(Modale.GetPathToSave()); List <string> AllMarques = new List <string>(); List <string> AllFamilles = new List <string>(); List <string> AllSousFamilles = new List <string>(); List <string> AllSousFamillesFamilles = new List <string>(); //Pour récupérer la famille des sous familles //Pour les articles, on est obligé de tout stocker dans une liste à part car on doit récupérer les Ref des autres objets (donc ils doivent être créés avant) List <string> AllArticlesRefArticle = new List <string>(); List <string> AllArticlesDescription = new List <string>(); List <string> AllArticlesSousFamilleNom = new List <string>(); List <string> AllArticlesMarqueNom = new List <string>(); List <float> AllArticlesPrixHT = new List <float>(); Modale.SetProgressBarValue(25); using (var reader = new StreamReader(Modale.GetPathToImport(), Encoding.Default)) { reader.ReadLine(); //On passe la première ligne (les headers du fichier) //On stocke tous dans des listes en parcourant notre fichier, on créera après (on ne stocke qu'une occurence de chaque item) while (!reader.EndOfStream) { var line = reader.ReadLine(); var values = line.Split(';'); if (!AllMarques.Exists(e => e.EndsWith(values[2]))) { AllMarques.Add(values[2]); } if (!AllFamilles.Exists(e => e.EndsWith(values[3]))) { AllFamilles.Add(values[3]); } if (!AllSousFamilles.Exists(e => e.EndsWith(values[4]))) { AllSousFamilles.Add(values[4]); AllSousFamillesFamilles.Add(values[3]); } AllArticlesRefArticle.Add(values[1]); AllArticlesDescription.Add(values[0]); AllArticlesMarqueNom.Add(values[2]); AllArticlesSousFamilleNom.Add(values[4]); AllArticlesPrixHT.Add(float.Parse(values[5])); } } //Maintenant on crée tout en base Modale.SetProgressBarValue(50); for (int Index = 0; Index < AllMarques.Count; Index++) { Marques Marque = new Marques(AllMarques[Index]); MarquesD.AjouterMarque(Marque); } Modale.SetProgressBarValue(60); for (int Index = 0; Index < AllFamilles.Count; Index++) { Familles Famille = new Familles(AllFamilles[Index]); FamillesD.AjouterFamille(Famille); } Modale.SetProgressBarValue(70); for (int Index = 0; Index < AllSousFamilles.Count; Index++) { SousFamilles SousFamille = new SousFamilles(FamillesD.GetRefByName(AllSousFamillesFamilles[Index]), AllSousFamilles[Index]); SousFamillesD.AjouterSousFamille(SousFamille); } Modale.SetProgressBarValue(80); for (int Index = 0; Index < AllArticlesRefArticle.Count; Index++) { int RefSousFamille = SousFamillesD.GetRefByName(AllArticlesSousFamilleNom[Index]); int RefMarque = MarquesD.GetRefByName(AllArticlesMarqueNom[Index]); Articles Article = new Articles(AllArticlesRefArticle[Index], AllArticlesDescription[Index], RefSousFamille, RefMarque, AllArticlesPrixHT[Index], 0); ArticlesD.AjouterArticle(Article); } Modale.SetProgressBarValue(100); Modale.GetLabelImport().Text = "Importation en mode Ecrasement terminé !"; string message = ArticlesD.GetNbArticle() + " articles ont été ajoutés à la base de données."; const string caption = "Intégration en mode Ecrasement terminé !"; var result = MessageBox.Show(message, caption, MessageBoxButtons.OK, MessageBoxIcon.Information); }
/// <summary> /// Suppression d'une marque /// </summary> /// <param name="m"></param> public static void supprimerMarque(Marque m) { Marques.Remove(m); }
/// <summary> /// Ajout d'une marque /// </summary> /// <param name="m"></param> public static void AjouterMarque(Marque m) { Marques.Add(m); }
public void CsvImport(bool Flag, string ParamFilePath, FormImport FormImport) { ModelList ModelList = new ModelList(); ModelListController ModelListController = new ModelListController(); ModelList = ModelListController.GetAllModelList(); ArticlesDao ArticleDao = new ArticlesDao(); FamillesDao FamilleDao = new FamillesDao(); MarquesDao MarqueDao = new MarquesDao(); SousFamillesDao SousFamilleDao = new SousFamillesDao(); Articles Article = new Articles(); Marques Marque = new Marques(); SousFamilles SousFamille = new SousFamilles(); Familles Famille = new Familles(); try { int AddedArticles = 0; int ExistingArticles = 0; if (Flag == true) { ModelList.Articles.Clear(); ModelList.Familles.Clear(); ModelList.Marques.Clear(); ModelList.SousFamilles.Clear(); ArticleDao.EmptyArticles(); SousFamilleDao.EmptySousFamilles(); MarqueDao.EmptyMarques(); FamilleDao.EmptyFamilles(); } if (ParamFilePath == "") { if (MessageBox.Show("Please choose a file!", "ERROR") == DialogResult.OK) { FormImport.label_FichierImporte.Text = "FileName: " + System.IO.Path.GetFileName(ChooseFile()); } } using (var StreamReader = new StreamReader(ParamFilePath, Encoding.Default)) { var NbLines = File.ReadAllLines(ParamFilePath).Length; FormImport.progressBar.Maximum = NbLines; FormImport.progressBar.Value = 1; StreamReader.ReadLine(); string Line; while ((Line = StreamReader.ReadLine()) != null) { var Values = Line.Split(';'); var Description = Values[0].Trim(); var RefArticle = Values[1].Trim(); var MarqueName = Values[2].Trim(); var FamilleName = Values[3].Trim(); var SousFamilleName = Values[4].Trim(); var Prix = Values[5].Trim(); if (Prix.IndexOf("\"") >= 0) { Prix = Prix.Replace("\"", ""); } if (Prix.EndsWith(",")) { Prix = Prix.Remove(Prix.Length - 1, 1); } if (Prix.IndexOf(",") != -1) { int StartIndex = 0; int Count = 0; while (true) { int Index = Prix.IndexOf(",", StartIndex); if (Index != -1) { Count++; StartIndex = Index + 1; } else { break; } } StartIndex = 0; for (int i = 0; i < Count - 1; i++) { int Index = Prix.IndexOf(",", StartIndex); StartIndex = Index + 1; Prix = Prix.Remove(Index, Index); } Prix = Prix.Replace(",", "."); } var PrixHT = double.Parse(Prix, new CultureInfo("en-US")); if (ArticleDao.FindArticleByRefArticle(RefArticle)) { ExistingArticles += 1; if (Flag == false) { Article = ArticleDao.FindArticlesByRefArticle(RefArticle); if (Article.Description != Description) { Article.Description = Description; } if (Article.PrixHT != PrixHT) { Article.PrixHT = PrixHT; } if (Article.Quantite != 1) { Article.Quantite = 1; } if (!MarqueDao.FindMarqueByMarqueName(MarqueName)) { Marque = new Marques(MarqueName); ModelList.Marques.Add(Marque); MarqueDao.AddMarque(Marque); Article.Marque = Marque; } if (!SousFamilleDao.FindSousFamilleBySousFamilleName(SousFamilleName)) { SousFamille = new SousFamilles(SousFamilleName); ModelList.SousFamilles.Add(SousFamille); SousFamilleDao.AddSousFamille(SousFamille, Famille); Article.SousFamille = SousFamille; } } continue; } else { AddedArticles += 1; } if (!MarqueDao.FindMarqueByMarqueName(MarqueName)) { Marque = new Marques(MarqueName); ModelList.Marques.Add(Marque); MarqueDao.AddMarque(Marque); } if (!ArticleDao.FindArticleByFamilleName(FamilleName)) { Famille = new Familles(FamilleName); ModelList.Familles.Add(Famille); FamilleDao.AddFamille(Famille); } if (!SousFamilleDao.FindSousFamilleBySousFamilleName(SousFamilleName)) { SousFamille = new SousFamilles(SousFamilleName); ModelList.SousFamilles.Add(SousFamille); SousFamilleDao.AddSousFamille(SousFamille, Famille); } Article = new Articles(RefArticle, Description, FamilleDao.FindFamillesByRefSousFamille(SousFamille.RefSousFamille), SousFamille, Marque, PrixHT, 1); ModelList.Articles.Add(Article); ArticleDao.AddArticle(Article); FormImport.progressBar.Value++; } StreamReader.Close(); } string Message = "Nombre d'articles ajoutés " + AddedArticles + "\n" + "Nombre d'articles anomalies " + ExistingArticles; MessageBox.Show(" Import success!\n" + Message, System.IO.Path.GetFileName(ParamFilePath)); String FileDirectory = Path.GetDirectoryName(ParamFilePath); //if (FileDirectory != null) //FormMain_FileSystemWatcher(); } catch (System.IO.IOException) { MessageBox.Show("Please close the selected file!"); } }