Beispiel #1
0
        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 }));
            }
        }
Beispiel #2
0
        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;
            }
        }
Beispiel #3
0
        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);
        }