Exemple #1
0
        protected void BtnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                ProyectoSolucion entSolucion = new Datos.ProyectoSolucion()
                {
                    AceptacionProyecto       = CKComoValido.Text.Trim(),
                    Comercial                = CKComercial.Text.Trim(),
                    ConceptoNegocio          = CKConceptoNegocio.Text.Trim(),
                    IdProyecto               = Encabezado.CodigoProyecto,
                    InnovadorConceptoNegocio = CKConceptoNegocio2.Text.Trim(),
                    Legal             = CKLegal.Text.Trim(),
                    Proceso           = CKProceso.Text.Trim(),
                    ProductoServicio  = CKProductoServicio.Text.Trim(),
                    TecnicoProductivo = CKTecnicoproductivo.Text.Trim()
                };

                string msg;
                bool   resul = Negocio.PlanDeNegocioV2.Formulacion.Solucion.Solucion.Insertar(entSolucion, out msg);

                if (resul)
                {
                    Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_Parte1Solucion, Encabezado.CodigoProyecto, usuario.IdContacto, true);

                    ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_Parte1Solucion, Encabezado.CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                    Encabezado.ActualizarFecha();
                }

                Alert(msg);
            }
            catch (Exception)
            {
                Alert(Negocio.Mensajes.Mensajes.GetMensaje(7));
            }
        }
        protected void BtnGuardar_Click(object sender, EventArgs e)
        {
            //validar que se haya agregado competidores al plan
            if (Negocio.PlanDeNegocioV2.Formulacion.OportunidadMercado.Competidores.GetCompetidores(Encabezado.CodigoProyecto).Count() <= 0)
            {
                Alert(Negocio.Mensajes.Mensajes.GetMensaje(12));
                return;
            }

            ProyectoOportunidadMercado entOportunidad = new ProyectoOportunidadMercado()
            {
                IdProyecto           = Encabezado.CodigoProyecto,
                TendenciaCrecimiento = CKTendencia.Text.Trim()
            };

            string msg;
            bool   resul = Negocio.PlanDeNegocioV2.Formulacion.OportunidadMercado.Oportunidad.InsertarOportunidad(entOportunidad, out msg);

            //FonadeUser usuario = (FonadeUser)Session["usuarioLogged"];
            FonadeUser usuario = HttpContext.Current.Session["usuarioLogged"] != null ?
                                 (FonadeUser)HttpContext.Current.Session["usuarioLogged"] :
                                 (FonadeUser)Membership.GetUser(HttpContext.Current.User.Identity.Name, true);


            if (resul)
            {
                Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_OportunidadMercado, Encabezado.CodigoProyecto, usuario.IdContacto, true);

                ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_OportunidadMercado, Encabezado.CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                Encabezado.ActualizarFecha();
            }

            Alert(msg);
        }
Exemple #3
0
        protected void btnUpdateTab_Click(object sender, EventArgs e)
        {
            try
            {
                //verificar que la pestaña este completa para marcarla como realizado
                if (chkEsRealizado.Checked && !Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.VerificarTabSiEstaCompleta(CodigoTab, CodigoProyecto))
                {
                    chkEsRealizado.Checked = false;
                    ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('" + Negocio.Mensajes.Mensajes.GetMensaje(19) + "');", true);
                    return;
                }

                ProyectoGeneral.UpdateTab(CodigoTab, CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, chkEsRealizado.Checked);
                ActualizarFecha();

                //Recarga la pagina
                Response.Redirect(Request.RawUrl);
            }
            catch (ApplicationException ex)
            {
                chkEsRealizado.Checked = false;
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Advertencia, detalle : " + ex.Message + "');", true);
            }
            catch (Exception ex)
            {
                chkEsRealizado.Checked = false;
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Sucedio un error, intentelo de nuevo. detalle : " + ex.Message + " ');", true);
            }
        }
Exemple #4
0
        protected void btnGuardarProtagonista_Click(object sender, EventArgs e)
        {
            try
            {
                //validar que se haya agregado clientes al plan
                if (Negocio.PlanDeNegocioV2.Formulacion.Protagonista.Protagonista.GetClientes(Encabezado.CodigoProyecto).Count() <= 0)
                {
                    Alert(Negocio.Mensajes.Mensajes.GetMensaje(11));
                    return;
                }


                ProyectoProtagonista entProtagonista = new ProyectoProtagonista()
                {
                    PerfilesDiferentes                 = DropDownPerfiles.SelectedValue.Equals("1"),
                    IdProyecto                         = Encabezado.CodigoProyecto,
                    NecesidadesPotencialesClientes     = CKCliente.Text.Trim(),
                    NecesidadesPotencialesConsumidores = DropDownPerfiles.SelectedValue.Equals("1") ? CKConsumidores.Text.Trim() : null,
                    PerfilConsumidor                   = DropDownPerfiles.SelectedValue.Equals("1") ? CKPerfilConsumidor.Text.Trim() : null
                };

                string msg;
                bool   resul = Negocio.PlanDeNegocioV2.Formulacion.Protagonista.Protagonista.InsertarProtagonista(entProtagonista, out msg);

                FonadeUser usuario = (FonadeUser)Session["usuarioLogged"]; if (usuario == null)
                {
                    Response.Redirect("~/Account/Login.aspx");
                }
                if (resul)
                {
                    Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_Protagonista, Encabezado.CodigoProyecto, usuario.IdContacto, true);

                    //actualiza el tab de condiciones comerciales en completo=false
                    if (!DropDownPerfiles.SelectedValue.Equals(DropDownPerfiles.Attributes["PerfilDiferente"]))
                    {
                        if (DropDownPerfiles.SelectedValue.Equals("1"))
                        {
                            Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_Paso1IngresoCondicionesComerciales, Encabezado.CodigoProyecto, usuario.IdContacto, false);
                        }
                    }

                    ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_Protagonista, Encabezado.CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                    Encabezado.ActualizarFecha();

                    CargarProtagonista();
                }

                Alert(msg);
            }
            catch (Exception ex)
            {
                Alert(Negocio.Mensajes.Mensajes.GetMensaje(7));
            }
        }
Exemple #5
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                if (cmbTiempoProyeccion.SelectedValue.Equals(string.Empty))
                {
                    throw new ApplicationException("Debe seleccionar el tiempo de proyección.");
                }

                var proyeccion = Negocio.PlanDeNegocioV2.Formulacion.DesarrolloSolucion.Proyeccion.GetTiempoProyeccion(CodigoProyecto);
                if (proyeccion == null)
                {
                    var nuevaProyeccion = new ProyectoMercadoProyeccionVenta
                    {
                        CodProyecto      = CodigoProyecto,
                        FechaArranque    = DateTime.Now,
                        CodPeriodo       = 1,
                        TiempoProyeccion = (byte)Convert.ToInt16(cmbTiempoProyeccion.SelectedValue),
                        MetodoProyeccion = "N/A",
                        PoliticaCartera  = "N/A",
                        CostoVenta       = "N/A",
                        justificacion    = "N/A"
                    };

                    Negocio.PlanDeNegocioV2.Formulacion.DesarrolloSolucion.Proyeccion.Insert(nuevaProyeccion);
                }
                else
                {
                    proyeccion.TiempoProyeccion = (byte)Convert.ToInt16(cmbTiempoProyeccion.SelectedValue);

                    Negocio.PlanDeNegocioV2.Formulacion.DesarrolloSolucion.Proyeccion.Update(proyeccion);
                }
                //marcar tab como completado
                Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_Paso2Proyeccion, Encabezado.CodigoProyecto, usuario.IdContacto, true);

                ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_Paso2Proyeccion, Encabezado.CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                Encabezado.ActualizarFecha();
                Formulacion.Utilidad.Utilidades.PresentarMsj(Negocio.Mensajes.Mensajes.GetMensaje(8), this, "Alert");
                lblError.Visible = false;
                gvIngresosPorVentas.DataBind();
                GetTiempoProyeccion(CodigoProyecto);
            }
            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;
            }
        }
Exemple #6
0
        protected void btnGuardarCliente_Click(object sender, EventArgs e)
        {
            try
            {
                string msg;
                bool   resul;

                ProyectoProtagonistaCliente entCliente = new ProyectoProtagonistaCliente()
                {
                    Nombre        = txtNombreCliente.Text.Trim(),
                    Perfil        = txtPerfil.Text.Trim(),
                    Localizacion  = txtLocalizacion.Text.Trim(),
                    Justificacion = txtJustificacion.Text.Trim(),
                    IdProyecto    = IdProyecto
                };

                //idcliente > 0 editar
                if (IdCliente > 0)
                {
                    entCliente.IdCliente = IdCliente;
                    resul = Negocio.PlanDeNegocioV2.Formulacion.Protagonista.Protagonista.EditarClientes(entCliente, out msg);
                }
                else//insertar
                {
                    resul = Negocio.PlanDeNegocioV2.Formulacion.Protagonista.Protagonista.InsertarClientes(entCliente, out msg);
                }
                //actualizar la grilla de la pagina principal
                ScriptManager.RegisterStartupScript(Page, typeof(Page), "upd", "window.opener.__doPostBack('', 'updGrillaClientes');", true);

                if (resul)
                {
                    FonadeUser usuario = (FonadeUser)Session["usuarioLogged"];
                    if (Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.VerificarTabSiEstaCompleta(Constantes.CONST_Paso1IngresoCondicionesComerciales, usuario.IdContacto))
                    {
                        Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_Paso1IngresoCondicionesComerciales, IdProyecto, usuario.IdContacto, false);
                    }

                    ClientScript.RegisterStartupScript(this.GetType(), "Close", "<script>window.close();</script> ");
                    ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_Protagonista, IdProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                }

                else
                {
                    Alert(msg);
                }
            }
            catch (Exception ex)
            {
                //todo guardar log
                Alert(ex.Message);
            }
        }
Exemple #7
0
        protected void btm_guardarCambios_Click(object sender, EventArgs e)
        {
            try
            {
                ProyectoMercadoEstrategiaNegocio pmeNegocio = new ProyectoMercadoEstrategiaNegocio();
                var query = getProyectoMercadoEstrategia(CodigoProyecto);

                if (query == null)
                {
                    query = new ProyectoMercadoEstrategia()
                    {
                        CodProyecto                  = CodigoProyecto,
                        ConceptoProducto             = txtConcepto.Text.htmlEncode(),
                        EstrategiasDistribucion      = txtEstrategiasDistribucion.Text.htmlEncode(),
                        EstrategiasPrecio            = txtEstrategiasPrecio.Text.htmlEncode(),
                        EstrategiasPromocion         = txtEstrategiaPromocion.Text.htmlEncode(),
                        EstrategiasComunicacion      = txtEstrategiaComunicacion.Text.htmlEncode(),
                        EstrategiasServicio          = txtEstrategiaServicio.Text.htmlEncode(),
                        EstrategiasAprovisionamiento = txtEstrategiaAprovisionamiento.Text.htmlEncode(),
                        PresupuestoMercado           = txtPresupuestoMercadeo.Text.htmlEncode()
                    };

                    pmeNegocio.Agregar(query);
                }
                else
                {
                    query.ConceptoProducto             = txtConcepto.Text.htmlEncode();
                    query.EstrategiasDistribucion      = txtEstrategiasDistribucion.Text.htmlEncode();
                    query.EstrategiasPrecio            = txtEstrategiasPrecio.Text.htmlEncode();
                    query.EstrategiasPromocion         = txtEstrategiaPromocion.Text.htmlEncode();
                    query.EstrategiasComunicacion      = txtEstrategiaComunicacion.Text.htmlEncode();
                    query.EstrategiasServicio          = txtEstrategiaServicio.Text.htmlEncode();
                    query.EstrategiasAprovisionamiento = txtEstrategiaAprovisionamiento.Text.htmlEncode();
                    query.PresupuestoMercado           = txtPresupuestoMercadeo.Text.htmlEncode();

                    pmeNegocio.Modificar(query);
                }

                ProyectoGeneral.UpdateTab(CodigoTab, CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, chkEsRealizado.Checked);
                ProyectoGeneral.GetUltimaActualizacion(lblUltimaActualizacion, lblFechaUltimaActualizacion, chkEsRealizado, btnUpdateTab, CodigoTab, CodigoProyecto);
            }
            catch (ApplicationException ex)
            {
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Advertencia, detalle : " + ex.Message + "');", true);
            }
            catch (Exception ex)
            {
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Sucedio un error, intentelo de nuevo. detalle : " + ex.Message + " ');", true);
            }
        }
        protected void btnGuardarCompetidor_Click(object sender, EventArgs e)
        {
            try
            {
                string msg;
                bool   resul;

                ProyectoOportunidadMercadoCompetidore entCompetidor = new ProyectoOportunidadMercadoCompetidore()
                {
                    IdProyecto            = IdProyecto,
                    Localizacion          = txtLocalizacion.Text.Trim(),
                    LogisticaDistribucion = TxtLogistica.Text.Trim(),
                    Nombre             = txtNombreCompetidor.Text.Trim(),
                    OtroCual           = txtOtroCual.Text.Trim(),
                    Precios            = txtPrecios.Text.Trim(),
                    ProductosServicios = txtProductos.Text.Trim()
                };

                //idcliente > 0 editar
                if (IdCompetidor > 0)
                {
                    entCompetidor.IdCompetidor = IdCompetidor;
                    resul = Negocio.PlanDeNegocioV2.Formulacion.OportunidadMercado.Competidores.EditarCompetidor(entCompetidor, out msg);
                }
                else//insertar
                {
                    entCompetidor.IdProyecto = IdProyecto;
                    resul = Negocio.PlanDeNegocioV2.Formulacion.OportunidadMercado.Competidores.InsertarCompetidores(entCompetidor, out msg);
                }
                //actualizar la grilla de la pagina principal
                ScriptManager.RegisterStartupScript(Page, typeof(Page), "upd", "window.opener.__doPostBack('', 'updGrillaCompetidores');", true);

                if (resul)
                {
                    FonadeUser usuario = (FonadeUser)Session["usuarioLogged"];
                    ClientScript.RegisterStartupScript(this.GetType(), "Close", "<script>window.close();</script> ");
                    ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_OportunidadMercado, IdProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                }
                else
                {
                    Alert(msg);
                }
            }
            catch (Exception ex)
            {
                //todo guardar log
                Alert(ex.Message);
            }
        }
Exemple #9
0
        protected void BtnGuardar_Click(object sender, EventArgs e)
        {
            //validar que se haya agregado promocion al plan
            if (Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.Actividades.Get(Encabezado.CodigoProyecto, (int)Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.TipoEstrategia.Promocion).Count() <= 0)
            {
                Alert(Negocio.Mensajes.Mensajes.GetMensaje(15));
                return;
            }
            //validar que se haya agregado comunicacion al plan
            if (Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.Actividades.Get(Encabezado.CodigoProyecto, (int)Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.TipoEstrategia.Comunicacion).Count() <= 0)
            {
                Alert(Negocio.Mensajes.Mensajes.GetMensaje(16));
                return;
            }

            //validar que se haya agregado distribucion al plan
            if (Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.Actividades.Get(Encabezado.CodigoProyecto, (int)Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.TipoEstrategia.Distribucion).Count() <= 0)
            {
                Alert(Negocio.Mensajes.Mensajes.GetMensaje(17));
                return;
            }


            ProyectoFuturoNegocio entFuturo = new ProyectoFuturoNegocio()
            {
                IdProyecto                      = Encabezado.CodigoProyecto,
                EstrategiaComunicacion          = txtComunicacion.Text.Trim(),
                EstrategiaComunicacionProposito = txtPropositoCom.Text.Trim(),
                EstrategiaDistribucion          = txtDistribucion.Text.Trim(),
                EstrategiaDistribucionProposito = txtPropositoDis.Text.Trim(),
                EstrategiaPromocion             = txtPromocion.Text.Trim(),
                EstrategiaPromocionProposito    = txtProposito.Text.Trim()
            };

            string msg;
            bool   resul = Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.FuturoNegocio.Insertar(entFuturo, out msg);

            if (resul)
            {
                Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_Estrategias, Encabezado.CodigoProyecto, usuario.IdContacto, true);

                ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_Estrategias, Encabezado.CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                Encabezado.ActualizarFecha();
            }

            Alert(msg);
            ScriptManager.RegisterStartupScript(Page, typeof(Page), "scroll", "SetScroll(900);", true);
        }
 protected void btnUpdateTab_Click(object sender, EventArgs e)
 {
     try
     {
         ProyectoGeneral.UpdateTab(CodigoTab, CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, chkEsRealizado.Checked);
     }
     catch (ApplicationException ex)
     {
         chkEsRealizado.Checked = false;
         ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Advertencia, detalle : " + ex.Message + "');", true);
     }
     catch (Exception ex)
     {
         chkEsRealizado.Checked = false;
         ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Sucedio un error, intentelo de nuevo. detalle : " + ex.Message + " ');", true);
     }
 }
        protected void BtnGuardar_Click(object sender, EventArgs e)
        {
            ProyectoPeriodoArranque entArranque = new ProyectoPeriodoArranque()
            {
                IdProyecto          = Encabezado.CodigoProyecto,
                PeriodoArranque     = CKArranque.Text.Trim(),
                PeriodoImproductivo = CKImproductivo.Text.Trim()
            };

            string msg;
            bool   resul = Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.PeriodoArranque.Insertar(entArranque, out msg);

            if (resul)
            {
                Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_PeriododeArranqueEImproductivo, Encabezado.CodigoProyecto, usuario.IdContacto, true);

                ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_PeriododeArranqueEImproductivo, Encabezado.CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                Encabezado.ActualizarFecha();
            }

            Alert(msg);
        }
Exemple #12
0
        protected void BtnGuardar_Click(object sender, EventArgs e)
        {
            ProyectoRiesgo entRiesgo = new ProyectoRiesgo()
            {
                IdProyecto       = Encabezado.CodigoProyecto,
                ActoresExternos  = CKActores.Text.Trim(),
                FactoresExternos = CKFactores.Text.Trim()
            };

            string msg;
            bool   resul = Negocio.PlanDeNegocioV2.Formulacion.Riesgos.Riesgos.Insertar(entRiesgo, out msg);

            if (resul)
            {
                Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_Riesgos, Encabezado.CodigoProyecto, usuario.IdContacto, true);

                ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_Riesgos, Encabezado.CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, false);
                Encabezado.ActualizarFecha();
            }

            Alert(msg);
        }
        protected void btm_guardarCambios_Click(object sender, EventArgs e)
        {
            try
            {
                ProyectoMercadoInvestigacionNegocio pmiNeg = new ProyectoMercadoInvestigacionNegocio();
                var query = getProyectoMercadoInvestigacions(CodigoProyecto);

                ProyectoMercadoInvestigacion pmv = new ProyectoMercadoInvestigacion()
                {
                    CodProyecto         = Convert.ToInt32(CodigoProyecto),
                    AnalisisSector      = txt_analisisS.Text.htmlEncode(),
                    AnalisisMercado     = txt_analisisM.Text.htmlEncode(),
                    AnalisisCompetencia = txt_analisisC.Text.htmlEncode(),
                    Objetivos           = txt_objetivos.Text.htmlEncode(),
                    Justificacion       = txt_justificacion.Text.htmlEncode()
                };

                if (query == null)
                {
                    pmiNeg.Agregar(pmv);
                }
                else
                {
                    pmiNeg.Modificar(pmv);
                }

                ProyectoGeneral.UpdateTab(CodigoTab, CodigoProyecto, usuario.IdContacto, usuario.CodGrupo, chkEsRealizado.Checked);
                ProyectoGeneral.GetUltimaActualizacion(lblUltimaActualizacion, lblFechaUltimaActualizacion, chkEsRealizado, btnUpdateTab, CodigoTab, CodigoProyecto);
            }
            catch (ApplicationException ex)
            {
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Advertencia, detalle : " + ex.Message + "');", true);
            }
            catch (Exception ex)
            {
                ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Mensaje", "alert('Sucedio un error, intentelo de nuevo. detalle : " + ex.Message + " ');", true);
            }
        }
Exemple #14
0
        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            ProyectoEstrategiaActividade entActividad = new ProyectoEstrategiaActividade()
            {
                Actividad          = txtActividad.Text.Trim(),
                Costo              = decimal.Parse(txtCosto.Text.Replace(",", "").Replace(".", ",")),
                IdTipoEstrategia   = IdTipo,
                IdProyecto         = IdProyecto,
                MesEjecucion       = txtMes.Text.Trim(),
                RecursosRequeridos = txtRecursos.Text.Trim(),
                Responsable        = txtResponsable.Text.Trim()
            };
            string msg;
            bool   resul;

            //idcliente > 0 editar
            if (IdActividad > 0)
            {
                entActividad.IdActividad = IdActividad;
                resul = Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.Actividades.Editar(entActividad, out msg);
            }
            else//insertar
            {
                resul = Negocio.PlanDeNegocioV2.Formulacion.FuturoDelNegocio.Actividades.Insertar(entActividad, out msg);
            }
            //actualizar la grilla de la pagina principal
            ScriptManager.RegisterStartupScript(Page, typeof(Page), "upd", "window.opener.__doPostBack('', '" + IdTipo + "');", true);

            if (resul)
            {
                ScriptManager.RegisterStartupScript(Page, typeof(Page), "close", "window.close();", true);
                ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_Estrategias, IdProyecto, usuario.IdContacto, usuario.CodGrupo, false);
            }
            else
            {
                Alert(msg);
            }
        }
        protected void BtnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                FieldValidate.ValidateNumeric("Periodo improductivo", txtPeriodoImproductivo.Text, true);
                FieldValidate.ValidateString("Recursos aportados", txtRecursosAportados.Text.Trim(), true, 255);

                int?idProductoRepresentativo = GetProductoRepresentativo();

                if (idProductoRepresentativo == null)
                {
                    throw new ApplicationException("Debe seleccionar el producto mas presentativo.");
                }

                if (!txtEnlaceVideoEmprendedor.Text.Trim().Contains("https://www.youtube.com/watch?v"))
                {
                    lblErrorVideo.Visible = true;
                    lblErrorVideo.Text    = "Advertencia: La url del video no tiene el formato correcto.";
                    throw new ApplicationException("La url del video no tiene el formato correcto.");
                }


                ProyectoResumenEjecutivoV2 entResumen = new ProyectoResumenEjecutivoV2()
                {
                    ConceptoNegocio              = CKConcepto.Text.Trim(),
                    IdProyecto                   = Encabezado.CodigoProyecto,
                    IndicadorContraPartido       = txtSena.Text.Trim(),
                    IndicadorEmpleos             = txtEmpleo.Text.Trim(),
                    IndicadorEmpleosDirectos     = txtIndirectos.Text.Trim(),
                    IndicadorMercadeo            = txtMercadeo.Text.Trim(),
                    IndicadorVentas              = txtVentas.Text.Trim(),
                    PeriodoImproductivo          = Convert.ToInt32(txtPeriodoImproductivo.Text),
                    RecursosAportadosEmprendedor = txtRecursosAportados.Text.Trim(),
                    ProductoMasRepresentativo    = idProductoRepresentativo,
                    VideoEmprendedor             = txtEnlaceVideoEmprendedor.Text.Trim()
                };

                string msg;
                bool   resul = Negocio.PlanDeNegocioV2.Formulacion.ResumenEjecutivo.Resumen.Insertar(entResumen, out msg);

                if (resul)
                {
                    Negocio.PlanDeNegocioV2.Utilidad.TabFormulacion.UpdateTabCompleto(Constantes.CONST_ResumenEjecutivoV2, Encabezado.CodigoProyecto, Usuario.IdContacto, true);

                    ProyectoGeneral.UpdateTab(Datos.Constantes.CONST_ResumenEjecutivoV2, Encabezado.CodigoProyecto, Usuario.IdContacto, Usuario.CodGrupo, false);
                    Encabezado.ActualizarFecha();

                    //Actualizar Sector
                    actualizarSectorProyecto(Convert.ToInt32(cmbSubSector.SelectedValue), Encabezado.CodigoProyecto);

                    CargarResumen();
                }

                Alert(msg);
                lblError.Visible      = false;
                lblErrorVideo.Visible = false;
            }
            catch (ApplicationException ex)
            {
                lblError.Visible = true;
                lblError.Text    = "Advertencia: " + ex.Message;
            }
            catch (Exception ex)
            {
                lblError.Visible = true;
                lblError.Text    = "Error inesperado: " + ex.Message;
            }
        }