Exemplo n.º 1
0
 private void GrabarProducto(ProyectoProducto obj)
 {
     if (obj.Id_Producto == 0)
     {
         var producto = (from p in consultas.Db.ProyectoProductos
                         where p.NomProducto == obj.NomProducto && p.CodProyecto == obj.CodProyecto
                         select p).FirstOrDefault();
         if (producto == null)
         {
             consultas.Db.ProyectoProductos.InsertOnSubmit(obj);
             consultas.Db.SubmitChanges();
             idProducto = obj.Id_Producto;
         }
         else
         {
             ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "alertMessage", "alert('Ya existe un producto registrado con el nombre de " + obj.NomProducto + ".')", true);
             return;
         }
     }
     else
     {
         var producto = (from p in consultas.Db.ProyectoProductos
                         where p.Id_Producto == obj.Id_Producto
                         select p).FirstOrDefault();
         producto.NomProducto             = obj.NomProducto;
         producto.PorcentajeIva           = obj.PorcentajeIva;
         producto.PorcentajeRetencion     = obj.PorcentajeRetencion;
         producto.PorcentajeVentasContado = obj.PorcentajeVentasContado;
         producto.PorcentajeVentasPlazo   = obj.PorcentajeVentasPlazo;
         producto.PosicionArancelaria     = obj.PosicionArancelaria;
         producto.PrecioLanzamiento       = obj.PrecioLanzamiento;
         consultas.Db.SubmitChanges();
     }
 }
Exemplo n.º 2
0
 public static void Insert(ProyectoProducto producto)
 {
     using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
     {
         db.ProyectoProductos.InsertOnSubmit(producto);
         db.SubmitChanges();
     }
 }
Exemplo n.º 3
0
        protected void btnCreate_Click(object sender, EventArgs e)
        {
            try
            {
                ValidateFields();

                if (Negocio.PlanDeNegocioV2.Formulacion.Solucion.Producto.ExistProductoByName(txtNombreProducto.Text, txtUnidadMedida.Text, CodigoProyecto))
                {
                    throw new ApplicationException("Ya existe un producto con ese mismo nombre y unidad de medida.");
                }

                if (Negocio.PlanDeNegocioV2.Formulacion.Solucion.Producto.CountProductos(CodigoProyecto) >= 10)
                {
                    throw new ApplicationException("Ya has agredado el número máximo de productos que es 10.");
                }

                ProyectoProducto nuevoProducto = new ProyectoProducto()
                {
                    CodProyecto           = CodigoProyecto,
                    NomProducto           = txtNombreProducto.Text,
                    NombreComercial       = txtNombreComercial.Text,
                    UnidadMedida          = txtUnidadMedida.Text,
                    DescripcionGeneral    = txtDescripcionGeneral.Text,
                    CondicionesEspeciales = txtCondicionesEspeciales.Text,
                    Composicion           = txtComposicion.Text,
                    Otros = txtOtros.Text
                };

                Negocio.PlanDeNegocioV2.Formulacion.Solucion.Producto.Insert(nuevoProducto);

                Negocio.PlanDeNegocioV2.Utilidad.ProyectoGeneral.UpdateTab(CodigoTab, CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(CodigoTab, CodigoProyecto, usuario.IdContacto, true);
                Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_Paso2Proyeccion, CodigoProyecto, usuario.IdContacto, false);

                CloseAndRefreshParent(true);
            }
            catch (ApplicationException ex)
            {
                lblError.Visible = true;
                lblError.Text    = "Advertencia : " + ex.Message;
            }
            catch (Exception ex)
            {
                lblError.Visible = true;
                lblError.Text    = "Sucedio un error inesperado, intentalo de nuevo. Detalle : " + ex.Message;
            }
        }
Exemplo n.º 4
0
        public static void Update(ProyectoProducto producto)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                var currentProducto = db.ProyectoProductos.Single(filter => filter.Id_Producto.Equals(producto.Id_Producto));

                currentProducto.NomProducto           = producto.NomProducto;
                currentProducto.NombreComercial       = producto.NombreComercial;
                currentProducto.UnidadMedida          = producto.UnidadMedida;
                currentProducto.DescripcionGeneral    = producto.DescripcionGeneral;
                currentProducto.CondicionesEspeciales = producto.CondicionesEspeciales;
                currentProducto.Composicion           = producto.Composicion;
                currentProducto.Otros         = producto.Otros;
                currentProducto.Justificacion = producto.Justificacion;
                currentProducto.FormaDePago   = producto.FormaDePago;
                currentProducto.Iva           = producto.Iva;
                currentProducto.PorcentajeIva = producto.PorcentajeIva;

                db.SubmitChanges();
            }
        }
Exemplo n.º 5
0
        private void SalvarRegistro()
        {
            var prjProyecVentas = (from pv in consultas.Db.ProyectoMercadoProyeccionVentas
                                   where pv.CodProyecto == idProyecto
                                   select pv).FirstOrDefault();

            switch (prjProyecVentas.CodPeriodo)
            {
            case Constantes.CONST_Bimestre:
                filas  = 6;
                txtGrv = "Bimestre ";
                break;

            case Constantes.CONST_Trimestre:
                filas  = 4;
                txtGrv = "Trimestre ";
                break;

            case Constantes.CONST_Semestre:
                filas  = 2;
                txtGrv = "Semestre ";
                break;

            case Constantes.CONST_Mes:
                filas  = 12;
                txtGrv = "Mes ";
                break;
            }

            var posicion         = txtArancelPosicion.Text.Split(' ');
            var proyectoProducto = new ProyectoProducto
            {
                Id_Producto             = idProducto,
                CodProyecto             = idProyecto,
                NomProducto             = NombreProductoServicio.Value.Trim(),
                PorcentajeIva           = int.Parse(Iva.Value.Trim()),
                PorcentajeRetencion     = double.Parse(Retencion.Value.Trim()),
                PorcentajeVentasPlazo   = int.Parse(VentasCredito.Value.Trim()),
                PorcentajeVentasContado = (100 - int.Parse(VentasCredito.Value.Trim())),
                PosicionArancelaria     = posicion[0].Trim(),
                PrecioLanzamiento       = decimal.Parse(PrecioLanzamiento.Value.Trim())
            };

            GrabarProducto(proyectoProducto);

            //Inserta las unidades de ventas x periodo x año
            var txtSql = "delete from proyectoproductounidadesventas where CodProducto= " + idProducto;

            ejecutaReader(txtSql, 2);

            for (var i = 0; i <= filas; i++)                                // periodo
            {
                for (var j = 0; j <= prjProyecVentas.TiempoProyeccion; j++) // años
                {
                    var nombre   = "txt_Anio" + (j + 1) + "_Periodo" + (i + 1);
                    var unidades = Request.Form.Get(nombre); // (Label)tblProyecionVentas.FindControl(nombre);
                    if (unidades != null)
                    {
                        GrabarProductoProyeccion(unidades, (i + 1).ToString(), (j + 1).ToString());
                    }
                }
            }

            //Insertar los precios de venta del producto por año
            txtSql = "delete from ProyectoProductoPrecio where CodProducto=" + idProducto;
            ejecutaReader(txtSql, 2);

            for (var i = 0; i <= prjProyecVentas.TiempoProyeccion; i++)
            {
                var nombre     = "txtPrecioAnio" + (i + 1);
                var precioAnio = Request.Form.Get(nombre); // (TextBox)tblProyecionVentas.FindControl(nombre);
                if (precioAnio != null)
                {
                    GrabarPrecioProductoAnio((i + 1).ToString(), precioAnio);
                }
            }

            //Retonarmos a la pagina anterior
            ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "retorno", "location.href = '../Proyecto/PProyectoMercadoProyecciones.aspx'", true);
        }