Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Pasar Recorsdet a SubReport de Crystal

Estas en el tema de Pasar Recorsdet a SubReport de Crystal en el foro de Visual Basic clásico en Foros del Web. Buenas, solicito su ayuda. Estoy programando en VB6 con CR12. El escenario es el siguiente: Desde una libreria leo un archivo XML el cual llena ...
  #1 (permalink)  
Antiguo 27/01/2009, 11:06
Avatar de AgustinT  
Fecha de Ingreso: enero-2009
Mensajes: 12
Antigüedad: 15 años, 3 meses
Puntos: 0
Exclamación Pasar Recorsdet a SubReport de Crystal

Buenas, solicito su ayuda.
Estoy programando en VB6 con CR12.
El escenario es el siguiente:
Desde una libreria leo un archivo XML el cual llena un Recordset. Tengo que imprimir un reporte hecho en Crystal que tiene un subreport. Hasta ahora puedo pasarle los datos al reporte principal de la siguiente manera:

Dim ds As ADODB.Recordset
Dim obj_DOMDocument As DOMDocument
Dim bOk As Boolean

Set obj_DOMDocument = New DOMDocument
Set ds = New ADODB.Recordset

bOk = obj_DOMDocument.Load(strXMLPath + "\recibo_" + CStr(strComprobante) + ".xml")
ds.Open obj_DOMDocument
crReport.Database.SetDataSource ds


Mi duda es como hacer para pasarle otro recorset al SubReport

Por ejemplo, en versiones anteriores se podia hacer lo siguiente:
CrystalReport.SubreportToChange = "SubReport1"

pero en esta version no se puede. ¿Alguna idea?.

Desde ya muchas gracias.
Saludos!
  #2 (permalink)  
Antiguo 10/02/2009, 12:04
Avatar de AgustinT  
Fecha de Ingreso: enero-2009
Mensajes: 12
Antigüedad: 15 años, 3 meses
Puntos: 0
De acuerdo Respuesta: Pasar Recorsdet a SubReport de Crystal

Bueno, finalmente he encontrado la solucion.
El tema es que hay que crear un nuevo objeto por cada SubReport que tengamos, y a este tratarlo como un Reporte diferente.
El codigo es asi:

' Creo el objeto para el SubReport
Dim crSubReport As New CRAXDDRT.Report
' Cargo los SubReport
Set crSubReport = crReport1.OpenSubreport("Detalles") <-- Nombre del SubReport
`Le paso el dataset al SubReport
crSubReport.Database.SetDataSource ds_detalle
crSubReport_Detalle.ReadRecords


y luego se imprime el reporte principal.

Espero que les sirva.
Saludos!
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 11:12.