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