Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/06/2010, 10:43
Veroxis
 
Fecha de Ingreso: junio-2010
Mensajes: 1
Antigüedad: 13 años, 11 meses
Puntos: 0
Reporte con varios DataSet

Hola me gustaría saber si alguien me puede ayudar con este problema.
Tengo varios reportes hechos (Posición, Transacciones, Contabilidad, etc.), cada uno con su propio DataSet, y todos funcionando bien. Lo que necesito hacer ahora es un nuevo reporte llamado ‘crCartolaTotal’ el cual muestra los totales de todos los reportes anteriores.
El código que utilizo para generar cada reporte en forma particular y que funciona bien es el siguiente:

Ej. Reporte Posiciones.
Private Sub CargaDatos()
Dim ds As DataSet
ds = PosicionDiaria()
ExportReports(ds)
End Sub
Private Sub ExportReports(ByVal ds As DataSet)
Dim cr As New crPosicion
ds.Tables(0).TableName = "Posicion"
cr.SetDataSource(ds)

Response.Clear()
Response.Buffer = True
Dim FileName As String = "Posición.pdf"
Response.AddHeader("content-disposition", "attachment;filename=" + FileName)
Response.Charset = "ISO-8859-1"
Response.ContentType = "application/vnd.pdf"
Dim oStream As MemoryStream = CType(cr.ExportToStream(ExportFormatType.PortableD ocFormat), MemoryStream)
Response.BinaryWrite(oStream.ToArray())
Response.End()
End Sub

Ahora lo que necesitaría hacer es cargar varios DataSet en el mismo reporte (esta es la parte que no me funciona o no sé cómo hacerla)

El código lo modifico de la siguiente forma:

Private Sub CargaDatos()
Dim dsPosicion As DataSet
Dim dsContabilidad As DataSet
dsPosicion = PosicionDiaria()
dsContabilidad = Contabilidad()
ExportReports(dsPosicion, dsContabilidad)
End Sub
Private Sub ExportReports(ByVal dsPosicion As DataSet, ByVal dsContabilidad As DataSet)
Dim cr As New crCartolaTotal
dsPosicion.Tables(0).TableName = "Posicion"
dsContabilidad.Tables(0).TableName = "Contabilidad"
cr.SetDataSource(dsPosicion)
cr.SetDataSource(dsContabilidad)

Response.Clear()
Response.Buffer = True
Dim FileName As String = "Cartola Total.pdf"
Response.AddHeader("content-disposition", "attachment;filename=" + FileName)
Response.Charset = "ISO-8859-1"
Response.ContentType = "application/vnd.pdf"
Dim oStream As MemoryStream = CType(cr.ExportToStream(ExportFormatType.PortableD ocFormat), MemoryStream)
Response.BinaryWrite(oStream.ToArray())
Response.End()
End Sub

Al ejecutar esto se cae el programa en la línea

Dim oStream As MemoryStream = CType(cr.ExportToStream(ExportFormatType.PortableD ocFormat), MemoryStream)

Por favor alguen que me ayude. Gracias