/** * Constructeur * Param: * Sous-Famille à modifier */ public FormSaveSousFamille(SousFamille sousFamille) { this.toUpdate = true; InitializeComponent(); InitializeLists(); InitializeTextBoxes(sousFamille); }
/// <summary> /// Lance une nouvelle instance de <see cref="Fenetre_Ajout_Sous_Famille"/> avec un objet <see cref="ListViewItem"/> de type <see cref="SousFamille"/>. /// </summary> /// <param name="sender"> l'objet envoyé </param> /// <param name="e"> l'évènement </param> private void Bouton_Modifier_Click(object sender, EventArgs e) { // On affiche la même fenêtre que celle pour l'ajout d'une sous-famille, // mais avec les champs remplis avec les informations de l'objet. // On vérifie qu'un élément a bien été sélectionné. if (Sous_Familles_Liste.SelectedItems.Count > 0) { Fenetre_Ajout_Sous_Famille Fenetre_Ajout = new Fenetre_Ajout_Sous_Famille(Sous_Familles_Liste.SelectedItems[0]); DialogResult Resultat = Fenetre_Ajout.ShowDialog(); // On modifie les données de la ligne correspondant à la sous-famille. if (Resultat == DialogResult.OK) { SousFamille Sous_Famille = Fenetre_Ajout.Mettre_A_Jour_Sous_Famille(); Sous_Familles_Liste.Items[Sous_Familles_Liste.SelectedIndices[0]] = new ListViewItem(Sous_Famille.Recuperer_Donnees()); ((Fenetre_Principale)Owner).Mise_A_Jour_Barre_De_Statut("Vous avez modifié une sous-famille avec succès."); } } }
private void LoadArticles() { articleListView.Items.Clear(); articles.Clear(); articles.AddRange(Article.GetAll(databaseFileName)); foreach (Article article in articles) { ListViewItem item = new ListViewItem(article.Ref_Article); ListViewItem.ListViewSubItem descriptionItem = new ListViewItem.ListViewSubItem(item, article.Description); item.SubItems.Add(descriptionItem); SousFamille sousFamille = SousFamille.FindSousFamille(databaseFileName, article.Ref_Sous_Famille); ListViewItem.ListViewSubItem sousFamilleItem = new ListViewItem.ListViewSubItem(item, sousFamille != null ? sousFamille.Nom : ""); item.SubItems.Add(sousFamilleItem); Marque marque = Marque.FindMarque(databaseFileName, article.Ref_Marque); ListViewItem.ListViewSubItem marqueItem = new ListViewItem.ListViewSubItem(item, marque != null ? marque.Nom : ""); item.SubItems.Add(marqueItem); ListViewItem.ListViewSubItem quantiteItem = new ListViewItem.ListViewSubItem(item, Convert.ToString(article.Quantite)); item.SubItems.Add(quantiteItem); ListViewItem.ListViewSubItem prixItem = new ListViewItem.ListViewSubItem(item, Convert.ToString(article.PrixHT)); item.SubItems.Add(prixItem); articleListView.Items.Add(item); } }
/// <summary> /// Ajoute un article dans la base de données. /// </summary> /// <returns>L'article ajouté</returns> public Article Ajouter_Article() { SqlDataReader Data_Reader = SqlDataReader.Ouvrir_Connection(); Famille Famille = (Famille)Choix_Famille_Article.SelectedItem; SousFamille Sous_Famille = (SousFamille)Choix_Sous_Famille_Article.SelectedItem; Sous_Famille.Definir_Famille(Famille); Marque Marque = (Marque)Choix_Marque_Article.SelectedItem; string Reference = Reference_Article_Edition.Text; string Description = Description_Article_Edition.Text; string Prix = Prix_Unitaire_Article_Edition.Text; string Quantite = Quantite_Article_Edition.Text; double Prix_Converti = Convert.ToDouble(Prix); Data_Reader.Inserer_Sous_Famille(Sous_Famille.Recuperer_Nom(), Famille.Recuperer_Reference()); Data_Reader.Inserer_Article(Reference, Description, Sous_Famille.Recuperer_Reference(), Marque.Recuperer_Reference(), Prix_Converti, Int32.Parse(Quantite)); Data_Reader.Terminer_Connection(); Article Article = new Article(Reference, Description, Sous_Famille, Marque, Prix_Converti, Int32.Parse(Quantite)); return(Article); }
/// <summary> /// Retourne l'ensemble des articles disponibles. /// </summary> /// <returns>La liste des articles</returns> public List <Article> Recuperer_Articles() { List <Article> Articles = new List <Article> (); SQLiteCommand Requete_Article = new SQLiteCommand("SELECT * FROM Articles;", Connection); SQLiteDataReader Lecture_Table_Article = Requete_Article.ExecuteReader(); while (Lecture_Table_Article.Read()) { SousFamille Sous_Famille = Recuperer_Sous_Famille(Convert.ToInt16(Lecture_Table_Article[2])); Marque Marque = Recuperer_Marque(Convert.ToInt16(Lecture_Table_Article[3])); // On récupère le prix de l'article sous forme numérique. double Prix = Convert.ToDouble(Convert.ToString(Lecture_Table_Article[4])); Articles.Add(new Article(Convert.ToString(Lecture_Table_Article[0]), Convert.ToString(Lecture_Table_Article[1]), Sous_Famille, Marque, Prix, Convert.ToInt32(Lecture_Table_Article[5]) )); } Lecture_Table_Article.Close(); return(Articles); }
/// <summary> /// Edit a sous famille /// </summary> /// <param name="sousFamille">New object new sous-famille which will remplace the old one</param> internal void EditSousFamille(SousFamille sousFamille) { sqlConn = new SQLiteConnection("Data Source=Mercure.SQLite;"); SQLiteCommand sqlCmd = new SQLiteCommand("UPDATE SousFamilles SET Nom = @Nom, RefFamille = @RefFamille WHERE RefSousFamille = @RefSousFamille;", sqlConn); sqlCmd.Parameters.Add(new SQLiteParameter("@RefSousFamille", sousFamille.RefSousFamille)); sqlCmd.Parameters.Add(new SQLiteParameter("@Nom", sousFamille.Nom)); sqlCmd.Parameters.Add(new SQLiteParameter("@RefFamille", sousFamille.RefFamille)); Console.WriteLine(sqlCmd.CommandText); sqlCmd.Connection = sqlConn; sqlConn.Open(); SQLiteTransaction trans = sqlConn.BeginTransaction(); try { Console.WriteLine(sqlCmd.ExecuteNonQuery() + " : " + sqlCmd.CommandText); } catch (SQLiteException e) { Console.WriteLine(sqlCmd.CommandText); Console.WriteLine(e.Message); } trans.Commit(); sqlConn.Close(); }
private void acceptBtn_Click(object sender, EventArgs e) { if (sousFamilleTxtbox.Text != "" && familleCombobox.Text != "") { if (sousFamille != null) { sousFamille.Nom = sousFamilleTxtbox.Text; sousFamille.RefFamille = DBManager.GetInstance().getRefFamille(familleCombobox.Text); //edit sous famille in DB DBManager.GetInstance().EditSousFamille(sousFamille); } else { sousFamille = new SousFamille(); sousFamille.Nom = sousFamilleTxtbox.Text; sousFamille.RefFamille = DBManager.GetInstance().getRefFamille(familleCombobox.Text); //Ajouter sous famille to DB DBManager.GetInstance().AjouterSousFamilleToDB(sousFamille.Nom, familleCombobox.Text); } this.Close(); } }
/** * Constructeur * Param: * Nom de la base de données * Sous-Famille à modifier */ public FormSaveSousFamille(String databaseFileName, SousFamille sousFamille) { this.databaseFileName = databaseFileName; this.toUpdate = true; InitializeComponent(); InitializeLists(); InitializeTextBoxes(sousFamille); }
/* * @param databasefile sousfamille * mettre a jours une sous famille */ public static void UpdateSousFamille(String databaseFile, SousFamille sousFamille) { SQLiteHelper helper = new SQLiteHelper(databaseFile); Dictionary <String, Object> data = new Dictionary <String, Object>(); data.Add("Nom", sousFamille.Nom); data.Add("RefFamille", sousFamille.Ref_Famille); helper.Update(Configuration.SOUS_FAMILLE_TABLE_NAME, data, String.Format("RefSousFamille = {0}", sousFamille.Ref_Sous_Famille)); }
/* * @param databasefile sousfamille * inserer une sous famille dans la table */ public static void InsertSousFamille(String databaseFile, SousFamille sousF) { SQLiteHelper helper = new SQLiteHelper(databaseFile); Dictionary <String, Object> data = new Dictionary <String, Object>(); data.Add("RefSousFamille", sousF.Ref_Sous_Famille); data.Add("RefFamille", sousF.Ref_Famille); data.Add("Nom", sousF.Nom); helper.Insert(Configuration.SOUS_FAMILLE_TABLE_NAME, data); }
/// <summary> /// Ajoute la sous-famille dans la base de données. /// </summary> /// <returns> La sous-famille ajoutée </returns> public SousFamille Ajouter_Sous_Famille() { SqlDataReader Data_Reader = SqlDataReader.Ouvrir_Connection(); int Reference = Data_Reader.Inserer_Sous_Famille(Nom_Sous_Famille_Edition.Text, ((Famille)Choix_Famille_Selection.SelectedItem).Recuperer_Reference()); Data_Reader.Terminer_Connection(); SousFamille Sous_Famille = new SousFamille(Reference, Nom_Sous_Famille_Edition.Text, ((Famille)Choix_Famille_Selection.SelectedItem)); return(Sous_Famille); }
/** * 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); } }
private void modifierToolStripMenuItem_Click(object sender, EventArgs e) { if (sousfamilleListview.SelectedIndices.Count == 1) { int SelectedIndex = sousfamilleListview.SelectedIndices[0]; String refSousFamilleToEdit = this.sousfamilleListview.Items[SelectedIndex].SubItems[0].Text; SousFamille sousfamille = DBManager.GetInstance().GetSousFamilleByRef(refSousFamilleToEdit); AddSousFamilleForm form = new AddSousFamilleForm(sousfamille); form.ShowDialog(); RefreshListView(); } }
/// <summary> /// Initialise une nouvelle instance de <see cref="Article"/>. /// </summary> /// <param name="Reference"> la référence de l'article </param> /// <param name="Description"> le description de l'article </param> /// <param name="Sous_Famille"> la sous-famille associée </param> /// <param name="Marque"> la marque de l'article </param> /// <param name="Prix"> le prix unitaire (hors taxes) de l'article </param> /// <param name="Quantite"> la quantité de l'article présente </param> public Article(string Reference, string Description, SousFamille Sous_Famille, Marque Marque, double Prix, int Quantite) { this.Reference = Reference; this.Description = Description; this.Sous_Famille = Sous_Famille; this.Marque = Marque; this.Prix = Prix; this.Quantite = Quantite; }
/// <summary> /// Constructor used to edit a SousFamille /// </summary> /// <param name="sousfamilleToEdit">SousFamille information with will fill the form</param> public AddSousFamilleForm(SousFamille sousfamilleToEdit) { InitializeComponent(); this.Text = "Modifier une sous-famille"; sousFamille = sousfamilleToEdit; sousFamilleTxtbox.Text = sousfamilleToEdit.Nom; familleCombobox.Items.AddRange(DBManager.GetInstance().GetFamilleNames()); // On sélectionne dans la comboBox l'objet correspondant à celui qu'on à voulu éditer familleCombobox.SelectedIndex = familleCombobox.Items.IndexOf(DBManager.GetInstance().GetFamilleByRef(sousfamilleToEdit.RefFamille.ToString()).Nom); }
/** * Fonction privée pour gérer le fichier xml */ private void HandleXML() { //Efface la base de données si l'utilisateur a choisi nouvelle integration SQLiteHelper helper = new SQLiteHelper(databaseFileName); if (operation == OPERATION_CLEAR_INSERT) { helper.ClearDB(); RegisterMessage("Database is cleared."); } //Charge le fichier xml et affiche un message à l'utilisateur XmlDocument doc = new XmlDocument(); doc.Load(XmlFileName); RegisterMessage("Document is loaded."); //Prendre le noeud des articles XmlNode root = doc.ChildNodes[1]; //Nombre des articles dans le fichier int childCount = root.ChildNodes.Count; //Combien devrait augmenter la barre de progression int incrementor = (int)Math.Ceiling((double)(100 / childCount)); foreach (XmlNode node in root.ChildNodes) { //Insère la marque dans la base de données Marque marque = HandleMarque(node); //Insère la famille dans la base de données Famille famille = HandleFamille(node); //Insère le sous-famille dans la base de données SousFamille sousFamille = HandleSousFamille(node, famille); //Insère l'article dans la base de données Article article = HandleArticle(node, marque, sousFamille); //Incremente la barre de progression IncrementProgress(incrementor); } //Affiche un message de succés RegisterMessage("The integration was successful."); //Efface l'ancien nom de fichier setCurrentFileName(null); //Réinitialise la barre de progression ResetProgress(); }
private void supprimerSousFamilleButton_Click(object sender, EventArgs e) { if (sousFamillesListView.SelectedIndices.Count > 0) { int aIndex = sousFamillesListView.SelectedIndices[0]; DialogResult result = MessageBox.Show("Are you sure you want to delete : " + sousFamilles[aIndex].Nom, "Delete sous-famille", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2); if (result == DialogResult.Yes) { SousFamille.RemoveSousFamille(databaseFileName, sousFamilles[aIndex].Ref_Sous_Famille); LoadSousFamilles(); } } }
/// <summary> /// Get all sous-familles that belong to a family /// </summary> /// <param name="refFamille">Family name</param> /// <returns>A list of "sous-famille"</returns> public List <SousFamille> GetListeSousFamillesByFamille(string refFamille) { Famille famille = new Famille(); SousFamille sousFamille = new SousFamille(); List <SousFamille> listSousFamilles = new List <SousFamille>(); sqlConn.Open(); //Compter combien de résultat la requete retourne int nbResults = 0; SQLiteCommand sqlCmd = new SQLiteCommand("SELECT COUNT(*) FROM SousFamilles WHERE RefFamille = @RefFamille", sqlConn); sqlCmd.Parameters.Add(new SQLiteParameter("@RefFamille", refFamille)); SQLiteDataReader reader = sqlCmd.ExecuteReader(); if (reader.Read()) { nbResults = reader.GetInt16(0); } reader.Close(); reader.Dispose(); //Récupération des sous-familles sqlCmd = new SQLiteCommand("SELECT RefSousFamille, RefFamille, Nom FROM SousFamilles WHERE RefFamille = @RefFamille", sqlConn); sqlCmd.Parameters.Add(new SQLiteParameter("@RefFamille", refFamille)); reader = sqlCmd.ExecuteReader(); if (reader.Read()) { //On boucle sur le nombre de résultats obtenus for (int i = 0; i < nbResults; i++) { sousFamille.RefSousFamille = reader.GetInt32(0); sousFamille.RefFamille = reader.GetInt32(1); sousFamille.Nom = reader.GetString(2); listSousFamilles.Add(sousFamille); } } reader.Close(); reader.Dispose(); sqlConn.Close(); return(listSousFamilles); }
/// <summary> /// Met à jour la sous-famille sélectionnée avec le nouveau nom entré et/ou la nouvelle famille associée choisie. /// </summary> /// <returns> La sous-famille mise à jour </returns> public SousFamille Mettre_A_Jour_Sous_Famille() { SqlDataReader Data_Reader = SqlDataReader.Ouvrir_Connection(); int Reference = Convert.ToInt32(this.Sous_Famille.SubItems[0].Text); Data_Reader.Mise_A_Jour_Sous_Famille(Reference, Nom_Sous_Famille_Edition.Text, ((Famille)Choix_Famille_Selection.SelectedItem).Recuperer_Reference()); Data_Reader.Terminer_Connection(); SousFamille Sous_Famille = new SousFamille(Reference, Nom_Sous_Famille_Edition.Text, (Famille)Choix_Famille_Selection.SelectedItem); return(Sous_Famille); }
/// <summary> /// Delete an sous-famille from the DB /// </summary> internal void DeleteSousFamille(SousFamille sousfamille) { sqlConn = new SQLiteConnection("Data Source=Mercure.SQLite;"); sqlConn.Open(); SQLiteCommand sqlCmd = sqlConn.CreateCommand(); sqlCmd.CommandText = "Delete From SousFamilles Where RefSousFamille = '" + sousfamille.RefSousFamille + "'"; SQLiteDataReader reader = sqlCmd.ExecuteReader(); Console.WriteLine(sqlCmd.CommandText); reader.Close(); reader.Dispose(); sqlConn.Close(); }
/** * Fonction privée pour initialiser les champs de sous-famille à modifier */ private void InitializeTextBoxes(SousFamille sousFamille) { referenceSousTextBox.Text = Convert.ToString(sousFamille.Ref_Sous_Famille); nomSousTextBox.Text = sousFamille.Nom; int i = 0; foreach (Famille famille in familleList) { if (famille.Ref_Famille == sousFamille.Ref_Famille) { familleComboBox.SelectedIndex = i; } i++; } }
/* * @param databasefile * recuperer les informations d'une sous famille * @return listde sous famille */ public static List <SousFamille> GetAll(String databaseFile) { SQLiteHelper helper = new SQLiteHelper(databaseFile); DataTable marquesTable = helper.GetDataTable(String.Format("SELECT * FROM {0}", Configuration.SOUS_FAMILLE_TABLE_NAME)); List <SousFamille> sousFamilles = new List <SousFamille>(); foreach (DataRow r in marquesTable.Rows) { SousFamille sf = new SousFamille( Int32.Parse(r["RefSousFamille"].ToString()), Int32.Parse(r["RefFamille"].ToString()), r["Nom"].ToString()); sousFamilles.Add(sf); } return(sousFamilles); }
/** * Fonction privée pour initialiser les listes de sous-familles et marques */ private void InitializeLists() { //Chargement la liste des sous-familles dans le combo-box sousFamilleList = SousFamille.GetAll(databaseFileName); foreach (SousFamille sf in sousFamilleList) { sousFamilleComboBox.Items.Add(sf.Nom); sousFamilleComboBox.SelectedIndex = 0; // Selection de premier sous-famille par défaut } //Chargement la liste des marques dans le combo-box marqueList = Marque.GetAll(databaseFileName); foreach (Marque m in marqueList) { marqueComboBox.Items.Add(m.Nom); marqueComboBox.SelectedIndex = 0; // Selection de la premiere articles par défaut } }
/// <summary> /// Retourne une instance de <see cref="SousFamille"/>. /// </summary> /// <param name="Id_Sous_Famille"> la référence de la sous-famille</param> /// <returns>Une instance de <see cref="SousFamille"/>.</returns> public SousFamille Recuperer_Sous_Famille(int Id_Sous_Famille) { SQLiteCommand Requete_Sous_Famille = new SQLiteCommand("SELECT * FROM SousFamilles WHERE @Id_Sous_Famille == RefSousFamille;", Connection); Requete_Sous_Famille.Parameters.AddWithValue("@Id_Sous_Famille", Id_Sous_Famille); SQLiteDataReader Lecture_Table_Sous_Famille = Requete_Sous_Famille.ExecuteReader(); Lecture_Table_Sous_Famille.Read(); SousFamille Sous_Famille = new SousFamille(Convert.ToInt32(Lecture_Table_Sous_Famille[0]), Convert.ToString(Lecture_Table_Sous_Famille[2]), Recuperer_Famille(Convert.ToInt32(Lecture_Table_Sous_Famille[1]))); Lecture_Table_Sous_Famille.Close(); return(Sous_Famille); }
/// <summary> /// Lance une nouvelle instance de <see cref="Fenetre_Ajout_Sous_Famille"/>. /// </summary> /// <param name="sender"> l'objet envoyé </param> /// <param name="e"> l'évènement </param> private void Bouton_Ajouter_Click(object sender, EventArgs e) { Fenetre_Ajout_Sous_Famille Fenetre_Ajout = new Fenetre_Ajout_Sous_Famille(); DialogResult Resultat = Fenetre_Ajout.ShowDialog(); // On affiche la nouvelle sous-famille dans la liste. if (Resultat == DialogResult.OK) { SousFamille Sous_Famille = Fenetre_Ajout.Ajouter_Sous_Famille(); ListViewItem Sous_Famille_Dans_Liste = new ListViewItem(Sous_Famille.Recuperer_Donnees()); Sous_Familles_Liste.Items.Add(Sous_Famille_Dans_Liste); ((Fenetre_Principale)Owner).Mise_A_Jour_Barre_De_Statut("Vous avez ajouté une nouvelle sous-famille avec succès."); } }
private void LoadSousFamilles() { sousFamillesListView.Items.Clear(); sousFamilles.Clear(); sousFamilles.AddRange(SousFamille.GetAll(databaseFileName)); foreach (SousFamille sousFamille in sousFamilles) { ListViewItem item = new ListViewItem(Convert.ToString(sousFamille.Ref_Sous_Famille)); ListViewItem.ListViewSubItem nomItem = new ListViewItem.ListViewSubItem(item, sousFamille.Nom); item.SubItems.Add(nomItem); Famille famille = Famille.FindFamille(databaseFileName, sousFamille.Ref_Famille); ListViewItem.ListViewSubItem familleItem = new ListViewItem.ListViewSubItem(item, famille != null ? famille.Nom : ""); item.SubItems.Add(familleItem); sousFamillesListView.Items.Add(item); } }
private void supprimerToolStripMenuItem_Click(object sender, EventArgs e) { if (DialogResult.OK == MessageBox.Show("Attention, vous êtes sur le point de supprimer une sous-famille, et tous les articles associés à cette sous-famille. \n Etes vous sur de vouloir continuer ?", "Attention", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning)) { int SelectedIndex = sousfamilleListview.SelectedIndices[0]; String refSousFamilleToDelete = this.sousfamilleListview.Items[SelectedIndex].SubItems[0].Text; SousFamille sousfamille = DBManager.GetInstance().GetSousFamilleByRef(refSousFamilleToDelete); //Suppression des articles de la sous famille DBManager.GetInstance().DeleteArticlesBySousFamille(Int32.Parse(refSousFamilleToDelete)); //Supprimer toutes les sous familles associées à la famille DBManager.GetInstance().DeleteSousFamillesByFamille(refSousFamilleToDelete); DBManager.GetInstance().DeleteSousFamille(sousfamille); RefreshListView(); } }
/** * 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); }
private void sousfamilleListview_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Delete && sousfamilleListview.SelectedIndices.Count == 1) { if (DialogResult.OK == MessageBox.Show("Attention, vous êtes sur le point de supprimer une sous-famille, et tous les articles associés à cette sous-famille. \n Etes vous sur de vouloir continuer ?", "Attention", MessageBoxButtons.OKCancel, MessageBoxIcon.Warning)) { int SelectedIndex = sousfamilleListview.SelectedIndices[0]; String refSousFamilleToDelete = this.sousfamilleListview.Items[SelectedIndex].SubItems[0].Text; SousFamille sousfamille = DBManager.GetInstance().GetSousFamilleByRef(refSousFamilleToDelete); //Suppression des articles de la sous famille DBManager.GetInstance().DeleteArticlesBySousFamille(Int32.Parse(refSousFamilleToDelete)); DBManager.GetInstance().DeleteSousFamille(sousfamille); RefreshListView(); } } else if (e.KeyCode == Keys.F5) { RefreshListView(); } else if (e.KeyCode == Keys.Enter) { if (sousfamilleListview.SelectedIndices.Count == 1) { int SelectedIndex = sousfamilleListview.SelectedIndices[0]; String refSousFamilleToEdit = this.sousfamilleListview.Items[SelectedIndex].SubItems[0].Text; SousFamille sousfamille = DBManager.GetInstance().GetSousFamilleByRef(refSousFamilleToEdit); AddSousFamilleForm form = new AddSousFamilleForm(sousfamille); form.ShowDialog(); RefreshListView(); } } }
/** * Fonction privée pour gérer l'article dans le noeud */ private Article HandleArticle(XmlNode node, Marque marque, SousFamille sousFamille) { //Reference de l'article String refArticle = node.ChildNodes[1].InnerText; //Description de l'article String description = node.ChildNodes[0].InnerText; //Prix de l'article float prixHT = float.Parse(node.ChildNodes[5].InnerText); //Recherche si l'article est déjà dans la base de données Article article = Article.FindArticle(databaseFileName, refArticle); if (article == null) { //Insertion de l'article article = new Article(refArticle, description, prixHT, 0, sousFamille.Ref_Sous_Famille, marque.Ref_Marque); Article.InsertArticle(databaseFileName, article); //Affiche d'un message de notification RegisterMessage("Article : " + refArticle + " is added."); } return(article); }