Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   ASPX (.net) (http://www.forosdelweb.com/f78/)
-   -   Porque Crystal no exporta 20 mil registros a PDF..? (http://www.forosdelweb.com/f78/porque-crystal-no-exporta-20-mil-registros-pdf-574597/)

LUISESPOCH 10/04/2008 10:16

Porque Crystal no exporta 20 mil registros a PDF..?
 
Hola amigos, tengo el siguiente problema que espero uds me puedan ayudar a resolverlo.
Resulta que en el trabajo tenemos una aplicativo web con ASP.Net2003 y SQLServer2005 y para los reportes utilizamos el Crystal que viene por defecto instalado con VS.

El problema es con Crystal cuando yo intento traer por sobre las 10 mil registros,
y exportarlas en formato PDF o Excel; entonces ahi me sale el error, algo asi como: SystemOutMemory.

Para efectos de que comprendan el codigo heradado con el que me encontrè cuando empece a hecharle mano a unos reportes es el siguiente:

Este metodo (cod.B) que esta en una libreria.vb, lo invocamos desde la pagina "aspx" con el siguiente codigo (cod.A)


cod.A
...
...
Dim NomArchivo As String = Session.SessionID + DateTime.Now.ToString("hhmmss") + "." + VG_Formato
Dim Contexto As String = objRep.GeneraReporte(NomArchivo, VG_Formato, VG_archRpt, p_dsReporte, xmlParam, False)
Dim objUtil As Utilitario.utilFormulario = New Utilitario.utilFormulario
Dim Reporte As New System.Text.StringBuilder
Reporte.Append("../../../frmReportes.aspx?contexto=").Append(Contexto)
Reporte.Append("&FileName=").Append(NomArchivo)
objUtil.getJavaScript("AbrirWindow('" + Reporte.ToString() + "',1,600,400,200,200);", "Reporte", Page)
...
....



cod B.
Public Function GeneraReporte(ByVal PI_NomArchivo As String, ByVal PI_Formato As String,
ByVal PI_rptArchivo As String, ByVal PI_dsReporte As DataSet,
ByVal PI_xmlParam As XmlDocument) As String

Dim Contexto As String = ""
p_ReporteDoc = New ReportDocument
p_ReporteDoc.Load(PI_rptArchivo)
p_ReporteDoc.SetDataSource(PI_dsReporte)
SeteaParametro(PI_xmlParam)
Dim diskOpts As New DiskFileDestinationOptions
p_ReporteDoc.ExportOptions.ExportDestinationType = ExportDestinationType.DiskFile
diskOpts.DiskFileName = p_objBase.MapPath + "\temp\" + PI_NomArchivo
p_ReporteDoc.ExportOptions.DestinationOptions = diskOpts
Select Case (PI_Formato)
Case "pdf"
p_ReporteDoc.ExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat
Contexto = "application/pdf"
Case "xls"
p_ReporteDoc.ExportOptions.ExportFormatType = ExportFormatType.Excel
Contexto = "application/vnd.ms-excel"
End Select
p_ReporteDoc.Export()
End If
Return Contexto
End Function

A que se debe realmente esto...? a problemas con el Acrobath o el Crystal?
Alguna solucion para poder visualizar estas consultas extensas?
Le falta algo al metodo que exporta estos PDF?

Les agradezco señores de este foro, por la valiosa ayuda.

LE

Peterpay 10/04/2008 10:19

Re: Porque Crystal no exporta 20 mil registros a PDF..?
 
Te estas quedando sin memoria y es por el volumen de datos lo que te recomiendo es que liberes memoria de otros procesos que esten correindo en tu mismo server


La zona horaria es GMT -6. Ahora son las 12:35.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.