Esempio 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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }