Foros del Web » Programando para Internet » ASPX (.net) »

Porque Crystal no exporta 20 mil registros a PDF..?

Estas en el tema de Porque Crystal no exporta 20 mil registros a PDF..? en el foro de ASPX (.net) en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 10/04/2008, 10:16
Avatar de LUISESPOCH  
Fecha de Ingreso: octubre-2006
Mensajes: 194
Antigüedad: 17 años, 6 meses
Puntos: 0
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

Última edición por LUISESPOCH; 10/04/2008 a las 10:20 Razón: correcciones
  #2 (permalink)  
Antiguo 10/04/2008, 10:19
Avatar de Peterpay
Colaborador
 
Fecha de Ingreso: septiembre-2007
Ubicación: San Francisco, United States
Mensajes: 3.858
Antigüedad: 16 años, 8 meses
Puntos: 87
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
__________________
Curso WF4
http://cursos.gurudotnet.com/ DF
Aprende HTML5
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:20.