/// <summary> /// Método que obtiene las excarcelaciones de acuerdo al estatus seleccionado. /// </summary> public void ObtenerExcarcelaciones() ///===CHECK=== { try { System.DateTime _fechaH = Fechas.GetFechaDateServer; //Se obtienen los ingresos que tengan alguna excarcelación var ingresos = new cIngreso().ObtenerIngresosActivos(GlobalVar.gCentro).Where(w => w.EXCARCELACION.Any()).ToList(); //Se obtiene el estatus seleccionado var estatus_seleccionado = DecisionEstatusExcarcelaciones(); //Se obtienen las excarcelaciones de acuerdo al estatus seleccionado en cuestión a los ingresos que tienen una excarcelación var lista_ingresos = ingresos != null?ingresos.Any() ? ingresos.Where(w => (w.EXCARCELACION.Where(wEXC => wEXC.ID_ESTATUS == estatus_seleccionado && (wEXC.PROGRAMADO_FEC.Value.Year == FechaServer.Year && //LA VARIABLE DEL CAMPO DE FECHA SE LLAMA FECHASERVER wEXC.PROGRAMADO_FEC.Value.Month == FechaServer.Month && wEXC.PROGRAMADO_FEC.Value.Day == FechaServer.Day)) .ToList().Count > 0)).ToList() : new List <INGRESO>() : new List <INGRESO>(); var lista_ingresos_excarcelaciones = new List <InternoIngresoExcarcelacion>(); var ingreso_ubicacion = new cIngresoUbicacion(); var excarcelacion = new cExcarcelacion(); foreach (var ingreso in lista_ingresos) { var ultima_ubicacion = ingreso_ubicacion.ObtenerUltimaUbicacion(ingreso.ID_ANIO, ingreso.ID_CENTRO, ingreso.ID_IMPUTADO, ingreso.ID_INGRESO); var excarcelacion_activa = excarcelacion.ObtenerImputadoExcarcelaciones(ingreso.ID_CENTRO, ingreso.ID_ANIO, ingreso.ID_IMPUTADO, ingreso.ID_INGRESO).Where(w => w.ID_ESTATUS == EXCARCELACION_ACTIVA && w.PROGRAMADO_FEC.Value.Year == FechaServer.Year && w.PROGRAMADO_FEC.Value.Month == FechaServer.Month && w.PROGRAMADO_FEC.Value.Day == FechaServer.Day).Any(); lista_ingresos_excarcelaciones.Add(new InternoIngresoExcarcelacion() { Id_Centro = ingreso.ID_CENTRO, Id_Anio = ingreso.ID_ANIO, Id_Imputado = ingreso.ID_IMPUTADO, Id_Ingreso = ingreso.ID_INGRESO, Nombre = ingreso.IMPUTADO != null ? !string.IsNullOrEmpty(ingreso.IMPUTADO.NOMBRE) ? ingreso.IMPUTADO.NOMBRE.Trim() : string.Empty : string.Empty, Paterno = ingreso.IMPUTADO != null ? !string.IsNullOrEmpty(ingreso.IMPUTADO.PATERNO) ? ingreso.IMPUTADO.PATERNO.Trim() : string.Empty : string.Empty, Materno = ingreso.IMPUTADO != null ? !string.IsNullOrEmpty(ingreso.IMPUTADO.MATERNO) ? ingreso.IMPUTADO.MATERNO.Trim() : string.Empty : string.Empty, EnSalidaDeCentro = (ultima_ubicacion != null && ultima_ubicacion.ID_AREA == SALIDA_DE_CENTRO && ultima_ubicacion.ESTATUS == (short)enumUbicacion.ACTIVIDAD && !excarcelacion_activa) }); } ListaIngresos = lista_ingresos_excarcelaciones; } //Si ocurrió un error, entonces... catch (Exception ex) { //Se le notifica al usuario que ocurrió un error StaticSourcesViewModel.ShowMessageError("Algo Paso...", "Ocurrió un error al obtener las excarcelaciones", ex); } }
private void GenerarReporte() { try { //NOTA: ANIO TEMPORALMENTE FIJO SOLO PARA PRUEBAS DEBIDO A QUE NO HAY REGISTROS PARA EL ANIO 2016 //DESCOMENTAR MAS ADELANTE var mes = Fechas.GetFechaDateServer.Month; var anio = Fechas.GetFechaDateServer.Year; var datosReporte = new List <cReporteDatos>(); var tercera_Edad = Parametro.ID_TERCERA_EDAD; datosReporte.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1, Encabezado2 = Parametro.ENCABEZADO2, Encabezado3 = Parametro.ENCABEZADO3, Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Titulo = "Tercera Edad" }); var lst_internos_causa_penal_delito = new cCausaPenalDelito().ObtenerTodos().ToList(); var internos_lista = new cIngreso().ObtenerIngresosActivos(GlobalVar.gCentro).Where(w => w.FEC_INGRESO_CERESO.Value.Month == mes && w.FEC_INGRESO_CERESO.Value.Year == anio).ToList(); var lst_imp = new List <cPoblacionTerceraEdad>(); var lst_imp_grafica = new List <cGraficaTerceraEdad>(); foreach (var item in internos_lista) { var interno = lst_internos_causa_penal_delito.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno == null) { var bday = new Fechas().CalculaEdad(item.IMPUTADO.NACIMIENTO_FECHA.HasValue ? item.IMPUTADO.NACIMIENTO_FECHA : Fechas.GetFechaDateServer); //DateTime now = DateTime.Today; //int age = now.Year - bday.Value.Year; //if (now < bday.Value.AddYears(age)) age--; if (bday >= tercera_Edad) { if (bday >= 30 && bday <= 40) { var obj = new cPoblacionTerceraEdad(); obj.Edad = bday.ToString(); obj.Rango = "30 a 40";//age.ToString();//item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Sin Fuero"; obj.SinFueroProcMasc = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (bday > 40 && bday <= 50) { var obj = new cPoblacionTerceraEdad(); obj.Edad = bday.ToString(); obj.Rango = "40 a 50";//age.ToString();//item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Sin Fuero"; obj.SinFueroProcMasc = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (bday > 50 && bday <= 60) { var obj = new cPoblacionTerceraEdad(); obj.Edad = bday.ToString(); obj.Rango = "50 a 60";//age.ToString();//item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Sin Fuero"; obj.SinFueroProcMasc = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (bday > 60) { var obj = new cPoblacionTerceraEdad(); obj.Edad = bday.ToString(); obj.Rango = "Mayor de 60";//age.ToString();//item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Sin Fuero"; obj.SinFueroProcMasc = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } } } } foreach (var item in lst_internos_causa_penal_delito) { var interno = internos_lista.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno != null) { var bday = interno.IMPUTADO.NACIMIENTO_FECHA; DateTime now = DateTime.Today; int age = now.Year - bday.Value.Year; if (now < bday.Value.AddYears(age)) { age--; } if (age >= tercera_Edad) { if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "C") { if (age >= 30 && age <= 40) { var obj = new cPoblacionTerceraEdad(); obj.Edad = age.ToString(); obj.Rango = "30 a 40";//age.ToString();//item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Comun"; obj.ComunImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunIndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (age > 40 && age <= 50) { var obj = new cPoblacionTerceraEdad(); obj.Edad = age.ToString(); obj.Rango = "40 a 50";//age.ToString();//item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Comun"; obj.ComunImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunIndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (age > 50 && age <= 60) { var obj = new cPoblacionTerceraEdad(); obj.Edad = age.ToString(); obj.Rango = "50 a 60";//age.ToString();//item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Comun"; obj.ComunImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunIndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (age > 60) { var obj = new cPoblacionTerceraEdad(); obj.Edad = age.ToString(); obj.Rango = "Mayor de 60";//age.ToString();//item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Comun"; obj.ComunImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunIndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } } if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "F") { if (age >= 30 && age <= 40) { var obj = new cPoblacionTerceraEdad(); obj.Edad = age.ToString(); obj.Rango = "30 a 40";//age.ToString(); obj.Causa = "Federal"; obj.FederalProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.FederalSentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (age > 40 && age <= 50) { var obj = new cPoblacionTerceraEdad(); obj.Edad = age.ToString(); obj.Rango = "40 a 50";//age.ToString(); obj.Causa = "Federal"; obj.FederalProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.FederalSentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (age > 50 && age <= 60) { var obj = new cPoblacionTerceraEdad(); obj.Edad = age.ToString(); obj.Rango = "50 a 60";//age.ToString(); obj.Causa = "Federal"; obj.FederalProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.FederalSentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (age > 60) { var obj = new cPoblacionTerceraEdad(); obj.Edad = age.ToString(); obj.Rango = "Mayor de 60";//age.ToString(); obj.Causa = "Federal"; obj.FederalProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.FederalSentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } } } } } foreach (var item in lst_imp) { if (item.Causa == "Comun") { if (item.ComunImpMasc > 0) { var obj = new cGraficaTerceraEdad(); obj.Rango = item.Rango; obj.Causa = "Comun Imputado"; obj.Comun += item.ComunImpMasc; lst_imp_grafica.Add(obj); } if (item.ComunIndicMasc > 0) { var obj = new cGraficaTerceraEdad(); obj.Rango = item.Rango; obj.Causa = "Comun Indiciado"; obj.Comun += item.ComunIndicMasc; lst_imp_grafica.Add(obj); } if (item.ComunProcMasc > 0) { var obj = new cGraficaTerceraEdad(); obj.Rango = item.Rango; obj.Causa = "Comun Procesado"; obj.Comun += item.ComunProcMasc; lst_imp_grafica.Add(obj); } if (item.ComunSentMasc > 0) { var obj = new cGraficaTerceraEdad(); obj.Rango = item.Rango; obj.Causa = "Comun Sentenciado"; obj.Comun += item.ComunSentMasc; lst_imp_grafica.Add(obj); } } if (item.Causa == "Federal") { if (item.FederalProcMasc > 0) { var obj = new cGraficaTerceraEdad(); obj.Rango = item.Rango; obj.Causa = "Federal Procesado"; obj.Comun += item.FederalProcMasc + item.FederalProcFem; lst_imp_grafica.Add(obj); } if (item.FederalSentMasc > 0) { var obj = new cGraficaTerceraEdad(); obj.Rango = item.Rango; obj.Causa = "Federal Sentenciado"; obj.Comun += item.FederalSentMasc + item.FederalSentFem; lst_imp_grafica.Add(obj); } } if (item.Causa == "Sin Fuero") { if (item.SinFueroProcMasc > 0) { var obj = new cGraficaTerceraEdad(); obj.Rango = item.Rango; obj.Causa = "Sin Fuero Procesado"; obj.Comun += item.SinFueroProcMasc; lst_imp_grafica.Add(obj); } } } var results = lst_imp.GroupBy(n => n.Rango). Select(group => new { Rango = group.Key, Sexo = group.ToList(), }); var lst_imp2 = new List <cPoblacionTerceraEdad>(); foreach (var row in results) { var obj = new cPoblacionTerceraEdad(); obj.Rango = row.Rango; foreach (var item in row.Sexo) { obj.ComunImpMasc += item.ComunImpMasc; obj.ComunIndicMasc += item.ComunIndicMasc; obj.ComunProcMasc += item.ComunProcMasc; obj.ComunSentMasc += item.ComunSentMasc; obj.FederalProcFem += item.FederalProcFem; obj.FederalProcMasc += item.FederalProcMasc; obj.FederalSentFem += item.FederalSentFem; obj.FederalSentMasc += item.FederalSentMasc; obj.SinFueroProcMasc += item.SinFueroProcMasc; } lst_imp2.Add(obj); } Reporte.LocalReport.ReportPath = "../../Reportes/rPoblacionTerceraEdad.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource rds1 = new ReportDataSource(); rds1.Name = "DataSet1"; rds1.Value = datosReporte; Reporte.LocalReport.DataSources.Add(rds1); ReportDataSource rds2 = new ReportDataSource(); rds2.Name = "DataSet2"; rds2.Value = lst_imp2; Reporte.LocalReport.DataSources.Add(rds2); ReportDataSource rds3 = new ReportDataSource(); rds3.Name = "DataSet3"; rds3.Value = lst_imp_grafica; Reporte.LocalReport.DataSources.Add(rds3); Application.Current.Dispatcher.Invoke((Action)(delegate { Reporte.Refresh(); Reporte.RefreshReport(); })); } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al generar reporte.", ex); } }
private void GenerarReporte() { try { //NOTA: ANIO TEMPORALMENTE FIJO SOLO PARA PRUEBAS DEBIDO A QUE NO HAY REGISTROS PARA EL ANIO 2016 //DESCOMENTAR MAS ADELANTE var mes = Fechas.GetFechaDateServer.Month; var anio = Fechas.GetFechaDateServer.Year; var datosReporte = new List <cReporteDatos>(); datosReporte.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1, Encabezado2 = Parametro.ENCABEZADO2, Encabezado3 = Parametro.ENCABEZADO3, Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Titulo = "Población Extranjera" }); var lst_internos_causa_penal_delito = new cCausaPenalDelito().ObtenerTodos().ToList(); var internos_lista = new cIngreso().ObtenerIngresosActivos(GlobalVar.gCentro).Where(w => w.FEC_INGRESO_CERESO.Value.Year == anio && w.FEC_INGRESO_CERESO.Value.Month == mes).ToList(); var lst_imp = new List <cPoblacionExtranjera>(); var lst_imp_grafica = new List <cGraficaPoblacionExtranjeraF>(); //var lst_imp_grafica_f = new List<cReporteGraficaPoblacionEntidadF>(); foreach (var item in internos_lista) { var interno = lst_internos_causa_penal_delito.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno == null) { var obj = new cPoblacionExtranjera(); obj.Pais = item.IMPUTADO.PAIS_NACIONALIDAD == null ? string.Empty : item.IMPUTADO.PAIS_NACIONALIDAD.PAIS; obj.Causa = "Sin Fuero"; obj.SinFueroIndiciado = item.ID_CLASIFICACION_JURIDICA == "I" ? 1 : 0; obj.SinFueroProcesado = item.ID_CLASIFICACION_JURIDICA == "2" ? 1 : 0; obj.SinFueroSentenciado = item.ID_CLASIFICACION_JURIDICA == "3" ? 1 : 0; lst_imp.Add(obj); } } foreach (var item in lst_internos_causa_penal_delito) { var interno = internos_lista.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno != null) { if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "C") { var obj = new cPoblacionExtranjera(); obj.Pais = item.CAUSA_PENAL.INGRESO.IMPUTADO.PAIS_NACIONALIDAD.PAIS; obj.Causa = "Comun"; obj.ComunProcesado = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" ? 1 : 0; lst_imp.Add(obj); } } } //Para alimentar grafica Masculino foreach (var item in lst_imp) { if (item.Causa == "Comun") { if (item.ComunProcesado > 0) { var obj = new cGraficaPoblacionExtranjeraF(); obj.Pais = item.Pais; obj.Causa = "Procesado Fuero Comun"; obj.Comun += item.ComunProcesado; lst_imp_grafica.Add(obj); } } if (item.Causa == "Sin Fuero") { if (item.SinFueroIndiciado > 0) { var obj = new cGraficaPoblacionExtranjeraF(); obj.Pais = item.Pais; obj.Causa = "Indiciado sin Fuero"; obj.Comun += item.SinFueroIndiciado; lst_imp_grafica.Add(obj); } if (item.SinFueroProcesado > 0) { var obj = new cGraficaPoblacionExtranjeraF(); obj.Pais = item.Pais; obj.Causa = "Procesado sin Fuero"; obj.Comun += item.SinFueroProcesado; lst_imp_grafica.Add(obj); } if (item.SinFueroSentenciado > 0) { var obj = new cGraficaPoblacionExtranjeraF(); obj.Pais = item.Pais; obj.Causa = "Sentenciado sin Fuero"; obj.Comun += item.SinFueroSentenciado; lst_imp_grafica.Add(obj); } } } var results = lst_imp.GroupBy(n => n.Pais). Select(group => new { Pais = group.Key, Sexo = group.ToList(), }); var lst_imp2 = new List <cPoblacionExtranjera>(); foreach (var row in results) { var obj = new cPoblacionExtranjera(); obj.Pais = row.Pais; foreach (var item in row.Sexo) { obj.ComunProcesado += item.ComunProcesado; obj.SinFueroIndiciado += item.SinFueroIndiciado; obj.SinFueroProcesado += item.SinFueroProcesado; obj.SinFueroSentenciado += item.SinFueroSentenciado; } lst_imp2.Add(obj); } Reporte.LocalReport.ReportPath = "../../Reportes/rPoblacionExtranjero.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource rds1 = new ReportDataSource(); rds1.Name = "DataSet1"; rds1.Value = datosReporte; Reporte.LocalReport.DataSources.Add(rds1); ReportDataSource rds2 = new ReportDataSource(); rds2.Name = "DataSet2"; rds2.Value = lst_imp2; Reporte.LocalReport.DataSources.Add(rds2); ReportDataSource rds3 = new ReportDataSource(); rds3.Name = "DataSet4"; rds3.Value = lst_imp_grafica; Reporte.LocalReport.DataSources.Add(rds3); Application.Current.Dispatcher.Invoke((Action)(delegate { Reporte.Refresh(); Reporte.RefreshReport(); })); } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al generar reporte.", ex); } }
private void GenerarReporte() { try { switch (OrdenarPor) { case 1: //DELITO COMUN var mes = 12; //var mes = Fechas.GetFechaDateServer.Month; //NOTA: ANIO TEMPORALMENTE FIJO SOLO PARA PRUEBAS DEBIDO A QUE NO HAY REGISTROS PARA EL ANIO 2016 //DESCOMENTAR MAS ADELANTE var anio = 2015; //Fechas.GetFechaDateServer.Year; //var lista_internos_mes = internos_lista.Where(w => w.FEC_INGRESO_CERESO.Value.Month == mes).ToList(); var datosReporte = new List <cReporteDatos>(); // List<string> termsList = new List<string>(); datosReporte.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1, Encabezado2 = Parametro.ENCABEZADO2, Encabezado3 = Parametro.ENCABEZADO3, Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Titulo = "Población por delito común" }); var lst_internos_causa_penal_delito = new cCausaPenalDelito().ObtenerTodos().ToList(); var internos_lista = new cIngreso().ObtenerIngresosActivos(GlobalVar.gCentro).Where(w => w.FEC_INGRESO_CERESO.Value.Month == mes && w.FEC_INGRESO_CERESO.Value.Year == anio).ToList(); int x = 0; var lst_imp = new List <cPoblacionDelitoComun>(); foreach (var item in lst_internos_causa_penal_delito) { var interno = internos_lista.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno != null) { if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "C") { var obj = new cPoblacionDelitoComun(); obj.DelitoComun = item.MODALIDAD_DELITO.DELITO.DESCR; obj.Sexo = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO; obj.Indiciados = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" ? 1 : 0; obj.Procesados = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" ? 1 : 0; obj.Sentenciados = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" ? 1 : 0; lst_imp.Add(obj); } } } var results = lst_imp.GroupBy(n => n.DelitoComun). Select(group => new { DelitoComun = group.Key, Sexo = group.ToList(), }); var lst_imp2 = new List <cPoblacionDelitoComun>(); foreach (var row in results) { var obj = new cPoblacionDelitoComun(); obj.DelitoComun = row.DelitoComun; foreach (var item in row.Sexo) { obj.Sexo = item.Sexo == "M" ? "MASCULINO" : item.Sexo == "F" ? "FEMENINO" : string.Empty; obj.Indiciados += item.Indiciados; obj.Procesados += item.Procesados; obj.Sentenciados += item.Sentenciados; } lst_imp2.Add(obj); } Reporte.LocalReport.ReportPath = "../../Reportes/rPoblacionPorDelitoComun.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource rds1 = new ReportDataSource(); rds1.Name = "DataSet1"; rds1.Value = datosReporte; Reporte.LocalReport.DataSources.Add(rds1); ReportDataSource rds2 = new ReportDataSource(); rds2.Name = "DataSet2"; rds2.Value = lst_imp2; Reporte.LocalReport.DataSources.Add(rds2); Application.Current.Dispatcher.Invoke((Action)(delegate { Reporte.Refresh(); Reporte.RefreshReport(); })); break; case 2: //DELITO FEDERAL var mes2 = 12; //var mes2 = Fechas.GetFechaDateServer.Month; //NOTA: ANIO TEMPORALMENTE FIJO SOLO PARA PRUEBAS DEBIDO A QUE NO HAY REGISTROS PARA EL ANIO 2016 //DESCOMENTAR MAS ADELANTE var anio2 = 2015; //Fechas.GetFechaDateServer.Year; //var lista_internos_mes = internos_lista.Where(w => w.FEC_INGRESO_CERESO.Value.Month == mes).ToList(); var datosReporte2 = new List <cReporteDatos>(); // List<string> termsList = new List<string>(); datosReporte2.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1, Encabezado2 = Parametro.ENCABEZADO2, Encabezado3 = Parametro.ENCABEZADO3, Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Titulo = "Población por delito federal" }); var lst_internos_causa_penal_delito2 = new cCausaPenalDelito().ObtenerTodos().ToList(); var internos_lista2 = new cIngreso().ObtenerIngresosActivos(GlobalVar.gCentro).Where(w => w.FEC_INGRESO_CERESO.Value.Month == mes2 && w.FEC_INGRESO_CERESO.Value.Year == anio2).ToList(); var lst_imp3 = new List <cPoblacionDelitoFeferal>(); foreach (var item in lst_internos_causa_penal_delito2) { var interno = internos_lista2.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno != null) { if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "F") { var obj = new cPoblacionDelitoFeferal(); obj.DelitoFederal = item.MODALIDAD_DELITO.DELITO.DESCR; obj.Sexo = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO; obj.Indiciados = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" ? 1 : 0; obj.Procesados = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" ? 1 : 0; obj.Sentenciados = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" ? 1 : 0; lst_imp3.Add(obj); } } } var results2 = lst_imp3.GroupBy(n => n.DelitoFederal). Select(group => new { DelitoFederal = group.Key, Sexo = group.ToList(), }); var lst_imp4 = new List <cPoblacionDelitoFeferal>(); foreach (var row in results2) { var obj = new cPoblacionDelitoFeferal(); obj.DelitoFederal = row.DelitoFederal; foreach (var item in row.Sexo) { obj.Sexo = item.Sexo == "M" ? "MASCULINO" : item.Sexo == "F" ? "FEMENINO" : string.Empty; obj.Indiciados += item.Indiciados; obj.Procesados += item.Procesados; obj.Sentenciados += item.Sentenciados; } lst_imp4.Add(obj); } Reporte.LocalReport.ReportPath = "../../Reportes/rPoblacionDelitoFederal.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource rds12 = new ReportDataSource(); rds12.Name = "DataSet1"; rds12.Value = datosReporte2; Reporte.LocalReport.DataSources.Add(rds12); ReportDataSource rds22 = new ReportDataSource(); rds22.Name = "DataSet2"; rds22.Value = lst_imp4; Reporte.LocalReport.DataSources.Add(rds22); Application.Current.Dispatcher.Invoke((Action)(delegate { Reporte.Refresh(); Reporte.RefreshReport(); })); break; } } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al generar reporte.", ex); } }
private void GenerarReporte() { try { //NOTA: ANIO TEMPORALMENTE FIJO SOLO PARA PRUEBAS DEBIDO A QUE NO HAY REGISTROS PARA EL ANIO 2016 //DESCOMENTAR MAS ADELANTE //var mes = Fechas.GetFechaDateServer.Month; //var anio = Fechas.GetFechaDateServer.Year; var fecha = Fechas.GetFechaDateServer; CultureInfo cultura = new CultureInfo("es-MX"); var datosReporte = new List <cReporteDatos>(); datosReporte.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1, Encabezado2 = Parametro.ENCABEZADO2, Encabezado3 = Parametro.ENCABEZADO3, Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Titulo = string.Format("Población {0} del {1}", cultura.DateTimeFormat.GetMonthName(fecha.Month), fecha.Year), }); var lst_internos_causa_penal_delito = new cCausaPenalDelito().ObtenerTodos().ToList(); var internos_lista = new cIngreso().ObtenerIngresosActivos(GlobalVar.gCentro).ToList();//.Where(w => w.FEC_INGRESO_CERESO.Value.Year == anio && w.FEC_INGRESO_CERESO.Value.Month == mes).ToList(); var lst_imp = new List <cPoblacion>(); var lst_imp_grafica = new List <cGraficaPoblacionM>(); var lst_imp_grafica_f = new List <cGraficaPoblacionF>(); foreach (var item in internos_lista) { var interno = lst_internos_causa_penal_delito.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO) .FirstOrDefault(); if (interno == null) { var obj = new cPoblacion(); obj.Fuero = "Sin Fuero";//item.CAUSA_PENAL == null ? string.Empty : item.IMPUTADO.ENTIDAD.DESCR; //obj.Causa = "Sin Fuero"; obj.ImpFem = item.ID_CLASIFICACION_JURIDICA == "I" && item.NUC == null && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ImpMasc = item.ID_CLASIFICACION_JURIDICA == "I" && item.NUC == null && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.ID_CLASIFICACION_JURIDICA == "I" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.ID_CLASIFICACION_JURIDICA == "I" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.ID_CLASIFICACION_JURIDICA == "3" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.ID_CLASIFICACION_JURIDICA == "3" && item.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } } foreach (var item in lst_internos_causa_penal_delito) { var interno = internos_lista.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno != null) { if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "C") { var obj = new cPoblacion(); obj.Fuero = "Comun";//item.CAUSA_PENAL.INGRESO.IMPUTADO.ENTIDAD.DESCR; //obj.Causa = "Comun"; obj.ImpFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } else if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "F") { var obj = new cPoblacion(); obj.Fuero = "Federal"; //obj.Causa = "Federal"; obj.ImpFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } } } //Para alimentar grafica Masculino foreach (var item in lst_imp) { if (item.Fuero == "Comun") { if (item.ImpMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpMasc; lst_imp_grafica.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica.Add(obj); } } if (item.Fuero == "Federal") { if (item.ImpMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpMasc; lst_imp_grafica.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica.Add(obj); } } if (item.Fuero == "Sin Fuero") { if (item.ImpMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpMasc; lst_imp_grafica.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaPoblacionM(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica.Add(obj); } } } //Para alimentar grafica Femenino foreach (var item in lst_imp) { if (item.Fuero == "Comun") { if (item.ImpFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpFem; lst_imp_grafica_f.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_f.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_f.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_f.Add(obj); } } if (item.Fuero == "Federal") { if (item.ImpFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpFem; lst_imp_grafica_f.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_f.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_f.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_f.Add(obj); } } if (item.Fuero == "Sin Fuero") { if (item.ImpFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpFem; lst_imp_grafica_f.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_f.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_f.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaPoblacionF(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_f.Add(obj); } } } var results = lst_imp.GroupBy(n => n.Fuero). Select(group => new { Fuero = group.Key, Sexo = group.ToList(), }); var lst_imp2 = new List <cPoblacion>(); foreach (var row in results) { var obj = new cPoblacion(); obj.Fuero = row.Fuero; foreach (var item in row.Sexo) { obj.ImpFem += item.ImpFem; obj.ImpMasc += item.ImpMasc; obj.IndicFem += item.IndicFem; obj.IndicMasc += item.IndicMasc; obj.ProcFem += item.ProcFem; obj.ProcMasc += item.ProcMasc; obj.SentFem += item.SentFem; obj.SentMasc += item.SentMasc; } lst_imp2.Add(obj); } Reporte.LocalReport.ReportPath = "Reportes/rPoblacion.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource rds1 = new ReportDataSource(); rds1.Name = "DataSet1"; rds1.Value = datosReporte; Reporte.LocalReport.DataSources.Add(rds1); ReportDataSource rds2 = new ReportDataSource(); rds2.Name = "DataSet2"; rds2.Value = lst_imp2.OrderBy(o => o.Fuero); Reporte.LocalReport.DataSources.Add(rds2); ReportDataSource rds3 = new ReportDataSource(); rds3.Name = "DataSet3"; rds3.Value = lst_imp_grafica_f; Reporte.LocalReport.DataSources.Add(rds3); ReportDataSource rds4 = new ReportDataSource(); rds4.Name = "DataSet4"; rds4.Value = lst_imp_grafica; Reporte.LocalReport.DataSources.Add(rds4); Application.Current.Dispatcher.Invoke((Action)(delegate { Reporte.Refresh(); Reporte.RefreshReport(); })); } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al generar reporte.", ex); } }
private void GenerarReporte() { try { var mes = Fechas.GetFechaDateServer.Month; switch (OrdenarPor) { case 1: //expediente mes = 1; break; case 2: //nombre mes = 2; break; case 3: //Ubicacion mes = 3; break; case 4: //expediente mes = 4; break; case 5: //nombre mes = 5; break; case 6: //Ubicacion mes = 6; break; case 7: //expediente mes = 7; break; case 8: //nombre mes = 8; break; case 9: //Ubicacion mes = 9; break; case 10: //expediente mes = 10; break; case 11: //nombre mes = 11; break; case 12: //Ubicacion mes = 12; break; } var anio = Fechas.GetFechaDateServer.Year; var datosReporte = new List <cReporteDatos>(); datosReporte.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1, Encabezado2 = Parametro.ENCABEZADO2, Encabezado3 = Parametro.ENCABEZADO3, Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Titulo = "Altas-Bajas" }); var lst_internos_causa_penal_delito = new cCausaPenalDelito().ObtenerTodos().ToList(); var internos_lista = new cIngreso().ObtenerIngresosActivos(GlobalVar.gCentro).ToList();//.Where(w => w.FEC_INGRESO_CERESO.Value.Year == anio && w.FEC_INGRESO_CERESO.Value.Month == mes).ToList(); var lst_imp_altas = new List <cPoblacionAltasBajas>(); var lst_imp_bajas = new List <cPoblacionAltasBajas>(); var lst_total_sexo = new List <cTotalSexo>(); var lst_imp_grafica_alta_masc = new List <cGraficaAltaBaja>(); var lst_imp_grafica_baja_masc = new List <cGraficaAltaBaja>(); var lst_imp_grafica_alta_fem = new List <cGraficaAltaBaja>(); var lst_imp_grafica_baja_fem = new List <cGraficaAltaBaja>(); foreach (var item in internos_lista) { if (item.FEC_INGRESO_CERESO != null) { if ((item.FEC_INGRESO_CERESO.Value.Year == anio && item.FEC_INGRESO_CERESO.Value.Month == mes) || (item.FEC_INGRESO_CERESO >= FechaInicio && item.FEC_INGRESO_CERESO <= FechaFin)) { var interno = lst_internos_causa_penal_delito.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno == null) { var obj = new cPoblacionAltasBajas(); var row = new cTotalSexo(); obj.Fuero = "Sin Fuero";//item.CAUSA_PENAL == null ? string.Empty : item.IMPUTADO.ENTIDAD.DESCR; obj.Tipo = "Alta"; row.Masculino = item.IMPUTADO.SEXO == "M" ? 1 : 0; row.Femenino = item.IMPUTADO.SEXO == "F" ? 1 : 0; row.SinSexo = item.IMPUTADO.SEXO == null ? 1 : 0; obj.DiscFem = item.ID_CLASIFICACION_JURIDICA == "4" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.DiscMasc = item.ID_CLASIFICACION_JURIDICA == "4" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.ID_CLASIFICACION_JURIDICA == "I" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.ID_CLASIFICACION_JURIDICA == "I" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.ID_CLASIFICACION_JURIDICA == "3" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.ID_CLASIFICACION_JURIDICA == "3" && item.IMPUTADO.SEXO == "M" ? 1 : 0; lst_total_sexo.Add(row); lst_imp_altas.Add(obj); } } } if (item.FEC_SALIDA_CERESO != null) { if ((item.FEC_SALIDA_CERESO.Value.Year == anio && item.FEC_SALIDA_CERESO.Value.Month == mes) || (item.FEC_SALIDA_CERESO >= FechaInicio && item.FEC_SALIDA_CERESO <= FechaFin)) { var interno = lst_internos_causa_penal_delito.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno == null) { var obj = new cPoblacionAltasBajas(); var row = new cTotalSexo(); obj.Fuero = "Sin Fuero";//item.CAUSA_PENAL == null ? string.Empty : item.IMPUTADO.ENTIDAD.DESCR; obj.Tipo = "Baja"; row.Masculino = item.IMPUTADO.SEXO == "M" ? 1 : 0; row.Femenino = item.IMPUTADO.SEXO == "F" ? 1 : 0; row.SinSexo = item.IMPUTADO.SEXO == null ? 1 : 0; obj.DiscFem = item.ID_CLASIFICACION_JURIDICA == "4" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.DiscMasc = item.ID_CLASIFICACION_JURIDICA == "4" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ImpMasc = item.ID_CLASIFICACION_JURIDICA == "1" && item.NUC == null && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.ID_CLASIFICACION_JURIDICA == "I" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.ID_CLASIFICACION_JURIDICA == "I" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.ID_CLASIFICACION_JURIDICA == "3" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.ID_CLASIFICACION_JURIDICA == "3" && item.IMPUTADO.SEXO == "M" ? 1 : 0; lst_total_sexo.Add(row); lst_imp_bajas.Add(obj); } } } } foreach (var item in lst_internos_causa_penal_delito) { var interno = internos_lista.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno != null) { if (item.CAUSA_PENAL.INGRESO.FEC_INGRESO_CERESO != null) { if ((item.CAUSA_PENAL.INGRESO.FEC_INGRESO_CERESO.Value.Year == anio && item.CAUSA_PENAL.INGRESO.FEC_INGRESO_CERESO.Value.Month == mes) || (item.CAUSA_PENAL.INGRESO.FEC_INGRESO_CERESO >= FechaInicio && item.CAUSA_PENAL.INGRESO.FEC_INGRESO_CERESO <= FechaFin)) { if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "C") { var obj = new cPoblacionAltasBajas(); var row = new cTotalSexo(); obj.Fuero = "Comun";//item.CAUSA_PENAL.INGRESO.IMPUTADO.ENTIDAD.DESCR; obj.Tipo = "Alta"; row.Masculino = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; row.Femenino = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; row.SinSexo = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == null ? 1 : 0; obj.DiscFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.DiscMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_total_sexo.Add(row); lst_imp_altas.Add(obj); } else if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "F") { var obj = new cPoblacionAltasBajas(); var row = new cTotalSexo(); obj.Fuero = "Federal"; obj.Tipo = "Alta"; row.Masculino = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; row.Femenino = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; row.SinSexo = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == null ? 1 : 0; obj.DiscFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.DiscMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_total_sexo.Add(row); lst_imp_altas.Add(obj); } } } if (item.CAUSA_PENAL.INGRESO.FEC_SALIDA_CERESO != null) { if ((item.CAUSA_PENAL.INGRESO.FEC_SALIDA_CERESO.Value.Year == anio && item.CAUSA_PENAL.INGRESO.FEC_SALIDA_CERESO.Value.Month == mes) || (item.CAUSA_PENAL.INGRESO.FEC_SALIDA_CERESO >= FechaInicio && item.CAUSA_PENAL.INGRESO.FEC_SALIDA_CERESO <= FechaFin)) { if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "C") { var obj = new cPoblacionAltasBajas(); var row = new cTotalSexo(); obj.Fuero = "Comun";//item.CAUSA_PENAL.INGRESO.IMPUTADO.ENTIDAD.DESCR; obj.Tipo = "Baja"; row.Masculino = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; row.Femenino = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; row.SinSexo = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == null ? 1 : 0; obj.DiscFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.DiscMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "1" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_total_sexo.Add(row); lst_imp_bajas.Add(obj); } else if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "F") { var obj = new cPoblacionAltasBajas(); var row = new cTotalSexo(); obj.Fuero = "Federal"; obj.Tipo = "Baja"; row.Masculino = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; row.Femenino = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; row.SinSexo = item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == null ? 1 : 0; obj.DiscFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.DiscMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "1" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.IndicFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.IndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_total_sexo.Add(row); lst_imp_bajas.Add(obj); } } } } } //Para alimentar grafica Alta masculino foreach (var item in lst_imp_altas) { if (item.Fuero == "Comun" && item.Tipo == "Alta") { if (item.DiscMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica_alta_masc.Add(obj); } } if (item.Fuero == "Federal" && item.Tipo == "Alta") { if (item.DiscMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica_alta_masc.Add(obj); } } if (item.Fuero == "Sin Fuero" && item.Tipo == "Alta") { if (item.DiscMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica_alta_masc.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica_alta_masc.Add(obj); } } } //Para alimentar grafica alta femenino foreach (var item in lst_imp_altas) { if (item.Fuero == "Comun" && item.Tipo == "Alta") { if (item.DiscFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_alta_fem.Add(obj); } } if (item.Fuero == "Federal" && item.Tipo == "Alta") { if (item.DiscFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_alta_fem.Add(obj); } } if (item.Fuero == "Sin Fuero" && item.Tipo == "Alta") { if (item.DiscFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_alta_fem.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_alta_fem.Add(obj); } } } //Para alimentar grafica baja masculino foreach (var item in lst_imp_bajas) { if (item.Fuero == "Comun" && item.Tipo == "Baja") { if (item.DiscMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.ImpMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica_baja_masc.Add(obj); } } if (item.Fuero == "Federal" && item.Tipo == "Baja") { if (item.DiscMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.ImpMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica_baja_masc.Add(obj); } } if (item.Fuero == "Sin Fuero" && item.Tipo == "Baja") { if (item.DiscMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.ImpMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Imputado"; obj.Comun += item.ImpMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.IndicMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.ProcMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcMasc; lst_imp_grafica_baja_masc.Add(obj); } if (item.SentMasc > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentMasc; lst_imp_grafica_baja_masc.Add(obj); } } } //Para alimentar grafica Baja femenino foreach (var item in lst_imp_bajas) { if (item.Fuero == "Comun" && item.Tipo == "Baja") { if (item.DiscFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_baja_fem.Add(obj); } } if (item.Fuero == "Federal" && item.Tipo == "Baja") { if (item.DiscFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_baja_fem.Add(obj); } } if (item.Fuero == "Sin Fuero" && item.Tipo == "Baja") { if (item.DiscFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Discrecional"; obj.Comun += item.DiscFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.IndicFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Indiciado"; obj.Comun += item.IndicFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.ProcFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Procesado"; obj.Comun += item.ProcFem; lst_imp_grafica_baja_fem.Add(obj); } if (item.SentFem > 0) { var obj = new cGraficaAltaBaja(); obj.Fuero = item.Fuero; obj.Causa = "Sentenciado"; obj.Comun += item.SentFem; lst_imp_grafica_baja_fem.Add(obj); } } } var results_altas = lst_imp_altas.GroupBy(n => n.Fuero). Select(group => new { Fuero = group.Key, Sexo = group.ToList(), }); var lst_imp_altas2 = new List <cPoblacionAltasBajas>(); foreach (var row in results_altas) { var obj = new cPoblacionAltasBajas(); obj.Fuero = row.Fuero; foreach (var item in row.Sexo) { obj.DiscFem += item.DiscFem; obj.DiscMasc += item.DiscMasc; obj.IndicFem += item.IndicFem; obj.IndicMasc += item.IndicMasc; obj.ProcFem += item.ProcFem; obj.ProcMasc += item.ProcMasc; obj.SentFem += item.SentFem; obj.SentMasc += item.SentMasc; } lst_imp_altas2.Add(obj); } var results_bajas = lst_imp_bajas.GroupBy(n => n.Fuero). Select(group => new { Fuero = group.Key, Sexo = group.ToList(), }); var lst_imp_bajas2 = new List <cPoblacionAltasBajas>(); foreach (var row in results_bajas) { var obj = new cPoblacionAltasBajas(); obj.Fuero = row.Fuero; foreach (var item in row.Sexo) { obj.DiscFem += item.DiscFem; obj.DiscMasc += item.DiscMasc; obj.ImpMasc += item.ImpMasc; obj.IndicFem += item.IndicFem; obj.IndicMasc += item.IndicMasc; obj.ProcFem += item.ProcFem; obj.ProcMasc += item.ProcMasc; obj.SentFem += item.SentFem; obj.SentMasc += item.SentMasc; } lst_imp_bajas2.Add(obj); } Reporte.LocalReport.ReportPath = "../../Reportes/rPoblacionAltasBajas.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource rds1 = new ReportDataSource(); rds1.Name = "DataSet1"; rds1.Value = datosReporte; Reporte.LocalReport.DataSources.Add(rds1); ReportDataSource rds2 = new ReportDataSource(); rds2.Name = "DataSet2"; rds2.Value = lst_imp_altas2.OrderBy(o => o.Fuero); Reporte.LocalReport.DataSources.Add(rds2); ReportDataSource rds3 = new ReportDataSource(); rds3.Name = "DataSet3"; rds3.Value = lst_imp_bajas2.OrderBy(o => o.Fuero); Reporte.LocalReport.DataSources.Add(rds3); ReportDataSource rds4 = new ReportDataSource(); rds4.Name = "DataSet4"; rds4.Value = lst_imp_grafica_alta_masc; Reporte.LocalReport.DataSources.Add(rds4); ReportDataSource rds5 = new ReportDataSource(); rds5.Name = "DataSet5"; rds5.Value = lst_imp_grafica_alta_fem; Reporte.LocalReport.DataSources.Add(rds5); ReportDataSource rds6 = new ReportDataSource(); rds6.Name = "DataSet6"; rds6.Value = lst_imp_grafica_baja_masc; Reporte.LocalReport.DataSources.Add(rds6); ReportDataSource rds7 = new ReportDataSource(); rds7.Name = "DataSet7"; rds7.Value = lst_imp_grafica_baja_fem; Reporte.LocalReport.DataSources.Add(rds7); ReportDataSource rds8 = new ReportDataSource(); rds8.Name = "DataSet8"; rds8.Value = lst_total_sexo; Reporte.LocalReport.DataSources.Add(rds8); Application.Current.Dispatcher.Invoke((Action)(delegate { Reporte.Refresh(); Reporte.RefreshReport(); })); } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al generar reporte.", ex); } }
private void GenerarReporte() { try { //NOTA: ANIO TEMPORALMENTE FIJO SOLO PARA PRUEBAS DEBIDO A QUE NO HAY REGISTROS PARA EL ANIO 2016 //DESCOMENTAR MAS ADELANTE var HOY = Fechas.GetFechaDateServer; var mes = HOY.Month; var anio = HOY.Year; var datosReporte = new List <cReporteDatos>(); datosReporte.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1, Encabezado2 = Parametro.ENCABEZADO2, Encabezado3 = Parametro.ENCABEZADO3, Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Titulo = "Población Indígena" }); var lst_internos_causa_penal_delito = new cCausaPenalDelito().ObtenerTodos().ToList(); var internos_lista = new cIngreso().ObtenerIngresosActivos(GlobalVar.gCentro).Where(w => w.FEC_INGRESO_CERESO.Value.Year == anio && w.FEC_INGRESO_CERESO.Value.Month == mes).ToList(); var lst_imp = new List <cReportePoblacionIndigena>(); var lst_imp_grafica = new List <cGraficaPoblacionIndigenaM>(); var lst_imp_grafica_f = new List <cGraficaPoblacionIndigenaF>(); foreach (var item in internos_lista) { var interno = lst_internos_causa_penal_delito.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno == null) { var obj = new cReportePoblacionIndigena(); obj.Etnia = item.IMPUTADO.ETNIA == null ? string.Empty : item.IMPUTADO.ETNIA.DESCR; obj.Causa = "Sin Fuero"; obj.SinFueroDiscIndef = item.ID_CLASIFICACION_JURIDICA == "4" && item.IMPUTADO.SEXO == null ? 1 : 0; obj.SinFueroIndicFem = item.ID_CLASIFICACION_JURIDICA == "I" && item.IMPUTADO.SEXO == "F" ? 1 : 0; obj.SinFueroIndicMasc = item.ID_CLASIFICACION_JURIDICA == "I" && item.IMPUTADO.SEXO == "M" ? 1 : 0; obj.SinFueroProcMasc = item.ID_CLASIFICACION_JURIDICA == "2" && item.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } } foreach (var item in lst_internos_causa_penal_delito) { var interno = internos_lista.Where(w => w.ID_CENTRO == item.ID_CENTRO && w.ID_ANIO == item.ID_ANIO && w.ID_IMPUTADO == item.ID_IMPUTADO && w.ID_INGRESO == w.ID_INGRESO).FirstOrDefault(); if (interno != null) { if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "C") { var obj = new cReportePoblacionIndigena(); obj.Etnia = item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Comun"; obj.ComunDiscMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "4" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunImpFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ComunImpMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.NUC == null && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunIndicFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ComunIndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ComunProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.ComunSentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.ComunSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } if (item.CAUSA_PENAL.ID_ESTATUS_CP.Value == 1 && item.ID_FUERO == "F") { var obj = new cReportePoblacionIndigena(); obj.Etnia = item.CAUSA_PENAL.INGRESO.IMPUTADO.ETNIA.DESCR; obj.Causa = "Federal"; obj.FederalIndicMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "I" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.FederalProcFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalProcMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "2" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; obj.FederalSentFem = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "F" ? 1 : 0; obj.FederalSentMasc = item.CAUSA_PENAL.INGRESO.ID_CLASIFICACION_JURIDICA == "3" && item.CAUSA_PENAL.INGRESO.IMPUTADO.SEXO == "M" ? 1 : 0; lst_imp.Add(obj); } } } //Para alimentar grafica Masculino foreach (var item in lst_imp) { if (item.Causa == "Comun") { if (item.ComunDiscMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Discrecional Comun"; obj.Federal += item.ComunDiscMasc; lst_imp_grafica.Add(obj); } if (item.ComunImpMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Imputado Comun"; obj.Federal += item.ComunImpMasc; lst_imp_grafica.Add(obj); } if (item.ComunIndicMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Indiciado Comun"; obj.Federal += item.ComunIndicMasc; lst_imp_grafica.Add(obj); } if (item.ComunProcMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Procesado Comun"; obj.Federal += item.ComunProcMasc; lst_imp_grafica.Add(obj); } if (item.ComunSentMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Sentenciado Comun"; obj.Federal += item.ComunSentMasc; lst_imp_grafica.Add(obj); } } if (item.Causa == "Federal") { if (item.FederalIndicMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Indiciado Federal"; obj.Federal += item.FederalIndicMasc; lst_imp_grafica.Add(obj); } if (item.FederalProcMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Procesado Federal"; obj.Federal += item.FederalProcMasc; lst_imp_grafica.Add(obj); } if (item.FederalSentMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Sentenciado Federal"; obj.Federal += item.FederalSentMasc; lst_imp_grafica.Add(obj); } } if (item.Causa == "Sin Fuero") { if (item.SinFueroDiscIndef > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Discrecional"; obj.Federal += item.SinFueroDiscIndef; lst_imp_grafica.Add(obj); } if (item.SinFueroIndicMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Indiciado sin Fuero"; obj.Federal += item.SinFueroIndicMasc; lst_imp_grafica.Add(obj); } if (item.SinFueroProcMasc > 0) { var obj = new cGraficaPoblacionIndigenaM(); obj.Etnia = item.Etnia; obj.Causa = "Procesado sin Fuero"; obj.Federal += item.SinFueroProcMasc; lst_imp_grafica.Add(obj); } } } //Para alimentar grafica Femenino******* foreach (var item in lst_imp) { if (item.Causa == "Comun") { if (item.ComunImpFem > 0) { var obj = new cGraficaPoblacionIndigenaF(); obj.Etnia = item.Etnia; obj.Causa = "Imputado Comun"; obj.Federal += item.ComunImpFem; lst_imp_grafica_f.Add(obj); } if (item.ComunIndicFem > 0) { var obj = new cGraficaPoblacionIndigenaF(); obj.Etnia = item.Etnia; obj.Causa = "Indiciado Comun"; obj.Federal += item.ComunIndicFem; lst_imp_grafica_f.Add(obj); } if (item.ComunProcFem > 0) { var obj = new cGraficaPoblacionIndigenaF(); obj.Etnia = item.Etnia; obj.Causa = "Procesado Comun"; obj.Federal += item.ComunProcFem; lst_imp_grafica_f.Add(obj); } if (item.ComunSentFem > 0) { var obj = new cGraficaPoblacionIndigenaF(); obj.Etnia = item.Etnia; obj.Causa = "Sentenciado Comun"; obj.Federal += item.ComunSentFem; lst_imp_grafica_f.Add(obj); } } if (item.Causa == "Federal") { if (item.FederalProcFem > 0) { var obj = new cGraficaPoblacionIndigenaF(); obj.Etnia = item.Etnia; obj.Causa = "Procesado Federal"; obj.Federal += item.FederalProcFem; lst_imp_grafica_f.Add(obj); } if (item.FederalSentFem > 0) { var obj = new cGraficaPoblacionIndigenaF(); obj.Etnia = item.Etnia; obj.Causa = "Sentenciado Federal"; obj.Federal += item.FederalSentFem; lst_imp_grafica_f.Add(obj); } } if (item.Causa == "Sin Fuero") { if (item.SinFueroIndicFem > 0) { var obj = new cGraficaPoblacionIndigenaF(); obj.Etnia = item.Etnia; obj.Causa = "Indiciado sin Fuero"; obj.Federal += item.SinFueroIndicFem; lst_imp_grafica_f.Add(obj); } } } var results = lst_imp.GroupBy(n => n.Etnia). Select(group => new { Etnia = group.Key, Sexo = group.ToList(), }); var lst_imp2 = new List <cReportePoblacionIndigena>(); foreach (var row in results) { var obj = new cReportePoblacionIndigena(); obj.Etnia = row.Etnia; foreach (var item in row.Sexo) { obj.ComunDiscMasc += item.ComunDiscMasc; obj.ComunImpFem += item.ComunImpFem; obj.ComunImpMasc += item.ComunImpMasc; obj.ComunIndicFem += item.ComunIndicFem; obj.ComunIndicMasc += item.ComunIndicMasc; obj.ComunProcFem += item.ComunProcFem; obj.ComunProcMasc += item.ComunProcMasc; obj.ComunSentFem += item.ComunSentFem; obj.ComunSentMasc += item.ComunSentMasc; obj.FederalIndicMasc += item.FederalIndicMasc; obj.FederalProcFem += item.FederalProcFem; obj.FederalProcMasc += item.FederalProcMasc; obj.FederalSentFem += item.FederalSentFem; obj.FederalSentMasc += item.FederalSentMasc; obj.SinFueroDiscIndef += item.SinFueroDiscIndef; obj.SinFueroIndicFem += item.SinFueroIndicFem; obj.SinFueroIndicMasc += item.SinFueroIndicMasc; obj.SinFueroProcMasc += item.SinFueroProcMasc; } lst_imp2.Add(obj); } Reporte.LocalReport.ReportPath = "../../Reportes/rPoblacionIndigena.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource rds1 = new ReportDataSource(); rds1.Name = "DataSet1"; rds1.Value = datosReporte; Reporte.LocalReport.DataSources.Add(rds1); ReportDataSource rds2 = new ReportDataSource(); rds2.Name = "DataSet2"; rds2.Value = lst_imp2; Reporte.LocalReport.DataSources.Add(rds2); ReportDataSource rds3 = new ReportDataSource(); rds3.Name = "DataSet3"; rds3.Value = lst_imp_grafica; Reporte.LocalReport.DataSources.Add(rds3); ReportDataSource rds4 = new ReportDataSource(); rds4.Name = "DataSet4"; rds4.Value = lst_imp_grafica_f; Reporte.LocalReport.DataSources.Add(rds4); Application.Current.Dispatcher.Invoke((Action)(delegate { Reporte.Refresh(); Reporte.RefreshReport(); })); } catch (Exception ex) { StaticSourcesViewModel.ShowMessageError("Algo pasó...", "Ocurrió un error al generar reporte.", ex); } }