void SelectExpedienteSeguimiento()
        {
            BPExpedienteSeguimiento ExpedienteSeguimientoProcess = new BPExpedienteSeguimiento();

            // Estado inicial
            this.gvSeguimiento.DataSource = null;
            this.gvSeguimiento.DataBind();

            // Parámetros
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ExpedienteId = Int32.Parse(this.hddExpedienteId.Value);

            // Transacción
            ExpedienteSeguimientoProcess.SelectExpedienteSeguimiento();

            // Validaciones
            if (ExpedienteSeguimientoProcess.ErrorId != 0) { throw (new Exception(ExpedienteSeguimientoProcess.ErrorDescription)); }

            // Bind
            this.gvSeguimiento.DataSource = ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ResultData;
            this.gvSeguimiento.DataBind();
        }
        void SaveExpedienteSeguimiento()
        {
            BPExpedienteSeguimiento ExpedienteSeguimientoProcess = new BPExpedienteSeguimiento();
            ENTSession SessionEntity = new ENTSession();

            // Validaciones
            if (this.ddlTipoSeguimiento.SelectedIndex == 0) { throw new Exception("El campo [Tipo de seguimiento] es requerido"); }
            if (this.ckeSeguimiento.Text.Trim() == "") { throw new Exception("El campo [Detalle] es requerido"); }

            // Obtener la sesión
            SessionEntity = (ENTSession)Session["oENTSession"];

            // Parámetros
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ExpedienteSeguimientoId = Int32.Parse(this.hddExpedienteSeguimientoId.Value);
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ExpedienteId = Int32.Parse(this.hddExpedienteId.Value);
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ModuloId = 3;
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.FuncionarioId = SessionEntity.FuncionarioId;
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.TipoSeguimientoId = Int32.Parse(this.ddlTipoSeguimiento.SelectedItem.Value);
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.Fecha = this.wucFecha.BeginDate;
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.Detalle = this.ckeSeguimiento.Text.Trim();

            // Transacción
            ExpedienteSeguimientoProcess.SaveExpedienteSeguimiento();

            // Validaciones
            if (ExpedienteSeguimientoProcess.ErrorId != 0) { throw (new Exception(ExpedienteSeguimientoProcess.ErrorDescription)); }

            // Limpiar el formulario
            ResetForm();

            // Actualizar la información
            SelectExpedienteSeguimiento();
        }
        void SelectExpedienteSeguimiento(String ExpedienteSeguimientoId)
        {
            BPExpedienteSeguimiento ExpedienteSeguimientoProcess = new BPExpedienteSeguimiento();

            // Parámetros
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ExpedienteSeguimientoId = Int32.Parse( ExpedienteSeguimientoId );
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ExpedienteId = Int32.Parse( this.hddExpedienteId.Value );

            // Transacción
            ExpedienteSeguimientoProcess.SelectExpedienteSeguimiento();

            // Validaciones
            if (ExpedienteSeguimientoProcess.ErrorId != 0) { throw (new Exception(ExpedienteSeguimientoProcess.ErrorDescription)); }
            if (ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ResultData.Tables[0].Rows.Count == 0) { throw (new Exception("No se encontró información de la gestión para el expediente")); }

            // Llenado de formulario
            this.wucFecha.SetDateTime = DateTime.Parse(ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ResultData.Tables[0].Rows[0]["Fecha"].ToString());
            this.ddlTipoSeguimiento.SelectedValue = ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ResultData.Tables[0].Rows[0]["TipoSeguimientoId"].ToString();
            this.ckeSeguimiento.Text = ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ResultData.Tables[0].Rows[0]["Detalle"].ToString();

            // Id a trabajar
            this.hddExpedienteSeguimientoId.Value = ExpedienteSeguimientoId.ToString();
        }
        // Funciones el programador
        void DeleteExpedienteSeguimiento(String ExpedienteSeguimientoId)
        {
            BPExpedienteSeguimiento ExpedienteSeguimientoProcess = new BPExpedienteSeguimiento();

            // Parámetros
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ExpedienteSeguimientoId = Int32.Parse(ExpedienteSeguimientoId);
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ExpedienteId = Int32.Parse(this.hddExpedienteId.Value);
            ExpedienteSeguimientoProcess.ExpedienteSeguimientoEntity.ModuloId = 3;

            // Transacción
            ExpedienteSeguimientoProcess.DeleteExpedienteSeguimiento();

            // Validaciones
            if (ExpedienteSeguimientoProcess.ErrorId != 0) { throw (new Exception(ExpedienteSeguimientoProcess.ErrorDescription)); }

            // Limpiar el formulario
            ResetForm();

            // Actualizar la información
            SelectExpedienteSeguimiento();
        }