protected override void SelectStockAction(ProductInfo producto)
		{
			if (producto == null) return;

			FCriteria criteria = new FCriteria<long>("OidProducto", producto.Oid, Operation.Equal);
			Stock_BS.DataSource = _entity.Stocks.GetSubList(criteria);
		}
        protected new SortedBindingList <ClaseAuditoriaInfo> Localize(object value, string column_name)
        {
            SortedBindingList <ClaseAuditoriaInfo> list = null;
            ClaseAuditoriaList sourceList = null;

            switch (FilterType)
            {
            case IFilterType.None:
                if (List == null)
                {
                    MessageBox.Show(moleQule.Face.Resources.Messages.NO_RESULTS);
                    return(null);
                }
                sourceList = List;
                break;

            case IFilterType.Filter:
                if (FilteredList == null)
                {
                    MessageBox.Show(moleQule.Face.Resources.Messages.NO_RESULTS);
                    return(null);
                }
                sourceList = FilteredList;
                break;
            }

            FCriteria criteria = null;
            string    related  = "none";

            switch (column_name)
            {
            default:
            {
                criteria = GetCriteria(column_name, value, _operation);
            } break;
            }

            switch (related)
            {
            case "none":
            {
                list = sourceList.GetSortedSubList(criteria);
            } break;
            }

            if (list.Count == 0)
            {
                MessageBox.Show(moleQule.Face.Resources.Messages.NO_RESULTS);
                return(sourceList.GetSortedList());
            }

            DatosSearch.DataSource = list;
            DatosSearch.MoveFirst();

            AddFilterLabel(column_name, value);

            Tabla.Focus();

            return(list);
        }
        protected override void SetCurrentTabDataSources()
        {
            switch (Pestanas_TC.SelectedTab.Name)
            {
            case "Formacion_TP":
            {
                _entity.LoadChilds(typeof(Alumno_Promocion), true, false);
                Datos_Alumnos_Promociones.DataSource = _entity.Promociones;
            } break;

            case "NotasExamenes_TP":
            {
                _entity.LoadChilds(typeof(Alumno_Examen), true, false);
                Datos_Alumno_Examen.DataSource = _entity.AlumnoExamens;
            } break;

            case "NotasPracticas_TP":
            {
                _entity.LoadChilds(typeof(Alumno_Practica), true, false);
                Datos_Alumno_Practica.DataSource = _entity.AlumnosPracticas;
            } break;

            case "FaltasAsistencia_TP":
            {
                _entity.LoadChilds(typeof(Alumno_Parte), true, false);
                FCriteria <bool> criteria = new FCriteria <bool>("Falta", true);
                Datos_Alumno_Parte.DataSource = _entity.AlumnoPartes.GetSubList(criteria);
            } break;
            }
        }
Esempio n. 4
0
        private void TipoExpediente_CB_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (TipoExpediente_CB.SelectedItem == null)
            {
                return;
            }
            if (_facturas_todas == null)
            {
                return;
            }

            ETipoExpediente tipo = (ETipoExpediente)((long)TipoExpediente_CB.SelectedValue);

            if (tipo != ETipoExpediente.Todos)
            {
                FCriteria criteria = new FCriteria <long>("TipoExpediente", (long)TipoExpediente_CB.SelectedValue);
                _facturas = LineaFomentoList.GetSortedList(_facturas_todas.GetSubList(criteria), "NExpediente", ListSortDirection.Ascending);
            }
            else
            {
                _facturas = LineaFomentoList.GetSortedList(_facturas_todas, "NExpediente", ListSortDirection.Ascending);
            }

            Datos_Facturas.DataSource = _facturas;
            SetUnlinkedGridValues(Facturas_DGW.Name);
            SetGridColors(Facturas_DGW);
        }
Esempio n. 5
0
        private void Ano_CB_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (Ano_CB.SelectedItem == null)
            {
                return;
            }
            if (_facturas_todas == null)
            {
                return;
            }

            int anyo = Convert.ToInt32(((long)Ano_CB.SelectedValue));

            if (anyo != 0)
            {
                FCriteria criteria = new FCriteria <long>("Ano", anyo);
                _facturas = _facturas_todas.GetSortedSubList(criteria);
            }
            else
            {
                _facturas = _facturas_todas.GetSortedList();
            }

            Datos_Facturas.DataSource = _facturas;
            SetUnlinkedGridValues(Facturas_DGW.Name);
            SetGridColors(Facturas_DGW);
        }
        protected override bool DoFilter()
        {
            if (_lista == null)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            FCriteria criteria = null;

            foreach (Control ctl in this.Campos_Groupbox.Controls)
            {
                if (((System.Windows.Forms.RadioButton)ctl).Checked)
                {
                    switch (ctl.Name)
                    {
                    case "Nombre_RB":
                    {
                        criteria = new FCriteria <string>("Nombre", Valor_TB.Text);
                        break;
                    }

                    case "ID_RB":
                    {
                        criteria = new FCriteria <string>("Id", Valor_TB.Text);
                        break;
                    }

                    case "Alias_RB":
                    {
                        criteria = new FCriteria <string>("Alias", Valor_TB.Text);
                        break;
                    }
                    }
                }
            }

            // Consulta en la bd
            InstructorList lista = null;

            lista = InstructorList.GetList(_lista.GetSubList(criteria));

            Datos.DataSource = lista;

            if (lista.Count == 0)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            Datos.MoveFirst();

            _filtered_list = lista;

            return(true);
        }
		protected override void SelectProductAction(ProductInfo producto)
		{
			if (producto == null) return;

			FCriteria criteria = new FCriteria<long>("OidProducto", producto.Oid, Operation.Equal);
			Batchs_BS.DataSource = _entity.Partidas.GetSubList(criteria);
			Batchs_BS.ResetBindings(true);

			SelectStockAction(producto);
		}
Esempio n. 8
0
        public void EvaluateCriteriaLessThanEqualTest()
        {
            FBlackboard blackboard = new FBlackboard();

            blackboard.AddValue <FInt>("FloatValue", 2);

            ICriteria criteria = new FCriteria(blackboard, "FloatValue", EValueComparer.LessThanEqual, new FInt(2));

            FAssert.IsTrue(criteria.Evaluate());
        }
Esempio n. 9
0
        public void EvaluateCriteriaGreaterThanTest()
        {
            FBlackboard blackboard = new FBlackboard();

            blackboard.AddValue <FInt>("FloatValue", 2);

            ICriteria criteria = new FCriteria(blackboard, "FloatValue", EValueComparer.GreaterThan, new FInt(1));

            FAssert.IsTrue(criteria.Evaluate());
        }
Esempio n. 10
0
        public void EvaluateCriteriaIsNotEqualTest()
        {
            FBlackboard blackboard = new FBlackboard();

            blackboard.AddValue <FInt>("FloatValue", 2);

            ICriteria criteria = new FCriteria(blackboard, "FloatValue", EValueComparer.Equal, new FInt(1));

            FAssert.IsFalse(criteria.Evaluate());
        }
        protected override bool DoSearch()
        {
            if (_lista == null)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            FCriteria criteria = null;

            foreach (Control ctl in this.Campos_Groupbox.Controls)
            {
                if (((System.Windows.Forms.RadioButton)ctl).Checked)
                {
                    switch (ctl.Name)
                    {
                    case "Modulo_RB":
                    {
                        criteria = new FCriteria <string>("Texto", Valor_TB.Text);
                        break;
                    }

                    case "Codigo_RB":
                    {
                        criteria = new FCriteria <string>("Codigo", Valor_TB.Text);
                        break;
                    }
                    }
                }
            }

            // Consulta en la bd
            SortedBindingList <ModuloInfo> lista = null;

            if (SortProperty != string.Empty)
            {
                lista = _lista.GetSortedSubList(criteria, SortProperty, SortDirection);
            }
            else
            {
                lista = _lista.GetSortedSubList(criteria, "Oid", SortDirection);
            }

            Datos.DataSource = lista;

            if (lista.Count == 0)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            Datos.MoveFirst();

            return(true);
        }
        protected new SortedBindingList <CronogramaInfo> Localize(FilterItem item)
        {
            SortedBindingList <CronogramaInfo> list = null;
            CronogramaList sourceList = null;

            switch (FilterType)
            {
            case IFilterType.None:
                if (List == null)
                {
                    MessageBox.Show(Face.Resources.Messages.NO_RESULTS);
                    return(null);
                }
                sourceList = List;
                break;

            case IFilterType.Filter:
                if (FilteredList == null)
                {
                    MessageBox.Show(Face.Resources.Messages.NO_RESULTS);
                    return(null);
                }
                sourceList = FilteredList;
                break;

            default:
                sourceList = List;
                break;
            }

            if (item.FilterProperty == IFilterProperty.All)
            {
                FCriteria criteria = GetCriteria(string.Empty, item.Value, null, item.Operation);
                list = sourceList.GetSortedSubList(criteria, _properties_list);
            }
            else
            {
                FCriteria criteria = GetCriteria(item.Column, item.Value, null, item.Operation);
                list = sourceList.GetSortedSubList(criteria, _properties_list);
            }

            if (list.Count == 0)
            {
                MessageBox.Show(Face.Resources.Messages.NO_RESULTS);
                return(sourceList.GetSortedList());
            }

            DatosSearch.DataSource = list;
            DatosSearch.MoveFirst();

            AddFilterLabel(item);

            return(list);
        }
        protected override void SelectStockAction(ProductInfo producto)
        {
            if (producto == null)
            {
                return;
            }

            FCriteria criteria = new FCriteria <long>("OidProducto", producto.Oid, Operation.Equal);

            Datos_Stock.DataSource = _entity.Stocks.GetSubList(criteria);

            ActualizaBindings();
        }
Esempio n. 14
0
        protected override void EmitirAction()
        {
            _entity.PreguntaExamens = PreguntaExamens.NewChildList();

            if (Entity.FechaExamen.Date.Equals(DateTime.MaxValue.Date))
            {
                MessageBox.Show("No se puede emitir un examen que no tiene fecha de examen.");
                return;
            }

            if (Entity.Pregunta_Examens.Count == 0)
            {
                MessageBox.Show("No se puede emitir un examen que no tiene preguntas.");
                return;
            }

            PgMng.Reset((Preguntas_Grid.Rows.Count * 2) + 2, 1, "Guardando estado actual de las preguntas...", this);

            foreach (DataGridViewRow row in Preguntas_Grid.Rows)
            {
                PreguntaInfo p = _preguntas_modulo.GetItem(((PreguntaInfo)row.DataBoundItem).Oid);
                if (!p.Activa)
                {
                    continue;
                }

                //se añade la nueva PreguntaExamen al examen a partir de la Pregunta
                PreguntaExamen   pexamen  = _entity.PreguntaExamens.NewItem(_entity);
                FCriteria <long> criteria = new FCriteria <long>("OidPregunta", p.Oid);
                pexamen.CopyValues(p);
                pexamen.Orden = Convert.ToInt64(row.Cells[N_Orden.Name].Value);

                List <RespuestaInfo> respuestas = _respuestas_modulo.GetSubList(criteria);
                foreach (RespuestaInfo item in respuestas)
                {
                    if (item.OidPregunta == p.Oid)
                    {
                        RespuestaExamen rexamen = RespuestaExamen.NewChild(pexamen);
                        rexamen.CopyValues(item);
                        rexamen.OidExamen = _entity.Oid;
                        rexamen.MarkItemChild();
                        pexamen.RespuestaExamens.AddItem(rexamen);
                    }
                }
                PgMng.Grow();
            }

            Entity.FechaEmision = DateTime.Now;

            SaveAction();
        }
        protected new SortedBindingList <IAgenteHipatia> Localize(FilterItem item)
        {
            SortedBindingList <IAgenteHipatia> list = null;
            IAgenteHipatiaList sourceList           = null;

            switch (FilterType)
            {
            case IFilterType.None:
                if (List == null)
                {
                    MessageBox.Show(Face.Resources.Messages.NO_RESULTS);
                    return(null);
                }
                sourceList = List;
                break;

            case IFilterType.Filter:
                if (FilteredList == null)
                {
                    MessageBox.Show(Face.Resources.Messages.NO_RESULTS);
                    return(null);
                }
                sourceList = FilteredList;
                break;
            }

            if (item.FilterProperty == IFilterProperty.All)
            {
                FCriteria criteria = GetCriteria(string.Empty, item.Value, item.SecondValue, item.Operation);
                list = sourceList.GetSortedSubList(criteria, _properties_list);
            }
            else
            {
                FCriteria criteria = GetCriteria(item.Column, item.Value, item.SecondValue, item.Operation);
                list = sourceList.GetSortedSubList(criteria, _properties_list);
            }

            if (list.Count == 0)
            {
                PgMng.ShowInfoException(Face.Resources.Messages.NO_RESULTS);
                return(sourceList);
            }

            DatosSearch.DataSource = list;
            DatosSearch.MoveFirst();

            AddFilterItem(item);

            return(list);
        }
Esempio n. 16
0
        protected new SortedBindingList <C> Localize(FilterItem item)
        {
            SortedBindingList <C> list = null;
            T sourceList = null;

            switch (FilterType)
            {
            case IFilterType.None:
                if (List == null)
                {
                    return(null);
                }
                sourceList = (T)_item_list;
                break;

            case IFilterType.Filter:
                if (FilteredList == null)
                {
                    return(null);
                }
                sourceList = (((IList)FilteredList).Count > 0) ? (T)FilteredList : (T)_last_results;
                break;

            case IFilterType.FilterBack:
                sourceList = (T)_item_list;
                break;
            }

            if (item.FilterProperty == IFilterProperty.All)
            {
                FCriteria criteria = GetCriteria(string.Empty, item.Value, item.SecondValue, item.Operation);
                list = sourceList.GetSortedSubList(criteria, SortProperty, SortDirection, _properties_list);
            }
            else
            {
                FCriteria criteria = GetCriteria(item.Column, item.Value, item.SecondValue, item.Operation);
                list = sourceList.GetSortedSubList(criteria, SortProperty, SortDirection, _properties_list);
            }

            LastResults = sourceList;

            DatosSearch.DataSource = list;
            DatosSearch.MoveFirst();

            AddFilterItem(item);

            return(list);
        }
        public new FacREAList GetSubList(FCriteria criteria)
        {
            List <FacREAInfo> list    = base.GetSubList(criteria);
            FacREAList        subList = new FacREAList();

            subList.IsReadOnly = false;

            foreach (FacREAInfo item in list)
            {
                subList.AddItem(item);
            }

            subList.IsReadOnly = true;

            return(subList);
        }
Esempio n. 18
0
        protected override void RefreshMainData()
        {
            Datos.DataSource = _entity;
            PgMng.Grow();

            if (_oid_nomina == 0)
            {
                Payrolls_BS.DataSource = _entity.Nominas;
            }
            else
            {
                FCriteria criteria = new FCriteria <long>("Oid", _oid_nomina, Operation.Equal);
                Payrolls_BS.DataSource = _entity.Nominas.GetSubList(criteria);
            }
            PgMng.Grow();

            base.RefreshMainData();
        }
        protected override void SelectStockAction(ProductInfo producto)
        {
            if (_entity.ETipoExpediente == moleQule.Store.Structs.ETipoExpediente.Almacen)
            {
                if (producto == null)
                {
                    return;
                }

                FCriteria criteria = new FCriteria <long>("OidProducto", producto.Oid, Operation.Equal);
                Stock_BS.DataSource = _entity.Stocks.GetSubList(criteria);
            }
            else
            {
                Stock_BS.DataSource = _entity.Stocks;
            }

            Stock_BS.ResetBindings(true);
        }
        /// <summary>
        /// Asigna el objeto principal al origen de datos
        /// <returns>void</returns>
        /// </summary>
        protected override void RefreshMainData()
        {
            Datos.DataSource = _entity;
            PgMng.Grow();

            Datos_Alumno_Examen.DataSource = _entity.AlumnoExamens;
            PgMng.Grow();

            Datos_Alumno_Practica.DataSource = _entity.AlumnosPracticas;
            PgMng.Grow();

            Datos_Alumnos_Promociones.DataSource = _entity.Promociones;

            FCriteria <bool> criteria = new FCriteria <bool>("Falta", true);

            Datos_Alumno_Parte.DataSource = _entity.AlumnoPartes.GetSubList(criteria);

            base.RefreshMainData();
            PgMng.FillUp();
        }
Esempio n. 21
0
        protected new SortedBindingList <EmpresaInfo> Localize(object value, string column_name)
        {
            SortedBindingList <EmpresaInfo> list = null;

            if (List == null)
            {
                MessageBox.Show(moleQule.Face.Resources.Messages.NO_RESULTS);
                return(null);
            }

            FCriteria criteria = null;

            string related = "none";

            switch (column_name)
            {
            default:
            {
                criteria = GetCriteria(column_name, value, _operation);
            } break;
            }

            switch (related)
            {
            case "none":
            {
                list = List.GetSortedSubList(criteria, SortProperty, SortDirection);
            } break;
            }

            if (list.Count == 0)
            {
                MessageBox.Show(moleQule.Face.Resources.Messages.NO_RESULTS);
                return(null);
            }

            DatosSearch.DataSource = list;
            DatosSearch.MoveFirst();

            return(list);
        }
        protected new IAgenteHipatiaList Localize(object value, string column_name)
        {
            IAgenteHipatiaList list = null;

            if (_list == null)
            {
                MessageBox.Show(Messages.NO_RESULTS);
                return(null);
            }

            FCriteria criteria = null;
            string    related  = "none";

            switch (column_name)
            {
            default:
            {
                criteria = GetCriteria(column_name, value, _operation);
            } break;
            }

            switch (related)
            {
            case "none":
            {
                list = _list.GetSortedSubList(criteria, SortProperty, SortDirection);
            } break;
            }

            if (list.Count == 0)
            {
                MessageBox.Show(Messages.NO_RESULTS);
                return(null);
            }

            DatosSearch.DataSource = list;
            DatosSearch.MoveFirst();

            return(list);
        }
Esempio n. 23
0
        /// <summary>
        /// Devuelve una lista a partir de los datos de la lista actual
        /// </summary>
        /// <param name="criteria">Filtro (Insensitive)</param>
        /// <returns>Lista</returns>
        public SortedBindingList <IAgenteHipatia> GetSortedSubList(FCriteria criteria, List <string> properties_list)
        {
            List <IAgenteHipatia> list = new List <IAgenteHipatia>();
            SortedBindingList <IAgenteHipatia> sortedList = new SortedBindingList <IAgenteHipatia>(list);

            if (this.Count == 0)
            {
                return(sortedList);
            }

            PropertyDescriptor property = null;

            if (criteria.GetProperty() != null)
            {
                property = TypeDescriptor.GetProperties(this[0]).Find(criteria.GetProperty(), false);
            }
            else
            {
                property = null;
            }

            Type type = typeof(IAgenteHipatia);

            System.Reflection.PropertyInfo prop = null;

            switch (criteria.Operation)
            {
            case Operation.Equal:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (string propName in properties_list)
                    {
                        prop = type.GetProperty(propName);

                        if (prop == null)
                        {
                            continue;
                        }

                        //Buscamos en una propiedad en concreto
                        if (property != null)
                        {
                            if (prop.Name == property.Name)
                            {
                                object value = prop.GetValue(item, null);
                                if (value == null)
                                {
                                    break;
                                }
                                if (value.ToString().ToLower().Equals(criteria.GetValue().ToString().ToLower()))
                                {
                                    sortedList.Add(item);
                                }
                                break;
                            }
                        }
                        //Buscamos en todas las propiedades de la lista
                        else
                        {
                            object value = prop.GetValue(item, null);
                            if (value == null)
                            {
                                continue;
                            }
                            if (value.ToString().ToLower().Equals(criteria.GetValue().ToString().ToLower()))
                            {
                                sortedList.Add(item);
                                break;
                            }
                        }
                    }
                }
            } break;

            case Operation.StartsWith:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (string propName in properties_list)
                    {
                        prop = type.GetProperty(propName);

                        if (prop == null)
                        {
                            continue;
                        }

                        //Buscamos en una propiedad en concreto
                        if (property != null)
                        {
                            if (prop.Name == property.Name)
                            {
                                object value = prop.GetValue(item, null);
                                if (value == null)
                                {
                                    break;
                                }
                                if (value.ToString().ToLower().StartsWith(criteria.GetValue().ToString().ToLower()))
                                {
                                    sortedList.Add(item);
                                }
                                break;
                            }
                        }
                        //Buscamos en todas las propiedades de la lista
                        else
                        {
                            object value = prop.GetValue(item, null);
                            if (value == null)
                            {
                                continue;
                            }
                            if (value.ToString().ToLower().StartsWith(criteria.GetValue().ToString().ToLower()))
                            {
                                sortedList.Add(item);
                                break;
                            }
                        }
                    }
                }
            } break;

            case Operation.Less:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (string propName in properties_list)
                    {
                        prop = type.GetProperty(propName);

                        if (prop == null)
                        {
                            continue;
                        }

                        //Buscamos en una propiedad en concreto
                        if (property != null)
                        {
                            if (prop.Name == property.Name)
                            {
                                object value = prop.GetValue(item, null);
                                if (value == null)
                                {
                                    break;
                                }
                                if (criteria.Less(value))
                                {
                                    sortedList.Add(item);
                                }
                                break;
                            }
                        }
                        //Buscamos en todas las propiedades de la lista
                        else
                        {
                            object value = prop.GetValue(item, null);
                            if (value == null)
                            {
                                continue;
                            }
                            if (criteria.Less(value))
                            {
                                sortedList.Add(item);
                                break;
                            }
                        }
                    }
                }
            } break;

            case Operation.LessOrEqual:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (string propName in properties_list)
                    {
                        prop = type.GetProperty(propName);

                        if (prop == null)
                        {
                            continue;
                        }

                        //Buscamos en una propiedad en concreto
                        if (property != null)
                        {
                            if (prop.Name == property.Name)
                            {
                                object value = prop.GetValue(item, null);
                                if (value == null)
                                {
                                    break;
                                }
                                if (criteria.LessOrEqual(value))
                                {
                                    sortedList.Add(item);
                                }
                                break;
                            }
                        }
                        //Buscamos en todas las propiedades de la lista
                        else
                        {
                            object value = prop.GetValue(item, null);
                            if (value == null)
                            {
                                continue;
                            }
                            if (criteria.LessOrEqual(value))
                            {
                                sortedList.Add(item);
                                break;
                            }
                        }
                    }
                }
            } break;

            case Operation.Greater:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (string propName in properties_list)
                    {
                        prop = type.GetProperty(propName);

                        if (prop == null)
                        {
                            continue;
                        }

                        //Buscamos en una propiedad en concreto
                        if (property != null)
                        {
                            if (prop.Name == property.Name)
                            {
                                object value = prop.GetValue(item, null);
                                if (value == null)
                                {
                                    break;
                                }
                                if (criteria.Greater(value))
                                {
                                    sortedList.Add(item);
                                }
                                break;
                            }
                        }
                        //Buscamos en todas las propiedades de la lista
                        else
                        {
                            object value = prop.GetValue(item, null);
                            if (value == null)
                            {
                                continue;
                            }
                            if (criteria.Greater(value))
                            {
                                sortedList.Add(item);
                                break;
                            }
                        }
                    }
                }
            } break;

            case Operation.GreaterOrEqual:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (string propName in properties_list)
                    {
                        prop = type.GetProperty(propName);

                        if (prop == null)
                        {
                            continue;
                        }

                        //Buscamos en una propiedad en concreto
                        if (property != null)
                        {
                            if (prop.Name == property.Name)
                            {
                                object value = prop.GetValue(item, null);
                                if (value == null)
                                {
                                    break;
                                }
                                if (criteria.GreaterOrEqual(value))
                                {
                                    sortedList.Add(item);
                                }
                                break;
                            }
                        }
                        //Buscamos en todas las propiedades de la lista
                        else
                        {
                            object value = prop.GetValue(item, null);
                            if (value == null)
                            {
                                continue;
                            }
                            if (criteria.GreaterOrEqual(value))
                            {
                                sortedList.Add(item);
                                break;
                            }
                        }
                    }
                }
            } break;

            case Operation.Contains:
            default:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (string propName in properties_list)
                    {
                        prop = type.GetProperty(propName);

                        if (prop == null)
                        {
                            continue;
                        }

                        //Buscamos en una propiedad en concreto
                        if (property != null)
                        {
                            if (prop.Name == property.Name)
                            {
                                object value = prop.GetValue(item, null);
                                if (value == null)
                                {
                                    break;
                                }
                                if (value.ToString().ToLower().Contains(criteria.GetValue().ToString().ToLower()))
                                {
                                    sortedList.Add(item);
                                }
                                break;
                            }
                        }
                        //Buscamos en todas las propiedades de la lista
                        else
                        {
                            object value = prop.GetValue(item, null);
                            if (value == null)
                            {
                                continue;
                            }
                            if (value.ToString().ToLower().Contains(criteria.GetValue().ToString().ToLower()))
                            {
                                sortedList.Add(item);
                                break;
                            }
                        }
                    }
                }
            } break;
            }

            return(sortedList);
        }
Esempio n. 24
0
        protected override void PrintAction()
        {
            if (Entity.Pregunta_Examens.Count == 0)
            {
                return;
            }

            moleQule.Library.Timer t = new moleQule.Library.Timer();
            t.Start();

            //se obliga a guardar el examen antes de imprimir por si durante la impresión hubiera algún problema
            //quedan guardadas las modificaciones que pudieran no haberse guardado
            //if (Entity.IsDirty)
            //{
            //DialogResult result = MessageBox.Show(Resources.Messages.GUARDADO_EXAMEN,
            //    moleQule.Face.Resources.Labels.ADVISE_TITLE, MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
            //if (result == DialogResult.OK)
            //{
            try
            {
                ValidateInput();
            }
            catch (iQValidationException ex)
            {
                MessageBox.Show(ex.Message,
                                moleQule.Face.Resources.Labels.ADVISE_TITLE,
                                MessageBoxButtons.OK,
                                MessageBoxIcon.Warning);
                return;
            }
            //}
            //else
            //    return;
            //}

            Entity.PreguntaExamens = PreguntaExamens.NewChildList();

            string memo = string.Empty;

            foreach (Pregunta_Examen item in Entity.Pregunta_Examens)
            {
                memo += item.OidPregunta.ToString() + ",";
            }

            if (memo != string.Empty)
            {
                memo = memo.Substring(0, memo.Length - 1);
            }
            RespuestaList respuestas = RespuestaList.GetRespuestasExamenList(memo);

            foreach (DataGridViewRow row in Preguntas_Grid.Rows)
            {
                PreguntaInfo p = _preguntas_modulo.GetItem(((PreguntaInfo)row.DataBoundItem).Oid);
                t.Record("Obtener pregunta de la lista de preguntas del examen");

                PreguntaExamen pexamen = PreguntaExamen.NewChild(_entity);
                pexamen.CopyValues(p);
                pexamen.Orden = Convert.ToInt64(row.Cells[N_Orden.Name].Value);
                pexamen.MarkItemChild();
                t.Record("Crear PreguntaExamen");

                Entity.PreguntaExamens.AddItem(pexamen);
                FCriteria <long> criteria = new FCriteria <long>("OidPregunta", p.Oid);

                foreach (RespuestaInfo item in respuestas)
                {
                    if (p.Oid == item.OidPregunta)
                    {
                        RespuestaExamen rexamen = RespuestaExamen.NewChild(pexamen);
                        rexamen.CopyValues(item);
                        rexamen.MarkItemChild();
                        pexamen.RespuestaExamens.AddItem(rexamen);
                    }
                }
            }

            //Preguntas preguntas_examen = null;/* Pregunta.GetPreguntasByList(memo);*/
            PreguntaList preguntas_examen_list = PreguntaList.GetPreguntasByList(memo);

            if (EntityInfo.Desarrollo)
            {
                //tiene que llamar a ExamenDesarrolloReportForm
                ExamenDesarrolloReportForm form = new ExamenDesarrolloReportForm(true, EntityInfo, preguntas_examen_list, _entity.Pregunta_Examens);
                form.ShowDialog();
            }
            else
            {
                //tiene que llamar a ExamenTestReportForm
                ExamenTestReportForm form = new ExamenTestReportForm(true, EntityInfo, preguntas_examen_list, _entity.Pregunta_Examens);
                form.ShowDialog();
            }

            Entity.PreguntaExamens = PreguntaExamens.NewChildList();
        }
        protected new SortedBindingList <Pregunta> Localize(object value, string column_name)
        {
            SortedBindingList <Pregunta> list = null;

            Preguntas sourceList = null;

            switch (FilterType)
            {
            case IFilterType.None:
                if (List == null)
                {
                    MessageBox.Show(moleQule.Face.Resources.Messages.NO_RESULTS);
                    return(null);
                }
                sourceList = List;
                //_filter_values = string.Empty;
                break;

            case IFilterType.Filter:
                if (FilteredList == null)
                {
                    MessageBox.Show(moleQule.Face.Resources.Messages.NO_RESULTS);
                    return(null);
                }
                sourceList = FilteredList;
                break;

            default:
                sourceList = List;
                break;
            }

            FCriteria criteria = null;

            string related = "none";

            switch (column_name)
            {
            default:
                criteria = GetCriteria(column_name, value, null, _operation);
                break;
            }

            switch (related)
            {
            case "none":
                list = sourceList.GetSortedSubList(criteria);
                break;
            }

            if (list.Count == 0)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(sourceList.GetSortedList());
            }

            DatosSearch.DataSource = list;
            DatosSearch.MoveFirst();

            AddFilterItem(column_name, value);

            Tabla.Focus();

            return(list);
        }
Esempio n. 26
0
        protected override bool DoSearch()
        {
            bool          promo   = false;
            PromocionList sublist = null;

            if (_lista == null)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            FCriteria criteria = null;

            foreach (Control ctl in this.Campos_Groupbox.Controls)
            {
                if (((System.Windows.Forms.RadioButton)ctl).Checked)
                {
                    switch (ctl.Name)
                    {
                    case "Nombre_RB":
                    {
                        criteria = new FCriteria <string>("Nombre", Valor_TB.Text);
                        break;
                    }

                    case "Apellidos_RB":
                    {
                        criteria = new FCriteria <string>("Apellidos", Valor_TB.Text);
                        break;
                    }

                    case "Promocion_RB":
                    {
                        CriteriaEx criteriaex = Promocion.GetCriteria(Promocion.OpenSession());
                        criteriaex.AddContains("Nombre", Valor_TB.Text);
                        sublist = PromocionList.GetList(criteriaex);
                        // No existe el plan
                        if (sublist.Count == 0)
                        {
                            MessageBox.Show(Resources.Messages.NO_RESULTS);
                            return(false);
                        }
                        promo = true;
                        break;
                    }
                    }
                }
            }

            // Consulta en la bd
            SortedBindingList <AlumnoInfo> lista;

            if (SortProperty != string.Empty)
            {
                if (!promo)
                {
                    lista = _lista.GetSortedSubList(criteria, SortProperty, SortDirection);
                }
                else
                {
                    AlumnoList list = AlumnoList.GetList(AlumnoList.GetFilteredList(_lista, sublist, "OidPromocion"));
                    lista = list.ToSortedList(SortProperty, SortDirection);
                }
            }
            else
            {
                lista = _lista.GetSortedSubList(criteria, "Oid", SortDirection);
            }

            Datos.DataSource = lista;

            if (lista.Count == 0)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            Datos.MoveFirst();

            return(true);
        }
        protected override bool DoSearch()
        {
            bool             promo        = false;
            bool             plan         = false;
            PromocionList    sublist      = null;
            PlanEstudiosList sublist_plan = null;

            DateTime inicio = DateTime.MinValue;
            DateTime fin    = DateTime.MaxValue;

            if (Desde_DTP.Checked)
            {
                inicio = Desde_DTP.Value;
            }

            if (Hasta_DTP.Checked)
            {
                fin = Hasta_DTP.Value;
            }

            if (_lista == null)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            FCriteria criteria = null;

            if (Valor_TB.Text != " ")
            {
                foreach (Control ctl in this.Campos_Groupbox.Controls)
                {
                    if (((System.Windows.Forms.RadioButton)ctl).Checked)
                    {
                        switch (ctl.Name)
                        {
                        case "Promocion_RB":
                        {
                            CriteriaEx criteriaex = Promocion.GetCriteria(Promocion.OpenSession());
                            criteriaex.AddContains("Nombre", Valor_TB.Text);
                            criteriaex.Childs = false;
                            sublist           = PromocionList.GetList(criteriaex);
                            // No existe la promoción
                            if (sublist.Count == 0)
                            {
                                MessageBox.Show(Resources.Messages.NO_RESULTS);
                                return(false);
                            }
                            promo = true;
                            break;
                        }

                        case "Plan_RB":
                        {
                            CriteriaEx criteriaex = PlanEstudios.GetCriteria(PlanEstudios.OpenSession());
                            criteriaex.AddContains("Nombre", Valor_TB.Text);
                            criteriaex.Childs = false;
                            sublist_plan      = PlanEstudiosList.GetList(criteriaex);
                            // No existe la promoción
                            if (sublist_plan.Count == 0)
                            {
                                MessageBox.Show(Resources.Messages.NO_RESULTS);
                                return(false);
                            }
                            plan = true;
                            break;
                        }
                        }
                    }
                }
            }

            // Consulta en la bd
            SortedBindingList <HorarioInfo> lista = null;

            if (SortProperty != string.Empty)
            {
                if (promo)
                {
                    HorarioList list = HorarioList.GetList(HorarioList.GetFilteredList(HorarioList.GetFilteredFechaList(_lista, inicio, fin),
                                                                                       sublist, "OidPromocion"));
                    lista = list.ToSortedList(SortProperty, SortDirection);
                }
                else
                {
                    if (plan)
                    {
                        HorarioList list = HorarioList.GetList(HorarioList.GetFilteredList(HorarioList.GetFilteredFechaList(_lista, inicio, fin),
                                                                                           sublist_plan, "OidPlan"));
                        lista = list.ToSortedList(SortProperty, SortDirection);
                    }
                    else
                    {
                        lista = HorarioList.SortList(HorarioList.GetFilteredFechaList(_lista, inicio, fin), SortProperty, SortDirection);
                    };
                }
            }
            else
            {
                lista = _lista.GetSortedSubList(criteria, "Oid", SortDirection);
            }

            Datos.DataSource = lista;

            if (lista.Count == 0)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            Datos.MoveFirst();

            return(true);
        }
        protected override bool DoFilter()
        {
            bool             plan    = false;
            PlanEstudiosList sublist = null;

            if (_lista == null)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            FCriteria criteria = null;

            foreach (Control ctl in this.Campos_Groupbox.Controls)
            {
                if (((System.Windows.Forms.RadioButton)ctl).Checked)
                {
                    switch (ctl.Name)
                    {
                    case "Nombre_RB":
                    {
                        criteria = new FCriteria <string>("Nombre", Valor_TB.Text);
                        break;
                    }

                    case "Plan_RB":
                    {
                        CriteriaEx criteriaex = PlanEstudios.GetCriteria(PlanEstudios.OpenSession());
                        criteriaex.AddContains("Nombre", Valor_TB.Text);

                        sublist = PlanEstudiosList.GetList(criteriaex);
                        // No existe el proveedor
                        if (sublist.Count == 0)
                        {
                            MessageBox.Show(Resources.Messages.NO_RESULTS);
                            return(false);
                        }
                        plan = true;
                        break;
                    }
                    }
                }
            }

            // Consulta en la bd
            PromocionList lista = null;

            if (!plan)
            {
                lista = PromocionList.GetList(_lista.GetSubList(criteria));
            }
            else
            {
                lista = PromocionList.GetList(PromocionList.GetFilteredList(_lista, sublist, "OidPlan"));
            }

            Datos.DataSource = lista;

            if (lista.Count == 0)
            {
                MessageBox.Show(Resources.Messages.NO_RESULTS);
                return(false);
            }

            Datos.MoveFirst();

            _filtered_list = lista;

            return(true);
        }
Esempio n. 29
0
        /// <summary>
        /// Devuelve una lista ordenada y filtrada a partir de los datos de la lista
        /// actual
        /// </summary>
        /// <param name="criteria">Filtro</param>
        /// <param name="sortProperty">Campo de ordenación</param>
        /// <param name="sortDirection">Sentido de ordenación</param>
        /// <returns>Lista ordenada</returns>
        public IAgenteHipatiaList GetSortedSubList(FCriteria criteria,
                                                   string sortProperty,
                                                   ListSortDirection sortDirection)
        {
            IAgenteHipatiaList sortedList = new IAgenteHipatiaList(new List <IAgenteHipatia>());

            if (this.Count == 0)
            {
                return(sortedList);
            }

            PropertyDescriptor property = TypeDescriptor.GetProperties(this[0]).Find(criteria.GetProperty(), false);

            switch (criteria.Operation)
            {
            case Operation.StartsWith:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (PropertyDescriptor prop in TypeDescriptor.GetProperties(item))
                    {
                        if (prop.Name == property.Name)
                        {
                            object value = prop.GetValue(item);
                            if (value.ToString().ToLower().StartsWith(criteria.GetValue().ToString().ToLower()))
                            {
                                sortedList.Add(item);
                            }
                            break;
                        }
                    }
                }
            } break;

            case Operation.Equal:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (PropertyDescriptor prop in TypeDescriptor.GetProperties(item))
                    {
                        if (prop.Name == property.Name)
                        {
                            object value = prop.GetValue(item);
                            if (criteria.Equal(value))
                            {
                                sortedList.Add(item);
                            }
                            break;
                        }
                    }
                }
            } break;

            case Operation.Less:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (PropertyDescriptor prop in TypeDescriptor.GetProperties(item))
                    {
                        if (prop.Name == property.Name)
                        {
                            object value = prop.GetValue(item);
                            if (criteria.Less(value))
                            {
                                sortedList.Add(item);
                            }
                            break;
                        }
                    }
                }
            } break;

            case Operation.LessOrEqual:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (PropertyDescriptor prop in TypeDescriptor.GetProperties(item))
                    {
                        if (prop.Name == property.Name)
                        {
                            object value = prop.GetValue(item);
                            if (criteria.LessOrEqual(value))
                            {
                                sortedList.Add(item);
                            }
                            break;
                        }
                    }
                }
            } break;

            case Operation.Greater:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (PropertyDescriptor prop in TypeDescriptor.GetProperties(item))
                    {
                        if (prop.Name == property.Name)
                        {
                            object value = prop.GetValue(item);
                            if (criteria.Greater(value))
                            {
                                sortedList.Add(item);
                            }
                            break;
                        }
                    }
                }
            } break;

            case Operation.GreaterOrEqual:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (PropertyDescriptor prop in TypeDescriptor.GetProperties(item))
                    {
                        if (prop.Name == property.Name)
                        {
                            object value = prop.GetValue(item);
                            if (criteria.GreaterOrEqual(value))
                            {
                                sortedList.Add(item);
                            }
                            break;
                        }
                    }
                }
            } break;

            default:
            {
                foreach (IAgenteHipatia item in this)
                {
                    foreach (PropertyDescriptor prop in TypeDescriptor.GetProperties(item))
                    {
                        if (prop.Name == property.Name)
                        {
                            object value = prop.GetValue(item);
                            if (value.ToString().ToLower().Contains(criteria.GetValue().ToString().ToLower()))
                            {
                                sortedList.Add(item);
                            }
                            break;
                        }
                    }
                }
            } break;
            }

            sortedList.ApplySort(sortProperty, sortDirection);
            return(sortedList);
        }