Example #1
0
        public static Int32 AplicaTipoIvaProds(string tipoInicial, string tipoFinal, bool AplicarPVP)
        {
            string    sql           = "select distinct prod.ID_ELEM from prod_productos prod inner join prpr_precios_producto prpr on prpr.COD_TIVA='" + tipoInicial + "' where prpr.VIGENTE_PRECIO='S'";
            DataTable prodAfectados = null;

            IGlobal.rellenar_datos(sql, ref prodAfectados);
            Productos lst  = Productos.ObtenInstancia();
            IVA       lsti = IVA.ObtenInstancia();

            foreach (DataRow reg in prodAfectados.Rows)
            {
                Producto p = lst.Buscar((Int64)reg["ID_ELEM"]);
                p.precio["COD_TIVA"] = tipoFinal;
                p.precio["PORC_IVA"] = lsti.ObtenPorcentajer(tipoFinal);
                if (AplicarPVP)
                {
                    p.precio["PRECIO_VENTA"] = lsti.AplicarIva((double)p.precio["PRECIO_BRUTO"], tipoFinal);
                }
                else
                {
                    p.precio["PRECIO_BRUTO"] = lsti.QuitaIva((double)p.precio["PRECIO_VENTA"], tipoFinal);
                }
                p.Guardar();
            }
            return(prodAfectados.Rows.Count);
        }