public void ActualizarFormulasConDivisaExtranjera(int IdUsuario, double dolar)
        {
            this.dolar = dolar;
            DataTable TablaFormulas = cnDetFormula.ConsultaPorMoneda();

            int[] IdFormulas = new int[TablaFormulas.Rows.Count];
            for (int i = 0; i < TablaFormulas.Rows.Count; i++)
            {
                bool exists = false;
                for (int j = 0; j < IdFormulas.Length; j++)
                {
                    if (Convert.ToInt32(TablaFormulas.Rows[i]["IdFormula"].ToString()) == IdFormulas[j])
                    {
                        exists = true;
                    }
                }
                if (!exists)
                {
                    IdFormulas[i] = Convert.ToInt32(TablaFormulas.Rows[i]["IdFormula"]);
                }
            }
            for (int i = 0; i < IdFormulas.Length; i++)
            {
                if (IdFormulas[i] != 0)
                {
                    DataTable Detalles          = cnDetFormula.ConsultaPorFormula(IdFormulas[i]);
                    DataTable Formula           = cnFormulas.ConsultaPorId(IdFormulas[i]);
                    DataTable TablaProductosOld = cnProductos.ConsultaPorFormula(IdFormulas[i]);
                    int       IdFormula         = Convert.ToInt32(cnFormulas.Guardar(IdUsuario, CreaObjetoFormula(Formula), Detalles));
                    MoverProductos(IdFormula, TablaProductosOld);
                    cnProductos.BorrarPorFormula(IdFormulas[i]);
                    cnFormulas.Borrar(IdFormulas[i]);
                    for (int k = 0; k < Detalles.Rows.Count; k++)
                    {
                        cnDetFormula.Guardar(CreaObjetoDetalleFormula(k, IdFormula, Detalles, dolar, IdUsuario));
                    }
                }
            }
        }
        //void ActualizaPrecioInsumo(DataTable Insumo, decimal PrecioInsumo)
        //{
        //    new CNInsumos().Actualizar(new InsumosModel
        //    {
        //        IdInsumo = Convert.ToInt32(Insumo.Rows[0]["IdInsumo"]),
        //        NombreInsumo = Convert.ToString(Insumo.Rows[0]["NombreInsumo"]),
        //        NombreInterno = Convert.ToString(Insumo.Rows[0]["NombreInterno"]),
        //        IdProveedor = Convert.ToInt32(Insumo.Rows[0]["IdProveedor"]),
        //        UnidadMedida = Convert.ToString(Insumo.Rows[0]["UnidadMedida"]),
        //        PrecioUnitario = Convert.ToDouble(PrecioInsumo),
        //        IdFamilia = Convert.ToInt32(Insumo.Rows[0]["IdFamilia"]),
        //        IdMoneda = Convert.ToInt32(Insumo.Rows[0]["IdMoneda"]),
        //    });
        //}
        int CrearFormulaNueva(List <int> listaFormulas)
        {
            int IdFormula = 0;

            for (int i = 0; i < listaFormulas.Count; i++)
            {
                DataTable DetalleFormula = cnDetFormula.ConsultaPorFormula(listaFormulas[i]);

                IdFormula = 0;//Convert.ToInt32(Formulas.Guardar(AsignaRowObjetoFormula(BusquedaFormulas.Rows[0])));
                cnFormulas.Borrar(listaFormulas[i]);
                foreach (DataRow row in DetalleFormula.Rows)
                {
                    cnDetFormula.Borrar(Convert.ToInt32(row["IdDetalle"]));
                    row["IdFormula"] = IdFormula;
                    if (IdInsumo == Convert.ToInt32(row["IdInsumo"]))
                    {
                        row["CostoInsumo"] = CalculaPrecioDetalleFormula(Convert.ToString(row["UnidadMedidaInsumo"]), Convert.ToDouble(row["CantidadInsumo"]), Convert.ToInt32(row["IdMoneda"]));
                    }
                    cnDetFormula.Guardar(AsignaRowObjetoDetalleFormula(row));
                }
            }
            return(IdFormula);
        }
Exemple #3
0
        public DataSet PrintAFormula(int[] Idformula)
        {
            DataSet dtsret = new DataSet();

            #region "ConsultandoFormulas"
            DataTable Formula = new DataTable();
            if (Idformula.Length == 1)
            {
                Formula = cnFormulas.ConsultaPorId(Idformula[0]).Copy();
            }
            else
            {
                Formula = cnFormulas.ConsultaPorId(Idformula[0]).Copy();
                for (int i = 1; i < Idformula.Length; i++)
                {
                    Formula.ImportRow(cnFormulas.ConsultaPorId(Idformula[i]).Rows[0]);
                }
            }
            Formula.TableName = "Formula";
            dtsret.Tables.Add(Formula);
            #endregion
            #region "DetallesFormulas"
            DataTable DetallesFormula = new DataTable();
            if (Idformula.Length == 1)
            {
                DetallesFormula = cnDetFormula.ConsultaPorFormula(Idformula[0]).Copy();
            }
            else
            {
                DetallesFormula = cnDetFormula.ConsultaPorFormula(Idformula[0]).Copy();
                for (int i = 1; i < Idformula.Length; i++)
                {
                    DataTable Detalles = new DataTable();
                    Detalles = cnDetFormula.ConsultaPorFormula(Idformula[i]).Copy();
                    foreach (DataRow item in Detalles.Rows)
                    {
                        DetallesFormula.ImportRow(item);
                    }
                }
            }
            DetallesFormula.TableName = "DetallesFormula";
            dtsret.Tables.Add(DetallesFormula);
            #endregion
            #region "ConsultandoProductos"
            DataTable ProductosTerminados = new DataTable();
            if (Idformula.Length == 1)
            {
                ProductosTerminados = cnProductos.ConsultaPorFormula(Idformula[0]).Copy();
            }
            else
            {
                ProductosTerminados = cnProductos.ConsultaPorFormula(Idformula[0]).Copy();
                for (int i = 1; i < Idformula.Length; i++)
                {
                    DataTable Productos = cnProductos.ConsultaPorFormula(Idformula[i]).Copy();
                    foreach (DataRow item in Productos.Rows)
                    {
                        ProductosTerminados.ImportRow(item);
                    }
                }
            }
            ProductosTerminados.TableName = "ProductosTerminados";
            dtsret.Tables.Add(ProductosTerminados);
            #endregion
            #region "DetallesProductos"
            DataTable DetallesProducto = new DataTable();
            try
            {
                DetallesProducto = cnDetProducto.ConsultaDetallesPorProducto(Convert.ToInt32(ProductosTerminados.Rows[0]["IdProducto"])).Copy();
                if (ProductosTerminados.Rows.Count > 1)
                {
                    foreach (DataRow item in ProductosTerminados.Rows)
                    {
                        DataTable DetProd = new DataTable();
                        DetProd = cnDetProducto.ConsultaDetallesPorProducto(Convert.ToInt32(item["IdProducto"])).Copy();
                        foreach (DataRow item1 in DetProd.Rows)
                        {
                            DetallesProducto.ImportRow(item1);
                        }
                    }
                }
            }
            catch
            {
            }

            DetallesProducto.TableName = "DetallesProducto";
            dtsret.Tables.Add(DetallesProducto);
            #endregion
            return(dtsret);
        }