
Error when running crystal report (8.5) through VB 6
This is a condensed version of my problem. I have two basic
variations I have tried. One using ADODB command and connection
objects for the data-source.
Dim lobjCmd As ADODB.Command
Dim lobjCon As ADODB.Connection
Dim lobjReport As CRAXDRT.Report
Dim lobjApp As CRAXDDRT.Application
Dim lstrLocation As String
Dim llngIndex As Long
Dim lstrDBDatabase As String
Dim lstrDBServer As String
Dim lstrDBUser As String
Dim lstrDBPassword As String
lstrDBDatabase = "MyDatabase"
lstrDBServer = "MyServer"
lstrDBUser = "MyUser"
lstrDBPassword = "MyPassword"
Set lobjApp = New CRAXDRT.Application
Set lobjReport = lobjApp.OpenReport("C:\FTR.rpt", 1)
If 1 = 1 Then
Set lobjCon = New ADODB.Connection
Set lobjCmd = New ADODB.Command
lobjCon.Open "DRIVER=SQL
Server;UID=contracts;Database=ContractsDEV;PWD=contracts;SERVER=amecs2c;"
lobjCmd.ActiveConnection = lobjCon
lobjCmd.CommandText = "EXEC sprReportMPR 51285, '" & Now() &
"'"
lobjReport.Database.AddADOCommand lobjCon, lobjCmd ' this line
causes error
Set lobjCmd = Nothing
Set lobjCon = Nothing
Else
lobjApp.LogOnServer "P2SODBC.DLL", lstrDBServer,
lstrDBDatabase, lstrDBUser, lstrDBPassword ' this line causes errors
'lobjApp.LogOnServer "PDSODBC.DLL", lstrDBServer,
lstrDBDatabase, lstrDBUser, lstrDBPassword
lobjReport.Database.LogOnServer "PDSODBC.DLL", lstrDBServer,
lstrDBDatabase, lstrDBUser, lstrDBPassword
lobjReport.Database.Tables(1).SetLogOnInfo lstrDBServer,
lstrDBDatabase, lstrDBUser, lstrDBPassword
lobjReport.Database.Tables(1).SetSessionInfo lstrDBUser,
lstrDBPassword
' Switch the location stored within the report itself
lstrLocation = lobjReport.Database.Tables(1).Location
llngIndex = InStr(1, lstrLocation, "Proc(", vbTextCompare)
lstrLocation = lstrDBDatabase & ".dbo." & Mid(lstrLocation,
llngIndex)
lobjReport.Database.Tables(1).Location = lstrLocation
' Add parameters
51285
Now()
End If
' Export
lobjReport.ExportOptions.DestinationType = crEDTDiskFile
lobjReport.ExportOptions.DiskFileName = "C:\FTR.doc"
lobjReport.ExportOptions.FormatType = crEFTWordForWindows
lobjReport.Export False ' This line causes error
Set lobjApp = Nothing
Set lobjReport = Nothing