protected void btnCambiarEstado_Click(object sender, EventArgs e)
        {
            // ----------------------------------------------
            ALCSA.Negocio.Requerimientos.Estado objEstado = new ALCSA.Negocio.Requerimientos.Estado(ALCSA.FWK.Web.Control.ExtraerValor(ddlEstados));

            int intIdRequerimiento = ALCSA.FWK.Web.Control.ExtraerValorComoEntero(hdfIdRequerimiento);

            // ----------------------------------------------
            ALCSA.Negocio.Requerimientos.Observacion objObservacion = new ALCSA.Negocio.Requerimientos.Observacion()
            {
                IdDocumento      = 0,
                Descripcion      = ALCSA.FWK.Web.Control.ExtraerValor(txtObservacionEstado),
                IdRequerimientos = intIdRequerimiento,
                Usuario          = ALCSA.FWK.Web.Control.ExtraerValor(hdfUsuario)
            };

            objObservacion.Guardar();
            // ----------------------------------------------
            ALCSA.Negocio.Requerimientos.Requerimiento objRequerimiento = new ALCSA.Negocio.Requerimientos.Requerimiento(intIdRequerimiento);
            objRequerimiento.IdEstado = objEstado.ID;

            if (objEstado.Codigo == ALCSA.Negocio.Requerimientos.Requerimiento.ESTADO_RECHAZADO)
            {
                objRequerimiento.UsuarioAprobador = ALCSA.FWK.Web.Control.ExtraerValor(hdfUsuario);
            }
            else if (objEstado.Codigo == ALCSA.Negocio.Requerimientos.Requerimiento.ESTADO_EN_DESARROLLO)
            {
                objRequerimiento.UsuarioAprobador   = ALCSA.FWK.Web.Control.ExtraerValor(hdfUsuario);
                objRequerimiento.UsuarioResponsable = ALCSA.FWK.Web.Control.ExtraerValor(ddlDesarrolladores);
            }

            objRequerimiento.Guardar();
            // ----------------------------------------------
            CargarGrillaObservaciones(gvObservaciones.PageIndex);
            // ----------------------------------------------
            ALCSA.FWK.Web.Control.AsignarValor(hdfCodigoEstadoActual, objEstado.Codigo);
            ALCSA.FWK.Web.Control.AsignarValor(lblEstado, objEstado.Nombre);
            CargarListaEstados(objRequerimiento);
            // ----------------------------------------------
            btnGuardar.Visible  = false;
            btnEliminar.Visible = false;
            // ----------------------------------------------
            // AGREGAR MENSAJE
            ALCSA.FWK.Web.Control.AsignarValor(lblMensaje, "El cambio de estado se registró correctamente.");
            // ----------------------------------------------
            EnviarCorreo(objRequerimiento, false);
            // ----------------------------------------------
        }
        protected void btnGuardarObservacion_Click(object sender, EventArgs e)
        {
            // ----------------------------------------------
            ALCSA.Negocio.Requerimientos.Observacion objObservacion = new ALCSA.Negocio.Requerimientos.Observacion()
            {
                IdDocumento      = 0,
                Descripcion      = ALCSA.FWK.Web.Control.ExtraerValor(txtObservacion),
                IdRequerimientos = ALCSA.FWK.Web.Control.ExtraerValorComoEntero(hdfIdRequerimiento),
                Usuario          = ALCSA.FWK.Web.Control.ExtraerValor(hdfUsuario)
            };

            objObservacion.Guardar();
            // ----------------------------------------------
            CargarGrillaObservaciones(gvObservaciones.PageIndex);
            // ----------------------------------------------
            // AGREGAR MENSAJE
            ALCSA.FWK.Web.Control.AsignarValor(lblMensaje, "La observación se guardó correctamente.");
            // ----------------------------------------------
        }
        protected void btnGuardarArchivo_Click(object sender, EventArgs e)
        {
            // ----------------------------------------------
            if (!fupArchivo.HasFile)
            {
                return;
            }
            // ----------------------------------------------
            ALCSA.Negocio.Documentos.Fisicos.Documento objDocumentoFisico = new ALCSA.Negocio.Documentos.Fisicos.Documento()
            {
                Nombre              = fupArchivo.PostedFile.FileName,
                Descripcion         = string.Empty,
                CodigoTipoDocumento = ALCSA.Negocio.Requerimientos.Requerimiento.TIPO_DOCUMENTO,
                FechaIngreso        = DateTime.Now,
                IdTipoDocumento     = 0,
                Peso    = fupArchivo.PostedFile.ContentLength,
                Archivo = fupArchivo.FileBytes
            };
            objDocumentoFisico.Insertar();
            // ----------------------------------------------
            ALCSA.Negocio.Requerimientos.Observacion objObservacion = new ALCSA.Negocio.Requerimientos.Observacion()
            {
                IdDocumento      = objDocumentoFisico.ID,
                Descripcion      = objDocumentoFisico.Nombre,
                IdRequerimientos = ALCSA.FWK.Web.Control.ExtraerValorComoEntero(hdfIdRequerimiento),
                Usuario          = ALCSA.FWK.Web.Control.ExtraerValor(hdfUsuario)
            };

            objObservacion.Guardar();
            // ----------------------------------------------
            CargarGrillaObservaciones(gvObservaciones.PageIndex);
            // ----------------------------------------------
            // AGREGAR MENSAJE
            ALCSA.FWK.Web.Control.AsignarValor(lblMensaje, "El archivo se guardó correctamente.");
            // ----------------------------------------------
        }