Crystal Report - Ubicación base

 
Vista:

Ubicación base

Publicado por Nicolás (24 intervenciones) el 30/03/2006 02:10:13
Saludos:
Cómo se indica a travéz de visual basic 6 la dirección de la base de datos para armar un reporte en crystal reports 9?

El ejemplo siguiente no funciona porque toma la dirección de base con que armé el reporte.

Dim CrRep As CRAXDRT.Report
Dim CrApp As New CRAXDRT.Application
Set CrRep = CrApp.OpenReport(V_UBICACIONBASE & "\Vencimientos 2006.rpt")
CrRep.DiscardSavedData
CrRep.Database.Tables(1).SetSessionInfo "Admin", Chr$(10) & "cpbdj001"
CrRep.FormulaSyntax = crCrystalSyntaxFormula
CrRep.RecordSelectionFormula = ""
With rptInforme
.Refresh
DoEvents
.ReportSource = CrRep
.ViewReport
End With

rptInforme es un control CRViewer9

Desde ya, muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ubicación base

Publicado por Gerardo (571 intervenciones) el 30/03/2006 02:58:24
Ke tal Nicolas.

Intenta lo siguiente:

Dim crReport As New CRAXDRT.Report
Dim CrApp As New CRAXDRT.Application
Dim tbl As CRAXDRT.DatabaseTable
Dim cadena(3) As String
'Estoy suponiendo una base de SQLServer
cadena(0) = "NOMBSEVIDOR"
cadena(1) = "NOMBDB"
cadena(2) = "NOMUSUARIO"
cadena(3) = "PASSWORD"
Set CrRep = CrApp.OpenReport(V_UBICACIONBASE & "\Vencimientos 2006.rpt")
For Each tbl In crRep.Database.Tables
tbl.SetLogOnInfo cadena(0), cadena(1), cadena(2), cadena(3)
Next
rptInforme .ReportSource = crRep
rptInforme .ViewReport

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Corrección

Publicado por Nicolás (24 intervenciones) el 30/03/2006 13:59:23
Saludos:
Mil disculpas, omití aclarar que se trataba de una base de datos ACCESS con clave.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Corrección

Publicado por Erick alvarez samayoa (147 intervenciones) el 17/04/2006 22:07:09
yo tengo el mismo problema y por mas que e intentado cambiandole a las tablas que tenga el reporte no me a funcionado y tambien es una tabla de access con clave de base de datos.

si alguien podria proporcionar la respuesta especifica para access, se lo agradeceria.

muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Solución

Publicado por Nicolás (24 intervenciones) el 18/04/2006 00:45:36
A mi me sirvió ésto:

Dim CrRep As CRAXDRT.Report
Dim CrApp As New CRAXDRT.Application
Set CrRep = CrApp.OpenReport(V_UBICACIONBASE & "\Reporte.rpt")
CrRep.DiscardSavedData
For i = 1 To CrRep.Database.Tables.Count
CrRep.Database.Tables(i).Location = V_UBICACIONBASE & "\Base.MDB"
CrRep.Database.Tables(i).SetSessionInfo "Admin", Chr$(10) & "clave"
Next i
CrRep.FormulaSyntax = crCrystalSyntaxFormula
CrRep.RecordSelectionFormula = ""
With rptInforme
.Refresh
DoEvents
.ReportSource = CrRep
.ViewReport
End With
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar