private void Hojas_BT_Click(object sender, EventArgs e) { PrintSource seleccion = PrintSource.All; bool alumno = false; PartesPrintSelectForm form = new PartesPrintSelectForm(seleccion); DialogResult result = form.ShowDialog(); if (result != DialogResult.Cancel) { if (form.Source == PrintSource.Selection) { alumno = true; } } CronogramaReportMng reportMng = new CronogramaReportMng(AppContext.ActiveSchema); AlumnoList lista = AlumnoList.GetListByPromocion(_entity.OidPromocion, false); foreach (ParteAsistenciaInfo item in _entity.Asistencias) { AlumnoList alumnos = null; SesionInfo sesion = null; foreach (SesionInfo ses in _entity.Sesions) { if (ses.Fecha.ToShortDateString() == item.Fecha.ToShortDateString() && ses.Hora.ToShortTimeString() == DateTime.Parse(item.HoraInicio).ToShortTimeString()) { sesion = ses; break; } } alumnos = AlumnoList.CreateAlumnosList(lista, item.Alumno_Partes); if (item.Sesiones != string.Empty && alumnos.Count > 0) { if (item.Tipo == 2 || sesion.OidClasePractica > 0) { ReportViewer.SetReport(reportMng.GetDetailPracticasReport(sesion, alumnos, item.NHoras, _teoricas, /*ClasePracticaList.Merge(_practicas[1], _practicas[2])*/ ClasePracticaList.GetClasesPlanList(_entity.OidPlan), _extras, item.Texto, _entity.OidPromocion, alumno)); } else { ReportViewer.SetReport(reportMng.GetDetailTeoricasReport(sesion, alumnos, item.NHoras, _teoricas, ClasePracticaList.Merge(_practicas[1], _practicas[2]), _extras, item.Texto, _entity.OidPromocion, alumno)); } } ReportViewer.ShowDialog(); } }