public void GenerarReporte() { var Centro = new cCentro().Obtener(GlobalVar.gCentro).FirstOrDefault(); try { #region EncabezadoReporte var centro = new cCentro().Obtener(GlobalVar.gCentro).FirstOrDefault(); var datosReporte = new List <cReporteDatos>(); datosReporte.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1.Trim(), Encabezado2 = Parametro.ENCABEZADO2.Trim(), Encabezado3 = Parametro.ENCABEZADO3.Trim(), Titulo = "RELACIÓN DE INTERNOS", Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Centro = centro.DESCR.Trim().ToUpper(), }); #endregion #region ListaEstancias List <cEstancia> lEstancia = new List <cEstancia>(); var edificio = SelectedEdificio.ID_EDIFICIO != TODOS_LOS_EDIFICIOS ? SelectedEdificio.ID_EDIFICIO : (short?)0; var sector = SelectedEdificio.ID_EDIFICIO != TODOS_LOS_EDIFICIOS ? (SelectedSector.ID_SECTOR != TODOS_LOS_SECTORES ? SelectedSector.ID_SECTOR : (short?)0) : (short?)0; lEstancia.AddRange(new cCelda().ObtenerCeldas( GlobalVar.gCentro, edificio, sector). AsEnumerable(). Where(w => w.CAMA.Count > 0). ToList(). Select(s => new cEstancia() { Pagina = 0, CantidadCamas = s.CAMA.Count, Edificio = s.ID_EDIFICIO, Sector = s.ID_SECTOR, Celda = s.ID_CELDA, EdificioDescr = new cEdificio().Obtener(s.ID_EDIFICIO, GlobalVar.gCentro).DESCR.TrimEnd(), SectorDescr = new cSector().Obtener(s.ID_SECTOR, s.ID_EDIFICIO, GlobalVar.gCentro).DESCR.TrimEnd(), NumeroLista = 1 }). OrderBy(o => o.Edificio). ThenBy(t => t.Sector). ThenBy(t => t.Celda). ToList()); #endregion #region PaseLista lEstancia = lEstancia.OrderBy(o => o.Edificio).ThenBy(t => t.Sector).ThenBy(t => t.Celda).ToList(); //ThenBy(tB => tB.NumeroLista).ToList(); var lPaseLista = new cCama(). ObtenerCamasEstancias(lEstancia.Select(s => new CELDA() { ID_CENTRO = GlobalVar.gCentro, ID_EDIFICIO = (short)s.Edificio, ID_SECTOR = (short)s.Sector, ID_CELDA = s.Celda }).ToList()). AsEnumerable(). Select(s => new cPaseLista() { Celda = s.ID_CELDA, Edificio = s.ID_EDIFICIO, EdificioDescr = s.CELDA != null ? s.CELDA.SECTOR != null ? s.CELDA.SECTOR.EDIFICIO != null ? !string.IsNullOrEmpty(s.CELDA.SECTOR.EDIFICIO.DESCR) ? s.CELDA.SECTOR.EDIFICIO.DESCR.Trim() : string.Empty : string.Empty : string.Empty : string.Empty, Expediente = (s.INGRESO != null && s.ESTATUS != CAMA_LIBERADA) ? (s.INGRESO.Where(w => w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.LIBERADO && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.TRASLADADO && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.SUJETO_A_PROCESO_EN_LIBERTAD && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.DISCRECIONAL).Any() ? new Func <string>(() => { var Ingreso = s.INGRESO.Where(w => w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.LIBERADO && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.TRASLADADO && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.SUJETO_A_PROCESO_EN_LIBERTAD && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.DISCRECIONAL). OrderByDescending(oD => oD.ID_ANIO). ThenByDescending(tD => tD.ID_IMPUTADO). FirstOrDefault(); return(string.Format("{0}/{1}", Ingreso != null ? Ingreso.ID_ANIO : new short(), Ingreso != null ? Ingreso.ID_IMPUTADO : new Int32())); })() : "/") : "/", Nombre = (s.INGRESO != null && s.ESTATUS != CAMA_LIBERADA) ? (s.INGRESO.Where(w => w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.LIBERADO && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.TRASLADADO && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.SUJETO_A_PROCESO_EN_LIBERTAD && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.DISCRECIONAL).Any() ? new Func <string>(() => { var Imputado = s.INGRESO.Where(w => w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.LIBERADO && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.TRASLADADO && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.SUJETO_A_PROCESO_EN_LIBERTAD && w.ID_ESTATUS_ADMINISTRATIVO != (short)enumEstatusAdministrativo.DISCRECIONAL). OrderByDescending(oD => oD.ID_ANIO). ThenByDescending(tD => tD.ID_IMPUTADO). FirstOrDefault().IMPUTADO; return(string.Format("{1} {2} {0}", Imputado != null ? !string.IsNullOrEmpty(Imputado.NOMBRE) ? Imputado.NOMBRE.TrimEnd() : string.Empty : string.Empty, Imputado != null ? !string.IsNullOrEmpty(Imputado.PATERNO) ? Imputado.PATERNO.TrimEnd() : string.Empty : string.Empty, Imputado != null ? !string.IsNullOrEmpty(Imputado.MATERNO) ? Imputado.MATERNO.TrimEnd() : string.Empty : string.Empty)); })() : "/") : "/", Sector = s.ID_SECTOR, SectorDescr = s.CELDA.SECTOR.DESCR, Ubicacion = string.Format("{0}-{1}{2}-{3}", s.CELDA != null ? s.CELDA.SECTOR != null ? s.CELDA.SECTOR.EDIFICIO != null ? !string.IsNullOrEmpty(s.CELDA.SECTOR.EDIFICIO.DESCR) ? s.CELDA.SECTOR.EDIFICIO.DESCR.TrimEnd() : string.Empty : string.Empty : string.Empty : string.Empty, s.CELDA != null ? s.CELDA.SECTOR != null ? !string.IsNullOrEmpty(s.CELDA.SECTOR.DESCR) ? s.CELDA.SECTOR.DESCR.TrimEnd() : string.Empty : string.Empty : string.Empty, s.ID_CELDA.TrimStart().TrimEnd(), s.ID_CAMA) }).ToList(); #endregion Application.Current.Dispatcher.Invoke((Action)(delegate { #region Reporte Reporte.LocalReport.ReportPath = "Reportes/rImpresionListas.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource ReportDataSource_Encabezado = new ReportDataSource(); ReportDataSource_Encabezado.Name = "DataSet1"; ReportDataSource_Encabezado.Value = datosReporte; Reporte.LocalReport.DataSources.Add(ReportDataSource_Encabezado); ReportDataSource Camas = new ReportDataSource(); Camas.Name = "DataSet2"; Camas.Value = lPaseLista; Reporte.LocalReport.DataSources.Add(Camas); #endregion #region Parametros Reporte.LocalReport.SetParameters(new ReportParameter("Mes_Seleccionado", Ventana.ListaMeses.SelectedItem.ToString())); Reporte.LocalReport.SetParameters(new ReportParameter("Anio", Fechas.GetFechaDateServer.Year.ToString())); Reporte.LocalReport.SetParameters(new ReportParameter("Mes", Fechas.GetFechaDateServer.Month.ToString())); Reporte.LocalReport.SetParameters(new ReportParameter("Dia", Fechas.GetFechaDateServer.Day.ToString())); #endregion Reporte.Refresh(); Reporte.RefreshReport(); })); } catch (Exception ex) { throw new ApplicationException(ex.Message); } }
public void ObtenerIngresos() { short?nulo = null; var Ingresos = new cIngreso().ObtenerIngresosActivosFiltradosPorEdificio(GlobalVar.gCentro, SelectedEdificio.ID_EDIFICIO != TODOS_LOS_EDIFICIOS ? SelectedEdificio.ID_EDIFICIO : nulo, SelectedEdificio.ID_EDIFICIO != TODOS_LOS_EDIFICIOS ? (SelectedSector.ID_SECTOR != TODOS_LOS_SECTORES ? SelectedSector.ID_SECTOR : nulo) : nulo, Pagina, BusquedaAvanzadaChecked && AnioBuscar.HasValue ? AnioBuscar.Value : 0, BusquedaAvanzadaChecked && FolioBuscar.HasValue ? FolioBuscar.Value : 0, BusquedaAvanzadaChecked && !string.IsNullOrEmpty(NombreBuscar) ? NombreBuscar : string.Empty, BusquedaAvanzadaChecked && !string.IsNullOrEmpty(ApellidoPaternoBuscar) ? ApellidoPaternoBuscar : string.Empty, BusquedaAvanzadaChecked && !string.IsNullOrEmpty(ApellidoMaternoBuscar) ? ApellidoMaternoBuscar : string.Empty).ToList(); if (Ingresos.Any()) { Pagina++; SeguirCargandoIngresos = true; var lista_ingresos = new List <cCredencialBiblioteca>(ListaIngresos); foreach (var Ingreso in Ingresos) { var foto_ingreso = Ingreso.INGRESO_BIOMETRICO.Where(w => w.BIOMETRICO_TIPO.ID_TIPO_BIOMETRICO == (short)enumTipoBiometrico.FOTO_FRENTE_REGISTRO).FirstOrDefault(); var foto_centro = Ingreso.INGRESO_BIOMETRICO.Where(w => w.BIOMETRICO_TIPO.ID_TIPO_BIOMETRICO == (short)enumTipoBiometrico.FOTO_FRENTE_SEGUIMIENTO).FirstOrDefault(); var cama = new cCama().ObtenerCama((short)Ingreso.ID_UB_CENTRO, (short)Ingreso.ID_UB_EDIFICIO, (short)Ingreso.ID_UB_SECTOR, Ingreso.ID_UB_CELDA, (short)Ingreso.ID_UB_CAMA); var interno = new cCredencialBiblioteca() { Id_Centro = Ingreso.ID_CENTRO, Id_Anio = Ingreso.ID_ANIO, Id_Imputado = Ingreso.ID_IMPUTADO, Id_Ingreso = Ingreso.ID_INGRESO, Nombre = !string.IsNullOrEmpty(Ingreso.IMPUTADO.NOMBRE) ? Ingreso.IMPUTADO.NOMBRE.TrimEnd() : string.Empty, Paterno = !string.IsNullOrEmpty(Ingreso.IMPUTADO.PATERNO) ? Ingreso.IMPUTADO.PATERNO.TrimEnd() : string.Empty, Materno = !string.IsNullOrEmpty(Ingreso.IMPUTADO.MATERNO) ? Ingreso.IMPUTADO.MATERNO.TrimEnd() : string.Empty, CentroDescr = Ingreso.CENTRO.DESCR.Replace("CERESO ", "").TrimStart().TrimEnd(), EdificioDescr = cama.CELDA.SECTOR.EDIFICIO.DESCR.TrimEnd(), SectorDescr = cama.CELDA.SECTOR.DESCR.TrimEnd(), Celda = cama.ID_CELDA.TrimStart().TrimEnd(), Foto = foto_centro != null ? foto_centro.BIOMETRICO : (foto_ingreso != null ? foto_ingreso.BIOMETRICO : new Imagenes().getImagenPerson()), CodigoBarras = ObtenerCodigoBarras(Ingreso.IMPUTADO.NIP), Seleccionado = false, FOTOCENTRO = foto_centro != null ? foto_centro.BIOMETRICO : new Imagenes().getImagenPerson(), FOTOINGRESO = foto_ingreso != null ? foto_ingreso.BIOMETRICO : new Imagenes().getImagenPerson(), }; if (ListaIngresosSeleccionados.Any()) { if (!(ListaIngresosSeleccionados.Count(c => c.Id_Centro == interno.Id_Centro && c.Id_Anio == interno.Id_Anio && c.Id_Imputado == interno.Id_Imputado && c.Id_Ingreso == interno.Id_Ingreso) > 0)) { interno.Seleccionado = SeleccionarTodosIngresos; lista_ingresos.Add(interno); } } else { interno.Seleccionado = SeleccionarTodosIngresos; lista_ingresos.Add(interno); } } ListaIngresos = lista_ingresos; EmptyVisible = !lista_ingresos.Any(); } else { SeguirCargandoIngresos = false; } }
public async void GenerarReporte() { try { var lVisitas = new List <cControlVisita>(); var datosReporte = new List <cReporteDatos>(); var VisitasGenero = new List <cVisitantesGenero>(); await StaticSourcesViewModel.CargarDatosMetodoAsync(() => { Application.Current.Dispatcher.Invoke((Action)(delegate { ReportViewerVisible = Visibility.Collapsed; })); var centro = new cCentro().Obtener(GlobalVar.gCentro).FirstOrDefault(); var totales = new List <cControlVisitaTotales>(); datosReporte.Add(new cReporteDatos() { Encabezado1 = Parametro.ENCABEZADO1.Trim(), Encabezado2 = Parametro.ENCABEZADO2.Trim(), Encabezado3 = Parametro.ENCABEZADO3.Trim(), Titulo = "RELACIÓN DE INTERNOS", Logo1 = Parametro.REPORTE_LOGO1, Logo2 = Parametro.REPORTE_LOGO2, Centro = centro.DESCR.Trim().ToUpper(), }); var consulta_cama = new cCama(); double Total_Resultados = new cAduana(). ObtenerVisitas(SelectedFechaInicial, SelectedFechaFinal, Parametro.CONTROL_VISITANTES_REPORTE).Count(); var Paginas = Math.Abs(Total_Resultados - (int)Total_Resultados) < double.Epsilon ? ((int)((Total_Resultados / VISITANTES_POR_PAGINA) + 1)) : ((int)(Total_Resultados / VISITANTES_POR_PAGINA)); for (int i = 0; i < Paginas; i++) { lVisitas.AddRange(new cAduana(). ObtenerVisitas(SelectedFechaInicial, SelectedFechaFinal, Parametro.CONTROL_VISITANTES_REPORTE).OrderBy(o => o.ID_ADUANA).Skip(ULTIMO_REGISTRO).Take(VISITANTES_POR_PAGINA). AsEnumerable(). Select(s => new cControlVisita() { Hora_Ingreso = string.Format("{0}:{1}", s.ENTRADA_FEC.Value.Hour < 10 ? string.Format("0{0}", s.ENTRADA_FEC.Value.Hour.ToString()) : s.ENTRADA_FEC.Value.Hour.ToString(), s.ENTRADA_FEC.Value.Minute < 10 ? string.Format("0{0}", s.ENTRADA_FEC.Value.Minute.ToString()) : s.ENTRADA_FEC.Value.Minute.ToString()), Hora_Salida = s.SALIDA_FEC.HasValue ? string.Format("{0}:{1}", s.SALIDA_FEC.Value.Hour < 10 ? string.Format("0{0}", s.SALIDA_FEC.Value.Hour.ToString()) : s.SALIDA_FEC.Value.Hour.ToString(), s.SALIDA_FEC.Value.Minute < 10 ? string.Format("0{0}", s.SALIDA_FEC.Value.Minute.ToString()) : s.SALIDA_FEC.Value.Minute.ToString()) : string.Empty, Centro = s.ADUANA_INGRESO.Any() ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().ID_CENTRO : new short(), Id_Anio = s.ADUANA_INGRESO.Any() ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().ID_ANIO : new short(), Id_Imputado = s.ADUANA_INGRESO.Any() ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().ID_IMPUTADO : new short(), Id_Persona = s.ID_PERSONA, Paterno_Ingreso = s.ADUANA_INGRESO.Any() ? !string.IsNullOrEmpty(s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.PATERNO) ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.PATERNO.TrimEnd() : string.Empty : string.Empty, Materno_Ingreso = s.ADUANA_INGRESO.Any() ? !string.IsNullOrEmpty(s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.MATERNO) ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.MATERNO.TrimEnd() : string.Empty : string.Empty, Nombre_Ingreso = s.ADUANA_INGRESO.Any() ? !string.IsNullOrEmpty(s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.NOMBRE) ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.NOMBRE.TrimEnd() : string.Empty : string.Empty, Ubicacion_Ingreso = new Func <string>(() => { var ingreso = s.ADUANA_INGRESO.Any() ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO : null; if (ingreso != null) { if (ingreso.ID_UB_CENTRO != null && ingreso.ID_UB_EDIFICIO != null && ingreso.ID_UB_SECTOR != null && ingreso.ID_UB_CELDA != null && ingreso.ID_UB_CAMA != null) { var cama = consulta_cama.ObtenerCama((short)ingreso.ID_UB_CENTRO, (short)ingreso.ID_UB_EDIFICIO, (short)ingreso.ID_UB_SECTOR, ingreso.ID_UB_CELDA, (short)ingreso.ID_UB_CAMA); if (cama != null) { return(string.Format("{0}-{1}-{2}", cama.CELDA != null ? cama.CELDA.SECTOR != null ? cama.CELDA.SECTOR.EDIFICIO != null ? !string.IsNullOrEmpty(cama.CELDA.SECTOR.EDIFICIO.DESCR) ? cama.CELDA.SECTOR.EDIFICIO.DESCR.TrimEnd() : string.Empty : string.Empty : string.Empty : string.Empty, cama.CELDA != null ? cama.CELDA.SECTOR != null ? !string.IsNullOrEmpty(cama.CELDA.SECTOR.DESCR) ? cama.CELDA.SECTOR.DESCR.TrimEnd() : string.Empty : string.Empty : string.Empty, cama.CELDA != null ? cama.CELDA.ID_CELDA.TrimStart().TrimEnd() : string.Empty)); } } } return(string.Empty); })(), Usuario = s.USUARIO != null ? s.USUARIO.ID_USUARIO : string.Empty, Paterno_Visitante = s.PERSONA != null ? !string.IsNullOrEmpty(s.PERSONA.PATERNO) ? s.PERSONA.PATERNO.TrimEnd() : string.Empty : string.Empty, Materno_Visitante = s.PERSONA != null ? !string.IsNullOrEmpty(s.PERSONA.MATERNO) ? s.PERSONA.MATERNO.TrimEnd() : string.Empty : string.Empty, Nombre_Visitante = s.PERSONA != null ? !string.IsNullOrEmpty(s.PERSONA.NOMBRE) ? s.PERSONA.NOMBRE.TrimEnd() : string.Empty : string.Empty, Tipo_Visita = new Func <string>(() => { enumTipoPersona TipoPersona = (enumTipoPersona)s.ID_TIPO_PERSONA; var TipoVisita = string.Empty; switch (TipoPersona) { case enumTipoPersona.ABOGADO: TipoVisita = string.Format(VISITA_LEGAL + " ({0})", s.TIPO_PERSONA != null ? !string.IsNullOrEmpty(s.TIPO_PERSONA.DESCR) ? s.TIPO_PERSONA.DESCR.TrimEnd() : string.Empty : string.Empty); break; case enumTipoPersona.VISITA: TipoVisita = s.ADUANA_INGRESO.Any() ? string.Format("{0}", s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INTIMA == ES_VISITA_INTIMA ? VISITA_INTIMA : VISITA_FAMILIAR) : string.Empty; break; } return(TipoVisita); })(), Categoria = ObtenerEdad(s.PERSONA.FEC_NACIMIENTO.Value) < MAYORIA_DE_EDAD ? MENORES : (s.PERSONA.SEXO == FEMENINO ? MUJERES : HOMBRES), }). ToList()); ULTIMO_REGISTRO += VISITANTES_POR_PAGINA; } #region Informacion_Reporte //lVisitas = new cAduana(). // ObtenerVisitas(SelectedFechaInicial, SelectedFechaFinal, Parametro.CONTROL_VISITANTES_REPORTE). // AsEnumerable(). // Select(s => new cControlVisita() // { // Hora_Ingreso = string.Format("{0}:{1}", s.ENTRADA_FEC.Value.Hour < 10 ? string.Format("0{0}", s.ENTRADA_FEC.Value.Hour.ToString()) : s.ENTRADA_FEC.Value.Hour.ToString(), s.ENTRADA_FEC.Value.Minute < 10 ? string.Format("0{0}", s.ENTRADA_FEC.Value.Minute.ToString()) : s.ENTRADA_FEC.Value.Minute.ToString()), // Hora_Salida = s.SALIDA_FEC.HasValue ? string.Format("{0}:{1}", s.SALIDA_FEC.Value.Hour < 10 ? string.Format("0{0}", s.SALIDA_FEC.Value.Hour.ToString()) : s.SALIDA_FEC.Value.Hour.ToString(), s.SALIDA_FEC.Value.Minute < 10 ? string.Format("0{0}", s.SALIDA_FEC.Value.Minute.ToString()) : s.SALIDA_FEC.Value.Minute.ToString()) : string.Empty, // Id_Anio = s.ADUANA_INGRESO.Any() ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().ID_ANIO : new short(), // Id_Imputado = s.ADUANA_INGRESO.Any() ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().ID_IMPUTADO : new short(), // Id_Persona = s.ID_PERSONA, // Paterno_Ingreso = s.ADUANA_INGRESO.Any() ? !string.IsNullOrEmpty(s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.PATERNO) ? // s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.PATERNO.TrimEnd() : string.Empty : string.Empty, // Materno_Ingreso = s.ADUANA_INGRESO.Any() ? !string.IsNullOrEmpty(s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.MATERNO) ? // s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.MATERNO.TrimEnd() : string.Empty : string.Empty, // Nombre_Ingreso = s.ADUANA_INGRESO.Any() ? !string.IsNullOrEmpty(s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.NOMBRE) ? // s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO.IMPUTADO.NOMBRE.TrimEnd() : string.Empty : string.Empty, // Ubicacion_Ingreso = new Func<string>(() => // { // var ingreso = s.ADUANA_INGRESO.Any() ? s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INGRESO : null; // if (ingreso != null) // { // if (ingreso.ID_UB_CENTRO != null && // ingreso.ID_UB_EDIFICIO != null && // ingreso.ID_UB_SECTOR != null && // ingreso.ID_UB_CELDA != null && // ingreso.ID_UB_CAMA != null) // { // var cama = consulta_cama.ObtenerCama((short)ingreso.ID_UB_CENTRO, (short)ingreso.ID_UB_EDIFICIO, (short)ingreso.ID_UB_SECTOR, ingreso.ID_UB_CELDA, (short)ingreso.ID_UB_CAMA); // if (cama != null) // return string.Format("{0}-{1}-{2}", // cama.CELDA != null ? cama.CELDA.SECTOR != null ? cama.CELDA.SECTOR.EDIFICIO != null ? !string.IsNullOrEmpty(cama.CELDA.SECTOR.EDIFICIO.DESCR) ? cama.CELDA.SECTOR.EDIFICIO.DESCR.TrimEnd() : string.Empty : string.Empty : string.Empty : string.Empty, // cama.CELDA != null ? cama.CELDA.SECTOR != null ? !string.IsNullOrEmpty(cama.CELDA.SECTOR.DESCR) ? cama.CELDA.SECTOR.DESCR.TrimEnd() : string.Empty : string.Empty : string.Empty, // cama.CELDA != null ? cama.CELDA.ID_CELDA.TrimStart().TrimEnd() : string.Empty); // } // } // return string.Empty; // })(), // Usuario = s.USUARIO != null ? s.USUARIO.ID_USUARIO : string.Empty, // Paterno_Visitante = s.PERSONA != null ? !string.IsNullOrEmpty(s.PERSONA.PATERNO) ? s.PERSONA.PATERNO.TrimEnd() : string.Empty : string.Empty, // Materno_Visitante = s.PERSONA != null ? !string.IsNullOrEmpty(s.PERSONA.MATERNO) ? s.PERSONA.MATERNO.TrimEnd() : string.Empty : string.Empty, // Nombre_Visitante = s.PERSONA != null ? !string.IsNullOrEmpty(s.PERSONA.NOMBRE) ? s.PERSONA.NOMBRE.TrimEnd() : string.Empty : string.Empty, // Tipo_Visita = new Func<string>(() => // { // enumTipoPersona TipoPersona = (enumTipoPersona)s.ID_TIPO_PERSONA; // var TipoVisita = string.Empty; // switch (TipoPersona) // { // case enumTipoPersona.ABOGADO: // TipoVisita = string.Format(VISITA_LEGAL + " ({0})", s.TIPO_PERSONA != null ? !string.IsNullOrEmpty(s.TIPO_PERSONA.DESCR) ? s.TIPO_PERSONA.DESCR.TrimEnd() : string.Empty : string.Empty); // break; // case enumTipoPersona.VISITA: // TipoVisita = s.ADUANA_INGRESO.Any() ? string.Format("{0}", s.ADUANA_INGRESO.Where(w => w.ID_ADUANA == s.ID_ADUANA).FirstOrDefault().INTIMA == ES_VISITA_INTIMA ? VISITA_INTIMA : VISITA_FAMILIAR) : string.Empty; // break; // } // return TipoVisita; // })(), // Categoria = ObtenerEdad(s.PERSONA.FEC_NACIMIENTO.Value) < MAYORIA_DE_EDAD ? MENORES : (s.PERSONA.SEXO == FEMENINO ? MUJERES : HOMBRES), // }). // ToList(); #endregion Application.Current.Dispatcher.Invoke((Action)(delegate { ReportViewerVisible = Visibility.Visible; })); }); #region Reporte Reporte.LocalReport.ReportPath = "Reportes/rControlVisitantes.rdlc"; Reporte.LocalReport.DataSources.Clear(); ReportDataSource ReportDataSource_Encabezado = new ReportDataSource(); ReportDataSource_Encabezado.Name = "DataSet2"; ReportDataSource_Encabezado.Value = datosReporte; ReportDataSource ReportDataSource = new ReportDataSource(); ReportDataSource.Name = "DataSet1"; ReportDataSource.Value = lVisitas; Reporte.LocalReport.DataSources.Add(ReportDataSource_Encabezado); Reporte.LocalReport.DataSources.Add(ReportDataSource); #endregion #region Grafica ReporteGrafica.LocalReport.ReportPath = "Reportes/rControlVisitantesGrafica.rdlc"; ReporteGrafica.LocalReport.DataSources.Clear(); ReportDataSource ReportDataSource_Encabezado_Grafica = new ReportDataSource(); ReportDataSource_Encabezado_Grafica.Name = "DataSet1"; ReportDataSource_Encabezado_Grafica.Value = datosReporte; ReportDataSource ReportDataSource_Grafica = new ReportDataSource(); ReportDataSource_Grafica.Name = "DataSet3"; ReportDataSource_Grafica.Value = lVisitas; ReporteGrafica.LocalReport.DataSources.Add(ReportDataSource_Encabezado_Grafica); ReporteGrafica.LocalReport.DataSources.Add(ReportDataSource_Grafica); #endregion #region Parametros Reporte.LocalReport.SetParameters(new ReportParameter("FechaInicial", string.Format("{0} DE {1} DEL {2}", SelectedFechaInicial.Day, SelectedFechaInicial.Month, SelectedFechaInicial.Year))); Reporte.LocalReport.SetParameters(new ReportParameter("FechaFinal", string.Format("{0} DE {1} DEL {2}", SelectedFechaFinal.Day, SelectedFechaFinal.Month, SelectedFechaFinal.Year))); ReporteGrafica.LocalReport.SetParameters(new ReportParameter("FechaInicial", string.Format("{0} DE {1} DEL {2}", SelectedFechaInicial.Day, SelectedFechaInicial.Month, SelectedFechaInicial.Year))); ReporteGrafica.LocalReport.SetParameters(new ReportParameter("FechaFinal", string.Format("{0} DE {1} DEL {2}", SelectedFechaFinal.Day, SelectedFechaFinal.Month, SelectedFechaFinal.Year))); ReporteGrafica.LocalReport.SetParameters(new ReportParameter("TotalVisitantes", lVisitas.Count.ToString())); #endregion Reporte.Refresh(); Reporte.RefreshReport(); ReporteGrafica.Refresh(); ReporteGrafica.RefreshReport(); } catch (Exception ex) { throw new ApplicationException(ex.Message); } }