public override ComboBoxSourceList RellenaComboInstructores(long oid, long tipo, int index, long oid_submodulo) { long oid_clase = oid; if (oid_clase <= 0) { ComboBoxSourceList combo_list = new ComboBoxSourceList(); combo_list.Add(new ComboBoxSource(0, "")); Datos_Instructores.DataSource = combo_list; return(combo_list); } List <Submodulo_Instructor_PromocionInfo> list = new List <Submodulo_Instructor_PromocionInfo>(); if (_profesores == null) { _profesores = InstructorList.GetInstructoresHorariosList(EntityInfo.OidPromocion, EntityInfo.FechaInicial, EntityInfo.FechaFinal); } if (_disponibilidades == null) { _disponibilidades = _profesores.GetDisponibilidadesProfesores(EntityInfo.FechaInicial); } DisponibilidadInfo disp = null; foreach (InstructorInfo profesor in _profesores) { if (Horario.ProfesorLibre(_instructores_asignados, index, profesor.Oid, _lista_sesiones, _profesores, -1, EntityInfo.FechaInicial, _disponibilidades) && _disponibilidades.TryGetValue(profesor.Oid, out disp) && disp.Semana[index]) { Instructor_PromocionInfo promo = profesor.Promociones.GetItemByProperty("OidPromocion", EntityInfo.OidPromocion); if (tipo != 2) { Submodulo_Instructor_PromocionInfo sub = promo != null?promo.Submodulos.GetItemByProperty("OidSubmodulo", oid_submodulo) : null; if (sub != null) { list.Add(sub); } } else { Submodulo_Instructor_PromocionInfo sub = promo != null?promo.Submodulos.GetItemByProperty("OidModulo", _lista_sesiones[index].OidModulo) : null; if (sub != null) { list.Add(sub); } } } } //foreach (Submodulo_Instructor_PromocionInfo info in _submodulos) //{ // if (info.OidSubmodulo == oid_submodulo && info.OidPromocion == EntityInfo.OidPromocion) // { // if (Horario.ProfesorLibre(_instructores_asignados, index, info.OidInstructor, // _lista_sesiones, _profesores, -1, EntityInfo.FechaInicial, _disponibilidades)) // list.Add(info); // } //} Submodulo_Instructor_PromocionList lista = Submodulo_Instructor_PromocionList.GetChildList(list); _combo_instructores = new Library.Instruction.HComboBoxSourceList(lista, _profesores); _combo_clases.Childs = _combo_instructores; Datos_Instructores.DataSource = _combo_clases.Childs; return(_combo_clases.Childs); }
/// <summary> /// Asigna los datos de origen para controles que dependen de otros /// </summary> /// <param name="controlName"></param> protected override void SetDependentControlSource(string controlName) { try { switch (controlName) { case "Fecha_DTP": { PgMng.Reset(6, 1, Face.Resources.Messages.REFRESHING_DATA, this); if (_entity != null && Fecha_DTP.Value != _day) { _day = Fecha_DTP.Value; while (_day.DayOfWeek != System.DayOfWeek.Monday) { _day = _day.AddDays(-1); } FFIn_Label.Text = "A Sábado, " + _day.AddDays(5).ToShortDateString(); FInicio_Label.Text = "De Lunes, " + _day.ToShortDateString(); if (_day < Fecha_DTP.MinDate) { Fecha_DTP.Value = Fecha_DTP.MinDate; } else { Fecha_DTP.Value = _day; } PgMng.Grow(); if (_entity.Disponibilidades != null) { DisponibilidadInfo disp = null; foreach (DisponibilidadInfo item in _entity.Disponibilidades) { if (item.FechaInicio.Date.Equals(_day.Date)) { disp = item; break; } } Datos_Disponibilidad.DataSource = _entity.Disponibilidades; PgMng.Grow(); if (disp == null) // hay que resetear los checkbox { L1_CB.Checked = false; L2_CB.Checked = false; L3_CB.Checked = false; L4_CB.Checked = false; L5_CB.Checked = false; L6_CB.Checked = false; L7_CB.Checked = false; L8_CB.Checked = false; L9_CB.Checked = false; L10_CB.Checked = false; L11_CB.Checked = false; L12_CB.Checked = false; M1_CB.Checked = false; M2_CB.Checked = false; M3_CB.Checked = false; M4_CB.Checked = false; M5_CB.Checked = false; M6_CB.Checked = false; M7_CB.Checked = false; M8_CB.Checked = false; M9_CB.Checked = false; M10_CB.Checked = false; M11_CB.Checked = false; M12_CB.Checked = false; X1_CB.Checked = false; X2_CB.Checked = false; X3_CB.Checked = false; X4_CB.Checked = false; X5_CB.Checked = false; X6_CB.Checked = false; X7_CB.Checked = false; X8_CB.Checked = false; X9_CB.Checked = false; X10_CB.Checked = false; X11_CB.Checked = false; X12_CB.Checked = false; J1_CB.Checked = false; J2_CB.Checked = false; J3_CB.Checked = false; J4_CB.Checked = false; J5_CB.Checked = false; J6_CB.Checked = false; J7_CB.Checked = false; J8_CB.Checked = false; J9_CB.Checked = false; J10_CB.Checked = false; J11_CB.Checked = false; J12_CB.Checked = false; V1_CB.Checked = false; V2_CB.Checked = false; V3_CB.Checked = false; V4_CB.Checked = false; V5_CB.Checked = false; V6_CB.Checked = false; V7_CB.Checked = false; V8_CB.Checked = false; V9_CB.Checked = false; V10_CB.Checked = false; V11_CB.Checked = false; V12_CB.Checked = false; S1_CB.Checked = false; S2_CB.Checked = false; S3_CB.Checked = false; S4_CB.Checked = false; S0_CB.Checked = false; L0_CB.Checked = false; M0_CB.Checked = false; X0_CB.Checked = false; J0_CB.Checked = false; V0_CB.Checked = false; ND_L_CB.Checked = false; ND_M_CB.Checked = false; ND_X_CB.Checked = false; ND_J_CB.Checked = false; ND_V_CB.Checked = false; ND_S_CB.Checked = false; PgMng.Grow(); } else { //hay que editar la que existe _disponibilidad = disp; Fecha_DTP.Value = _disponibilidad.FechaInicio; FFIn_Label.Text = "A Sábado, " + _disponibilidad.FechaFin.ToShortDateString(); FInicio_Label.Text = "De Lunes, " + _disponibilidad.FechaInicio.ToShortDateString(); PgMng.Grow(); L1_CB.Checked = _disponibilidad.L1; L2_CB.Checked = _disponibilidad.L2; L3_CB.Checked = _disponibilidad.L3; L4_CB.Checked = _disponibilidad.L4; L5_CB.Checked = _disponibilidad.L5; L6_CB.Checked = _disponibilidad.L6; L7_CB.Checked = _disponibilidad.L7; L8_CB.Checked = _disponibilidad.L8; L9_CB.Checked = _disponibilidad.L9; L10_CB.Checked = _disponibilidad.L10; L11_CB.Checked = _disponibilidad.L11; L12_CB.Checked = _disponibilidad.L12; M1_CB.Checked = _disponibilidad.M1; M2_CB.Checked = _disponibilidad.M2; M3_CB.Checked = _disponibilidad.M3; M4_CB.Checked = _disponibilidad.M4; M5_CB.Checked = _disponibilidad.M5; M6_CB.Checked = _disponibilidad.M6; M7_CB.Checked = _disponibilidad.M7; M8_CB.Checked = _disponibilidad.M8; M9_CB.Checked = _disponibilidad.M9; M10_CB.Checked = _disponibilidad.M10; M11_CB.Checked = _disponibilidad.M11; M12_CB.Checked = _disponibilidad.M12; X1_CB.Checked = _disponibilidad.X1; X2_CB.Checked = _disponibilidad.X2; X3_CB.Checked = _disponibilidad.X3; X4_CB.Checked = _disponibilidad.X4; X5_CB.Checked = _disponibilidad.X5; X6_CB.Checked = _disponibilidad.X6; X7_CB.Checked = _disponibilidad.X7; X8_CB.Checked = _disponibilidad.X8; X9_CB.Checked = _disponibilidad.X9; X10_CB.Checked = _disponibilidad.X10; X11_CB.Checked = _disponibilidad.X11; X12_CB.Checked = _disponibilidad.X12; J1_CB.Checked = _disponibilidad.J1; J2_CB.Checked = _disponibilidad.J2; J3_CB.Checked = _disponibilidad.J3; J4_CB.Checked = _disponibilidad.J4; J5_CB.Checked = _disponibilidad.J5; J6_CB.Checked = _disponibilidad.J6; J7_CB.Checked = _disponibilidad.J7; J8_CB.Checked = _disponibilidad.J8; J9_CB.Checked = _disponibilidad.J9; J10_CB.Checked = _disponibilidad.J10; J11_CB.Checked = _disponibilidad.J11; J12_CB.Checked = _disponibilidad.J12; V1_CB.Checked = _disponibilidad.V1; V2_CB.Checked = _disponibilidad.V2; V3_CB.Checked = _disponibilidad.V3; V4_CB.Checked = _disponibilidad.V4; V5_CB.Checked = _disponibilidad.V5; V6_CB.Checked = _disponibilidad.V6; V7_CB.Checked = _disponibilidad.V7; V8_CB.Checked = _disponibilidad.V8; V9_CB.Checked = _disponibilidad.V9; V10_CB.Checked = _disponibilidad.V10; V11_CB.Checked = _disponibilidad.V11; V12_CB.Checked = _disponibilidad.V12; S1_CB.Checked = _disponibilidad.S1; S2_CB.Checked = _disponibilidad.S2; S3_CB.Checked = _disponibilidad.S3; S4_CB.Checked = _disponibilidad.S4; S0_CB.Checked = _disponibilidad.S0; L0_CB.Checked = _disponibilidad.L0; M0_CB.Checked = _disponibilidad.M0; X0_CB.Checked = _disponibilidad.X0; J0_CB.Checked = _disponibilidad.J0; V0_CB.Checked = _disponibilidad.V0; ND_L_CB.Checked = _disponibilidad.NdL; ND_M_CB.Checked = _disponibilidad.NdM; ND_X_CB.Checked = _disponibilidad.NdX; ND_J_CB.Checked = _disponibilidad.NdJ; ND_V_CB.Checked = _disponibilidad.NdV; ND_S_CB.Checked = _disponibilidad.NdS; Clases_TB.Text = _disponibilidad.ClasesSemanales.ToString(); Observaciones_TB.Text = _disponibilidad.Observaciones; PgMng.Grow(); } } } } break; case "Instructores_CB": { if (Instructores_CB.SelectedItem != null && ((ComboBoxSource)Instructores_CB.SelectedItem).Oid != 0) { _entity = InstructorInfo.Get(((ComboBoxSource)Instructores_CB.SelectedItem).Oid, true); Datos_Disponibilidad.DataSource = _entity.Disponibilidades; Fecha_DTP.Value = DateTime.Today; } } break; } } finally { PgMng.FillUp(); } }