Cambiar ruta del reporte de Crystal

Meifer
29 de Mayo del 2004
Hola necesito saber como hacer un reporte q trabaje con dos bases de datos IDENTICAS "con los mismas tablas y campos" pero en diferente ubicacion..... El reporte lo llamo desde visual basic

Ejemplo
tengo una base de datos aqui==> c:sistemadatosbase.mdb
y otra c:sistemainformebase.mdb

1-.¿ Como le cambio la ruta de la base de datos?
Gracias por su ayuda!!

Oscar
29 de Mayo del 2004
A ver si esta función te ayuda:

Private Sub establecerConexionAccess2CR(ByRef pRptInforme As CRAXDRT.Report, _
ByVal pStrFicheroMDB As String)

Dim tblTabla As CRAXDRT.DatabaseTable
Dim crsSeccion As CRAXDRT.Section
Dim croObjeto As Object
Dim rptSubInforme As CRAXDRT.Report

On Error GoTo errorHandler

For Each tblTabla In pRptInforme.Database.Tables
tblTabla.ConnectionProperties.DeleteAll
tblTabla.ConnectionProperties.Add "Provider", "Microsoft.Jet.OLEDB.4.0"
tblTabla.ConnectionProperties.Add "Data Source", pStrFicheroMDB
tblTabla.Location = pStrFicheroMDB
Next

For Each crsSeccion In pRptInforme.Sections
For Each croObjeto In crsSeccion.ReportObjects
If croObjeto.Kind = crSubreportObject Then
Set rptSubInforme = croObjeto.OpenSubreport
establecerConexionAccess2CR rptSubInforme, pStrFicheroMDB
End If
Next
Set croObjeto = Nothing
Next
Set crsSeccion = Nothing

Exit Sub

errorHandler:
MsgBox Err.Description, vbCritical + vbOKOnly, "XXX"

End Sub


Un saludo.

Meifer
29 de Mayo del 2004
Hola estoy haciendo la prueba pero me dice no se ha definido tipo por el usuario ¿tengo q agregar una referencia o algo parecido?

Oscar
29 de Mayo del 2004
Si, claro. Necesitas añadir las referencias a 'Crystal Reports 9 ActiveX Designer Run Time' (o su equivalente si no usas la versión 9 de Crystal Reports).

Un saludo.

Meifer
29 de Mayo del 2004
Mira lo estoy haciendo asi

donde standar es el nombre de la base de datos
y nomina es la ubicacion dond lo va a buscar

pero me dice q requiere un objeto

nomina = " " & App.Path & "\archivo\"
Call establecerConexionAccess2CR(standar.mdb, "& nomina &")

¿Q estoy haciendo mal?