예제 #1
0
        /// <summary>
        /// Metodo para actualizar el indicador
        /// </summary>
        /// <param name="_codigoIndicador"></param>
        /// <param name="_descripcionIndicador"></param>
        /// <param name="_valorIndicador"></param>
        /// <param name="_tipoIndicador"></param>
        /// <param name="_protegido"></param>
        public void ActualizarIndicador(Int64 _codigoIndicador, string _descripcionIndicador, double _valorIndicador, char _tipoIndicador, bool _protegido)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                EvaluacionProyectoIndicador indicador = db.EvaluacionProyectoIndicadors.Single(ById => ById.id_Indicador == _codigoIndicador);

                if (db.EvaluacionProyectoIndicadors.Where(registro => registro.id_Indicador != _codigoIndicador && registro.codProyecto == CodigoProyecto && registro.codConvocatoria == CodigoConvocatoria && registro.Descripcion.Contains(_descripcionIndicador) && registro.Protegido.Equals(false)).Any())
                {
                    throw new ApplicationException("Existe un indicador ese mismo nombre.");
                }

                //Actualizamos el indicador

                indicador.Valor = _valorIndicador;

                //Si esta protegido no se puede actualizar el tipo y descripción.
                if (!indicador.Protegido)
                {
                    indicador.Descripcion = _descripcionIndicador;
                    indicador.Tipo        = _tipoIndicador;
                }

                db.SubmitChanges();

                actualizarFechaActualizacionTab();
            }
        }
예제 #2
0
        /// <summary>
        /// Metodo para insertar un nuevo indicador
        /// </summary>
        /// <param name="_descripcionIndicador"></param>
        /// <param name="_valorIndicador"></param>
        /// <param name="_tipoIndicador"></param>
        /// <param name="_protegido"></param>
        private void InsertarIndicador(string _descripcionIndicador, double _valorIndicador, char _tipoIndicador, bool _protegido)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                if (db.EvaluacionProyectoIndicadors.Where(registro => registro.codProyecto == CodigoProyecto && registro.codConvocatoria == CodigoConvocatoria && registro.Descripcion.Contains(_descripcionIndicador)).Any())
                {
                    throw new ApplicationException("Existe un indicador ese mismo nombre.");
                }

                EvaluacionProyectoIndicador nuevoIndicador = new EvaluacionProyectoIndicador()
                {
                    codProyecto     = CodigoProyecto,
                    codConvocatoria = CodigoConvocatoria,
                    Descripcion     = _descripcionIndicador,
                    Valor           = _valorIndicador,
                    Tipo            = _tipoIndicador,
                    Protegido       = _protegido
                };

                db.EvaluacionProyectoIndicadors.InsertOnSubmit(nuevoIndicador);
                db.SubmitChanges();

                actualizarFechaActualizacionTab();

                LimpiarCampos();
            }
        }
예제 #3
0
        /// <summary>
        /// Metodo para obtener los datos del indicador a actualizar.
        /// </summary>
        private void getIndicador(Int64 _codigoIndicador)
        {
            using (Datos.FonadeDBDataContext db = new Datos.FonadeDBDataContext(System.Configuration.ConfigurationManager.ConnectionStrings["ApplicationServices"].ConnectionString))
            {
                EvaluacionProyectoIndicador indicador = db.EvaluacionProyectoIndicadors.Single(ById => ById.id_Indicador == _codigoIndicador);

                txtDetalle.Text       = indicador.Descripcion;
                txtDetalle.Enabled    = !indicador.Protegido;
                txtValor.Text         = indicador.Valor.ToString("0,0.0000", CultureInfo.InvariantCulture);
                cmbTipo.SelectedValue = indicador.Tipo.ToString();
                cmbTipo.Enabled       = !indicador.Protegido;
            }
        }