Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        public bool AddEan(Managers.CodiEan curr_ean)
        {
            bool ret = true;

            if (connection != null)
            {
                Managers.DBManager.Instance.OpenConexion(connection);

                string check_command_text = "SELECT * FROM BarresMagsa WHERE Barres ='" + curr_ean.codi_ean + "' " +
                                            "AND Codi = '" + curr_ean.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 command4 = "DELETE FROM BarresMagsa WHERE Barres ='" + curr_ean.codi_ean + "' " +
                                      "AND Codi = '" + curr_ean.codi_article + "'";

                    OleDbCommand Cmd4 = new OleDbCommand(command4, connection);
                    ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd4);
                }

                if (ret)
                {
                    string command = "INSERT INTO BarresMagsa(";

                    command += "[Linia]";
                    command += ", [Codi]";
                    command += ", [Barres]";

                    command += ")VALUES(";

                    command += "@Linia";
                    command += ", @Codi";
                    command += ", @Barres";

                    command += ")";

                    OleDbCommand Cmd = new OleDbCommand(command, connection);
                    Cmd.Parameters.Add("@Linia", OleDbType.VarChar, 1).Value   = "E";
                    Cmd.Parameters.Add("@Codi", OleDbType.VarChar, 6).Value    = curr_ean.codi_article;
                    Cmd.Parameters.Add("@Barres", OleDbType.VarChar, 13).Value = curr_ean.codi_ean;

                    ret = Managers.DBManager.Instance.ExecuteQuery(connection, Cmd);
                }
            }

            return(ret);
        }