public ActionResult TASEstudiantePDF(string EstudianteCI) { long NumError = 0; string MensajeError = string.Empty; string MapPath = ""; string FileDownloadName = ""; CrystalDecisions.Shared.ExportFormatType ExportFormat = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat; string ContentType = string.Empty; MapPath = "~/Reports/TASEstudiante/TASEstudianteReporte.rpt"; FileDownloadName = "TASEstudianteCalificaciones_" + DateTime.Now + ".pdf"; ExportFormat = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat; ContentType = "application/pdf"; if (EstudianteCI != "") { try { TASEstudianteInterfaceClient TASEstudiante = new TASEstudianteInterfaceClient(); var setTASEstudiante = TASEstudiante.WebSeleccionar((string)Session["SesionSubCompania"], EstudianteCI, (string)Session["Sesion"], (string)Session["SesionSubCompania"]); var etTASEstudiante = setTASEstudiante.ltTASEstudiante.First(); ReportDocument report = new ReportDocument(); report.Load(Server.MapPath(MapPath)); report.SetDataSource(etTASEstudiante); //report.SetDataSource(); Response.Buffer = false; Response.ClearContent(); Response.ClearHeaders(); //Stream stream = report.ExportToStream(CrystalDecisions.Shared.ExportFormatType.ExcelRecord); Stream stream = report.ExportToStream(ExportFormat); stream.Seek(0, SeekOrigin.Begin); //GetDowndoaldFile(stream); if (NumError == 0) { return(File(stream, ContentType, FileDownloadName)); } else { return(RedirectToAction("TASEstudianteEditar", new { SubCompania = (string)Session["SesionSubCompania"], EstudianteCI = EstudianteCI, MensajeError = "Error al generar el reporte." })); } } catch (Exception e) { return(RedirectToAction("TASEstudianteEditar", new { SubCompania = (string)Session["SesionSubCompania"], EstudianteCI = EstudianteCI, MensajeError = e.Message })); } } else { MensajeError = "Debe seleccionar un estudiante."; return(RedirectToAction("TASEstudianteLista", new { SubCompania = (string)Session["SesionSubCompania"], EstudianteCI = EstudianteCI, MensajeError = MensajeError })); } }
protected void btnReporte_OnClick(object Sender, EventArgs E) { dtsTramitesPagos dtsTramitesPagos = new dtsTramitesPagos(); cargarTramitesPagos(Convert.ToInt32(ddlAnios.SelectedValue)); List <Objetos.TramitePago> lstTramitesPagos = TramitePagoBL.ObtenerListaTramitesPagosPorAnio(Convert.ToInt32(ddlAnios.SelectedValue)); foreach (var tramitePago in lstTramitesPagos) { dtsTramitesPagos.TramitesPagos.AddTramitesPagosRow( tramitePago.FechaActaEntregaRecepcionBienesContratados == null ? "" : tramitePago.FechaActaEntregaRecepcionBienesContratados.Value.ToShortDateString(), tramitePago.NumActaEntregaRecepcionBienesContratados, tramitePago.FechaRecepcionFacturaBienesContratados == null ? "": tramitePago.FechaRecepcionFacturaBienesContratados.Value.ToShortDateString(), tramitePago.FechaFacturaBienesContratados == null ? "" : tramitePago.FechaFacturaBienesContratados.Value.ToShortDateString(), tramitePago.NumFacturaBienesContratados, tramitePago.FolioInstanciaEjercicioFiscal, tramitePago.OficioSolicitudPagoSefin, tramitePago.FechaOficioSolicitudSefin == null ? "" : tramitePago.FechaOficioSolicitudSefin.Value.ToShortDateString(), tramitePago.NumContrareciboPago.ToString(), tramitePago.NumTransferenciaBancaria, tramitePago.IdTramitePago.ToString() ); } CrystalDecisions.CrystalReports.Engine.ReportDocument repote = new CrystalDecisions.CrystalReports.Engine.ReportDocument(); try { CrystalDecisions.Shared.ExportFormatType formato = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat; repote.Load(Server.MapPath("./../") + "Reportes/CrystalReports/ReporteTramitesPagos.rpt"); repote.SetDataSource(dtsTramitesPagos); repote.ExportToHttpResponse(formato, Response, true, string.Format("TramitePago{0}", ddlAnios.SelectedValue)); } catch (Exception e) { throw e; } }
private FileStreamResult LoadReport(Tuple <string, string> reportDetails, dynamic dataSource, Dictionary <string, dynamic> subReports = null, CrystalDecisions.Shared.ExportFormatType exportType = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat) { try { var reportPath = $"~/{ConfigurationManager.AppSettings["ReportsPath"]?.ToString()}/{reportDetails.Item1}"; _reportDocument = new ReportDocument(); _reportDocument.Load(Server.MapPath(reportPath)); if (subReports != null && subReports.Any()) { foreach (var subreport in subReports) { _reportDocument.Subreports[subreport.Key].SetDataSource(subreport.Value); } } _reportDocument.SetDataSource(dataSource); Response.Buffer = false; Response.ClearContent(); Response.ClearHeaders(); //_reportDocument.PrintOptions.PaperOrientation = CrystalDecisions.Shared.PaperOrientation.Landscape; //_reportDocument.PrintOptions.ApplyPageMargins(new CrystalDecisions.Shared.PageMargins(5, 5, 5, 5)); //_reportDocument.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperA5; Stream stream = _reportDocument.ExportToStream(exportType); stream.Seek(0, SeekOrigin.Begin); return(File(stream, "application/pdf", reportDetails.Item2)); } catch (Exception ex) { _logger.Log(LogLevel.Error, "", "Exception :: " + ex.ToString()); } return(null); }