public void CargarPedidosActualesPendientes() //aca se guarda en memo toda la lista pedidos
        {
            string[] pedidoslineas = null;
            Elemento Element;
            Pedido   PedidoActual = new Pedido();

            if (File.Exists(rutapedidodiario)) // si se crashea el programa trata de levantar la lista pedido actual
            {
                string[] lineasplit    = null;
                int      lineacabecera = 1;
                pedidoslineas = File.ReadAllLines(rutapedidodiario);
                foreach (string linea in pedidoslineas)
                {
                    if (linea != string.Empty)
                    {
                        lineasplit = linea.Split(';');

                        if (lineasplit.Count() == 6)
                        {
                            if (lineacabecera != 1)
                            {
                                EmpresaInstanciada.GuardarPedido(PedidoActual);
                                //Cuando termino de cargar el pedido a la lista lo destruyo
                                PedidoActual = null;
                            }
                            else
                            {
                                lineacabecera = lineacabecera + 1;
                            }
                            //y Aca lo creo de vuelta cuando empiezo uno nuevo
                            PedidoActual                      = new Pedido();
                            PedidoActual.codigo               = lineasplit[0];
                            PedidoActual.comercio.codigo      = lineasplit[1];
                            PedidoActual.comercio.razonsocial = lineasplit[2];
                            PedidoActual.comercio.cuit        = lineasplit[3];
                            PedidoActual.comercio.domicilio   = lineasplit[4];
                            PedidoActual.EnviadoLogistica     = Convert.ToBoolean(lineasplit[5]);
                        }
                        else
                        {
                            Element             = new Elemento();
                            Element.prod.idprod = lineasplit[0];
                            Element.cantidad    = Convert.ToInt32(lineasplit[1]);
                            PedidoActual.GuardarPedido(Element);
                        }
                    }
                }
                //Luego de que termino el ultimo detalle no agregaba el pedido a la empresa instanciada entonces lo hago fuera
                //Agus esta linea del  la cree por que si el archivo estaba vacio agregaba una linea sin nada separada por ;
                //Entonces solo controlo que agrego un pedido a la lista si tiene algo
                if (PedidoActual.codigo != null)
                {
                    EmpresaInstanciada.GuardarPedido(PedidoActual);
                }
            }
        }
Beispiel #2
0
        public void CargarPedidosActualesPendientes() //aca se guarda en memo toda la lista pedidos
        {
            string[] pedidoslineas = null;
            Elemento Element;
            Pedido   PedidoActual = new Pedido();

            if (File.Exists(rutapedidodiario)) // si se crashea el programa trata de levantar la lista pedido actual
            {
                string[] lineasplit    = null;
                int      lineacabecera = 1;
                pedidoslineas = File.ReadAllLines(rutapedidodiario);
                foreach (string linea in pedidoslineas)
                {
                    if (linea != string.Empty)
                    {
                        lineasplit = linea.Split(';');

                        if (lineasplit.Count() == 6)
                        {
                            if (lineacabecera != 1)
                            {
                                EmpresaInstanciada.GuardarPedido(PedidoActual);
                                //Cuando termino de cargar el pedido a la lista lo destruyo
                                PedidoActual = null;
                            }
                            else
                            {
                                lineacabecera = lineacabecera + 1;
                            }
                            //y Aca lo creo de vuelta cuando empiezo uno nuevo
                            PedidoActual                      = new Pedido();
                            PedidoActual.codigo               = lineasplit[0];
                            PedidoActual.comercio.codigo      = lineasplit[1];
                            PedidoActual.comercio.razonsocial = lineasplit[2];
                            PedidoActual.comercio.cuit        = lineasplit[3];
                            PedidoActual.comercio.domicilio   = lineasplit[4];
                            PedidoActual.EnviadoLogistica     = Convert.ToBoolean(lineasplit[5]);
                        }
                        else if (lineasplit.Count() == 2)
                        {
                            int cantidad = 0;
                            if (int.TryParse(lineasplit[1], out cantidad))
                            {
                                Element             = new Elemento();
                                Element.prod.idprod = lineasplit[0];
                                Element.cantidad    = cantidad;
                                PedidoActual.GuardarPedido(Element);
                            }
                            else
                            {
                                throw new Exception("Error en el formato del archivo de Pedidos Pendientes,no se pudo procesar correctamente.");
                            }
                        }
                        else
                        {
                            throw new Exception("Error en el formato del archivo de Pedidos Pendientes,no se pudo procesar correctamente.");
                        }
                    }
                }

                if (PedidoActual.codigo != null)
                {
                    EmpresaInstanciada.GuardarPedido(PedidoActual);
                }
            }
            else
            {
                using (StreamWriter sw = File.CreateText(rutapedidodiario))
                {
                    sw.Flush();
                }
            }
        }