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; } }
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); }
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); }
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()); }
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()); }
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(); }
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); }
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); }
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(); }
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); }
/// <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); }
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); }
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); }
/// <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); }