public bool AddEan(Managers.Producte prod, Managers.CodiEan ean, out bool product_not_added) { bool ret = false; product_not_added = false; if (prod != null && ean != null) { Managers.DBManager.Instance.OpenConexion(connection); string command4 = "DELETE FROM F_EAN WHERE EANEAN ='" + ean.codi_ean + "'"; OleDbCommand Cmd4 = new OleDbCommand(command4, connection); ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd4); bool has_product = false; bool add_product = false; if (ret) { string check_product_text = "SELECT * FROM F_ART WHERE CODART ='" + prod.codi_article + "'"; OleDbCommand CheckCmd2 = new OleDbCommand(check_product_text, connection); OleDbDataReader CheckData2 = Managers.DBManager.Instance.ExecuteReader(connection, CheckCmd2); if (CheckData2 != null) { if (CheckData2.Read()) { has_product = true; } CheckData2.Close(); ret = true; } } if (!has_product) { add_eans_timer.Stop(); string message = "El producte amb codi: " + prod.codi_article + " no està a la base de dades, vol incloure'l?"; MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show(string.Format(message), "Conflicte", System.Windows.MessageBoxButton.YesNoCancel, System.Windows.MessageBoxImage.Warning); add_eans_timer.Start(); if (messageBoxResult == MessageBoxResult.Yes) { add_product = true; } else if (messageBoxResult == MessageBoxResult.Cancel) { ret = false; } else { product_not_added = true; } if (add_product) { ret = AddProducte(prod); has_product = true; } } if (ret && has_product) { string command = "INSERT INTO F_EAN("; command += "[ARTEAN]"; command += ", [EANEAN]"; command += ")VALUES("; command += "@ARTEAN"; command += ", @EANEAN"; command += ")"; OleDbCommand Cmd = new OleDbCommand(command, connection); Cmd.Parameters.Add("@ARTEAN", OleDbType.VarChar, 13).Value = ean.codi_article; Cmd.Parameters.Add("@EANEAN", OleDbType.VarChar, 50).Value = ean.codi_ean;; ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd); } } return(ret); }
public bool AddProducte(Managers.Producte prod) { bool ret = false; if (prod != null) { if (connection != null) { Managers.DBManager.Instance.OpenConexion(connection); string check_command_text = "SELECT * FROM F_ART WHERE CODART ='" + prod.codi_article + "'"; OleDbCommand CheckCmd = new OleDbCommand(check_command_text, connection); OleDbDataReader CheckData = Managers.DBManager.Instance.ExecuteReader(connection, CheckCmd); bool already_exists = false; bool sobreescriure = false; if (CheckData != null) { if (CheckData.Read()) { already_exists = true; } CheckData.Close(); ret = true; } if (ret && already_exists) { add_productes_timer.Stop(); string message = "El producte amb codi: " + prod.codi_article + " ja esta a la base de dades, vol reemplacar-lo?"; MessageBoxResult messageBoxResult = System.Windows.MessageBox.Show(string.Format(message), "Conflicte", System.Windows.MessageBoxButton.YesNoCancel, System.Windows.MessageBoxImage.Warning); add_productes_timer.Start(); if (messageBoxResult == MessageBoxResult.Yes) { sobreescriure = true; } else if (messageBoxResult == MessageBoxResult.Cancel) { ret = false; } } if (ret) { if (sobreescriure || !already_exists) { if (sobreescriure) { string command3 = "DELETE FROM F_ART WHERE CODART ='" + prod.codi_article + "'"; OleDbCommand Cmd3 = new OleDbCommand(command3, connection); ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd3); } if (ret) { string command = "INSERT INTO F_ART("; command += " [CODART]"; command += ", [DESART]"; command += ", [TIVART]"; command += ", [PCOART]"; command += ", [UPPART]"; command += ", [EANART]"; command += ")VALUES("; command += " @CODART"; command += ", @DESART"; command += ", @TIVART"; command += ", @PCOART"; command += ", @UPPART"; command += ", @EANART"; command += ")"; OleDbCommand Cmd = new OleDbCommand(command, connection); Cmd.Parameters.Add("@CODART", OleDbType.VarChar, 13).Value = prod.codi_article; Cmd.Parameters.Add("@DESART", OleDbType.VarChar, 50).Value = prod.descripcio;; Cmd.Parameters.Add("@TIVART", OleDbType.Integer).Value = prod.tipus_iva; Cmd.Parameters.Add("@PCOART", OleDbType.Double).Value = prod.preu_unitari; Cmd.Parameters.Add("@UPPART", OleDbType.Integer).Value = prod.unitats_caixa; Cmd.Parameters.Add("@EANART", OleDbType.VarChar, 50).Value = prod.primer_ean; ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd); if (ret) { string command4 = "DELETE FROM F_LTA WHERE ARTLTA ='" + prod.codi_article + "'"; OleDbCommand Cmd4 = new OleDbCommand(command4, connection); ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd4); if (ret) { string command2 = "INSERT INTO F_LTA("; command2 += "[TARLTA]"; command2 += ", [ARTLTA]"; command2 += ", [PRELTA]"; command2 += ")VALUES("; command2 += "@TARLTA"; command2 += ", @ARTLTA"; command2 += ", @PRELTA"; command2 += ")"; OleDbCommand Cmd2 = new OleDbCommand(command2, connection); Cmd2.Parameters.Add("@TARLTA", OleDbType.Integer).Value = 1; Cmd2.Parameters.Add("@ARTLTA", OleDbType.VarChar, 13).Value = prod.codi_article; Cmd2.Parameters.Add("@PRELTA", OleDbType.Double, 50).Value = prod.preu_venta_public_recomanat; ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd2); } } } } } } } return(ret); }
public bool AddProducte(Managers.Producte curr_prod) { bool ret = false; if (curr_prod != null) { if (connection != null) { Managers.DBManager.Instance.OpenConexion(connection); string check_command_text = "SELECT * FROM ArticlesMagsa WHERE Codi ='" + curr_prod.codi_article + "'"; OleDbCommand CheckCmd = new OleDbCommand(check_command_text, connection); OleDbDataReader CheckData = Managers.DBManager.Instance.ExecuteReader(connection, CheckCmd); bool already_exists = false; if (CheckData != null) { if (CheckData.Read()) { already_exists = true; } CheckData.Close(); ret = true; } if (ret && already_exists) { string command3 = "DELETE FROM ArticlesMagsa WHERE Codi ='" + curr_prod.codi_article + "'"; OleDbCommand Cmd3 = new OleDbCommand(command3, connection); ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd3); string command4 = "DELETE FROM BarresMagsa WHERE Codi ='" + curr_prod.codi_article + "'"; OleDbCommand Cmd4 = new OleDbCommand(command4, connection); ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd4); } if (ret) { string data_actual = DateTime.Now.ToShortTimeString(); string command = "INSERT INTO ArticlesMagsa("; command += "[Linia]"; command += ", [Codi]"; command += ", [Baixa]"; command += ", [Descripcio]"; command += ", [Caixa]"; command += ", [Fraccio]"; command += ", [Pes]"; command += ", [P_Cost]"; command += ", [P_Recomanat]"; command += ", [P_Fraccio]"; command += ", [Iva]"; command += ", [Familia]"; command += ", [SubFamilia]"; command += ", [Mesura (L)(M)(Q)]"; command += ", [FactorConversio]"; command += ", [U/C]"; command += ", [Data]"; command += ")VALUES("; command += "@Linia"; command += ", @Codi"; command += ", @Baixa"; command += ", @Descripcio"; command += ", @Caixa"; command += ", @Fraccio"; command += ", @Pes"; command += ", @P_Cost"; command += ", @P_Recomanat"; command += ", @P_Fraccio"; command += ", @Iva"; command += ", @Familia"; command += ", @SubFamilia"; command += ", @Mesura"; command += ", @FactorConversio"; command += ", @UC"; command += ", @Data"; command += ")"; OleDbCommand Cmd = new OleDbCommand(command, connection); Cmd.Parameters.Add("@Linia", OleDbType.VarChar, 1).Value = "L"; Cmd.Parameters.Add("@Codi", OleDbType.VarChar, 6).Value = curr_prod.codi_article; Cmd.Parameters.Add("@Baixa", OleDbType.VarChar, 1).Value = curr_prod.marca_de_baixa_str; Cmd.Parameters.Add("@Descripcio", OleDbType.VarChar, 35).Value = curr_prod.descripcio; Cmd.Parameters.Add("@Caixa", OleDbType.Integer).Value = curr_prod.unitats_caixa; Cmd.Parameters.Add("@Fraccio", OleDbType.Integer).Value = curr_prod.unitats_fraccio; Cmd.Parameters.Add("@Pes", OleDbType.VarChar, 1).Value = curr_prod.marca_de_pes_str; Cmd.Parameters.Add("@P_Cost", OleDbType.Double).Value = curr_prod.preu_unitari; Cmd.Parameters.Add("@P_Recomanat", OleDbType.Double).Value = curr_prod.preu_venta_public_recomanat; Cmd.Parameters.Add("@P_Fraccio", OleDbType.Double).Value = curr_prod.preu_de_fraccio; Cmd.Parameters.Add("@Iva", OleDbType.VarChar, 1).Value = curr_prod.tipus_iva; Cmd.Parameters.Add("@Familia", OleDbType.VarChar, 2).Value = curr_prod.codi_familia; Cmd.Parameters.Add("@SubFamilia", OleDbType.VarChar, 2).Value = curr_prod.codi_sub_familia; Cmd.Parameters.Add("@Mesura", OleDbType.VarChar, 1).Value = curr_prod.unitats_mesura; Cmd.Parameters.Add("@FactorConversio", OleDbType.VarChar, 6).Value = curr_prod.factor_de_conversio; Cmd.Parameters.Add("@UC", OleDbType.Integer).Value = curr_prod.unitats_caixa; Cmd.Parameters.Add("@Data", OleDbType.Date).Value = data_actual; ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd); } } } return(ret); }