Ejemplo n.º 1
0
        void ParseLine(string line)
        {
            Fitxer f = Managers.DataManager.Instance.GetFitxer();

            int cursor_pos = 0;

            line = line.Replace("\n", "");
            line = line.Replace("\r", "");

            if (line[cursor_pos] == 'C')
            {
                ParseCapçalera(line, cursor_pos);
            }

            if (line[cursor_pos] == 'L')
            {
                Producte prod = new Producte();

                ParseArticle(line, cursor_pos, ref prod);

                f.productes.Add(prod);
            }

            if (line[cursor_pos] == 'E')
            {
                CodiEan curr_ean = new CodiEan();

                ParseCodiEan(line, cursor_pos, ref curr_ean);

                f.eans.Add(curr_ean);
            }

            if (line[cursor_pos] == 'F')
            {
                ParseFinalFitxer(line, cursor_pos);

                f.MakeEanProducteRelations();
            }
        }
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);
        }