/// <summary>
        /// Execute an insertion Query
        /// </summary>
        /// <param name="query">Query to execute</param>
        /// <param name="fenetre">Window in which the listView error will be modified</param>
        /// <returns></returns>
        private static bool InsertQuery(String query, SelectionXML fenetre)
        {
            bool isAdded = false;

            sqlConn.Open();
            SQLiteCommand sqlCmd = sqlConn.CreateCommand();

            sqlCmd.Connection  = sqlConn;
            sqlCmd.CommandText = query;
            SQLiteTransaction trans = sqlConn.BeginTransaction();

            try
            {
                Console.WriteLine(sqlCmd.ExecuteNonQuery() + " : " + sqlCmd.CommandText);
                isAdded = true;
            }
            catch (SQLiteException e)
            {
                fenetre.AjouterErreur(e.Message + " | " + sqlCmd.CommandText);
                Console.WriteLine(sqlCmd.CommandText);
                Console.WriteLine(e.Message);
            }
            trans.Commit();
            sqlConn.Close();

            return(isAdded);
        }
        private void SelectionnerFichierXMLToolStripMenuItem_Click(object sender, EventArgs e)
        {
            SelectionXML selectionXML = new SelectionXML();

            if (selectionXML.ShowDialog() == DialogResult.OK)
            {
                RefreshListView();
            }
        }
        /// <summary>
        /// Add an article list to the DB and update progression bar
        /// </summary>
        /// <param name="list"> Arcticle list</param>
        /// <param name="fenetre">Window where the progression bar is</param>
        public void AjouterListToDB(List <string> list, SelectionXML fenetre)
        {
            fenetre.ResetNbArticles();

            fenetre.SetProgressBarMaximumValue(list.Count / 6);
            fenetre.SetProgressBarValue(0);

            String RefArticle;
            String Description;
            String Marque;
            String SousFamille;
            String Famille;
            String Prix;

            String query;

            for (int i = 0; i < list.Count; i = i + 6)
            {
                fenetre.IncrementProgressBarValue();

                Description = list[i];
                RefArticle  = list[i + 1];
                Marque      = list[i + 2];
                Famille     = list[i + 3];
                SousFamille = list[i + 4];
                Prix        = list[i + 5];

                //est-ce que la famille existe ?
                int idFamille = ReturnID(Famille, "Famille");
                if (idFamille == 0) //Si la famille n'existe pas
                {
                    //je recupere l'id max de la table dans idFamille et j'ajoute la famille
                    idFamille = ReturnIdMax("Famille") + 1;
                    query     = "INSERT INTO Familles VALUES(" + idFamille + " , '" + Famille + "')";
                    InsertQuery(query, fenetre);
                }

                //est-ce que la sous famille existe ?
                int idSousFamille = ReturnID(SousFamille, "SousFamille");
                if (idSousFamille == 0)
                {
                    //je recupere l'id max de la table dans idSousFamille et j'ajoute la sousfamille
                    idSousFamille = ReturnIdMax("SousFamille") + 1;
                    query         = "INSERT INTO SousFamilles VALUES(" + idSousFamille + " , " + idFamille + ",'" + SousFamille + "')";
                    InsertQuery(query, fenetre);
                }

                //est-ce que la marque existe ?
                int idMarque = ReturnID(Marque, "Marque");
                if (idMarque == 0)
                {
                    //je recupere l'id max de la table dans idMarque et j'ajoute la marque
                    idMarque = ReturnIdMax("Marque") + 1;
                    query    = "INSERT INTO Marques VALUES(" + idMarque + " , '" + Marque + "')";
                    InsertQuery(query, fenetre);
                }

                //Ajout de l'article
                query = "INSERT INTO Articles VALUES('" + RefArticle + "' , '" + Description + "'," + idSousFamille + "," + idMarque + ",'" + Prix + "'," + 0 + ")";
                if (InsertQuery(query, fenetre))
                {
                    fenetre.IncrementNbArticles();
                }
            }
        }