/// <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(); } } }