Ejemplo n.º 1
0
        public CustomerVO GetCustomerInformationFromRegistrationId(int id)
        {
            List <CustomerVO> results = new List <CustomerVO>();

            try
            {
                command    = new OleDbCommand("SELECT customer_id, registration_id, first_name, last_name, address, phone_number, email, status, join_date FROM Customer WHERE registration_id = '" + id + "'", connection);
                dataReader = command.ExecuteReader();

                while (dataReader.Read())
                {
                    // Note: I'm not adding the registration_id to the VO b/c it would link Customer Information to their login information in the app code.
                    results.Add(new CustomerVO(dataReader.GetInt32(0), -1, dataReader.GetString(2), dataReader.GetString(3), dataReader.GetString(4), dataReader.GetString(5), dataReader.GetString(6), dataReader.GetString(7), dataReader.GetDateTime(8).ToString()));
                }

                if (results.Count > 1)
                {
                    // Referential Integrity violation.  Application side constraint that we can't have multiple records refer to the same RegistrationID.
                    results.Clear();
                    results = null;
                    throw new Exception("System Error - Referential Integrity Violation");
                }
                else if (results.Count < 1)
                {
                    // Forces the LoginForm to try something else... say check the Employee table or something.  And then check if that employee is a manager or something.
                    results.Clear();
                    results = null;
                }
            }
            catch (Exception e)
            {
                if (OnFormError != null)
                {
                    OnFormError(this, new FormErrorArg("Error getting information from database: " + e.Message, e));
                }
                results = null;
            }

            if (results != null)
            {
                return(results[0]);
            }
            else
            {
                return(null);
            }
        }
Ejemplo n.º 2
0
        public bool LoadDataBase()
        {
            bool ret = false;

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

                Fitxer f = DataManager.Instance.NewFitxer();

                OleDbCommand Cmd = new OleDbCommand("SELECT * FROM ArticlesMagsa", connection);

                OleDbDataReader data = Managers.DBManager.Instance.ExecuteReader(connection, Cmd);

                if (data != null)
                {
                    while (data.Read())
                    {
                        Producte prod = new Producte();

                        prod.codi_article                = data.GetString(1);
                        prod.marca_de_baixa              = ParserManager.Instance.guide.GetMarcaDeBaixa(data.GetString(2)[0]);
                        prod.descripcio                  = data.GetString(3);
                        prod.unitats_caixa               = Convert.ToInt32(data.GetValue(4));
                        prod.unitats_fraccio             = Convert.ToInt32(data.GetValue(5));
                        prod.marca_de_pes                = ParserManager.Instance.guide.GetMarcaDePes(data.GetString(6)[0]);
                        prod.preu_unitari                = data.GetDouble(7);
                        prod.preu_venta_public_recomanat = data.GetDouble(8);
                        prod.preu_de_fraccio             = data.GetDouble(9);
                        prod.tipus_iva        = ParserManager.Instance.guide.GetTipusIva(data.GetString(10)[0]);
                        prod.codi_familia     = Convert.ToInt32(data.GetValue(11));
                        prod.codi_sub_familia = Convert.ToInt32(data.GetValue(12));
                        prod.unitats_mesura   = ParserManager.Instance.guide.GetUnitatsMesura(data.GetString(13)[0]);
                        int factor_de_conversio = 0;
                        prod.factor_de_conversio = 0; int.TryParse(data.GetString(14), out factor_de_conversio);
                        prod.factor_de_conversio = factor_de_conversio;
                        prod.unitats_caixa       = Convert.ToInt32(data.GetValue(15));

                        f.productes.Add(prod);
                    }

                    data.Close();

                    ret = true;
                }

                OleDbCommand Cmd2 = new OleDbCommand("SELECT * FROM BarresMagsa", connection);

                OleDbDataReader data2 = Managers.DBManager.Instance.ExecuteReader(connection, Cmd2);

                if (data2 != null)
                {
                    while (data2.Read())
                    {
                        CodiEan ean = new CodiEan();

                        ean.codi_article = data2.GetString(1);
                        ean.codi_ean     = data2.GetString(2);

                        f.eans.Add(ean);
                    }

                    f.MakeEanProducteRelations();

                    data2.Close();

                    ret = true;
                }

                OleDbCommand Cmd3 = new OleDbCommand("SELECT * FROM RegistreImportacio", connection);

                OleDbDataReader data3 = Managers.DBManager.Instance.ExecuteReader(connection, Cmd3);

                if (data3 != null)
                {
                    while (data3.Read())
                    {
                        f.nom             = data3.GetString(0);
                        f.data_importacio = data3.GetDateTime(1);
                    }

                    data3.Close();
                }

                Managers.DBManager.Instance.CloseConexion(connection);
            }
            return(ret);
        }