Yet again "Server has not yet been opened"
Author |
Message |
Marc Llena #1 / 12
|
 Yet again "Server has not yet been opened"
Hi there, I have VB6 Front End with a non-secured Access 2000 Back End. I have created several reports on CR 8.5 that are pointing to the Back End using OLE DB. On my developing machine (W2K Pro) I can display the reports and so far everything works great. Now, when I do the installation on a client machine (Win 98 SE) the reports cannot be displayed and I get the "Server has not yet been opened" message. Here is the code I'm using. I've tried different combinations suggested on the KB but so far none worked. If I store the database on C:\ and hardcode the Front End to point at "C:\TheDB.mdb" then it works but I want the DB to be with the rest of the application (Program Files or else). Here goes the code: ------------------------------------------------------ Option Explicit Dim Appl As New CRAXDRT.Application Dim Report As New CRAXDRT.Report Private Sub Form_Load() On Error GoTo ErrorHandler Screen.MousePointer = vbHourglass Me.Caption = pstrReportTitle Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" Report.Database.LogOnServerEx "p2soledb.dll", App.Path & "\TheDB.mdb", "", "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & App.Path & "\TheDB.mdb" Me.CRViewer.ReportSource = Report Me.CRViewer.ViewReport Me.CRViewer.DisplayGroupTree = False Screen.MousePointer = vbDefault Exit Sub ErrorHandler: Screen.MousePointer = vbDefault MsgBox Err.Description End Sub Private Sub Form_Resize() CRViewer.Top = 0 CRViewer.Left = 0 CRViewer.Height = ScaleHeight CRViewer.Width = ScaleWidth End Sub ------------------------------------------------------ I've tried using App.Path & "\TheDB.mdb" as Server and as Database on LogOnServerEx and made no difference. Thanks in advance for your help. Marc
|
Mon, 04 Apr 2005 21:58:16 GMT |
|
 |
Kare #2 / 12
|
 Yet again "Server has not yet been opened"
Had the same problem, tried several different methods and only solved it using the TTX files method. When you package your vb app, just include the TTX files. Use them as your field definitions. That's the only thing that worked for me. Good luck! Check out crystaldecisions.com website for TTX files. There are some good examples. Quote: >-----Original Message----- >Hi there, >I have VB6 Front End with a non-secured Access 2000 Back End. >I have created several reports on CR 8.5 that are
pointing to the Back End Quote: >using OLE DB. >On my developing machine (W2K Pro) I can display the reports and so far >everything works great. >Now, when I do the installation on a client machine (Win 98 SE) the reports >cannot be displayed and I get the "Server has not yet
been opened" message. Quote: >Here is the code I'm using. I've tried different
combinations suggested on Quote: >the KB but so far none worked. >If I store the database on C:\ and hardcode the Front End to point at >"C:\TheDB.mdb" then it works but I want the DB to be with the rest of the >application (Program Files or else). >Here goes the code: >------------------------------------------------------ >Option Explicit >Dim Appl As New CRAXDRT.Application >Dim Report As New CRAXDRT.Report >Private Sub Form_Load() >On Error GoTo ErrorHandler > Screen.MousePointer = vbHourglass > Me.Caption = pstrReportTitle > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & "\TheDB.mdb", "", >"", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & >App.Path & "\TheDB.mdb" > Me.CRViewer.ReportSource = Report > Me.CRViewer.ViewReport > Me.CRViewer.DisplayGroupTree = False > Screen.MousePointer = vbDefault > Exit Sub >ErrorHandler: > Screen.MousePointer = vbDefault > MsgBox Err.Description >End Sub >Private Sub Form_Resize() > CRViewer.Top = 0 > CRViewer.Left = 0 > CRViewer.Height = ScaleHeight > CRViewer.Width = ScaleWidth >End Sub >------------------------------------------------------ >I've tried using App.Path & "\TheDB.mdb" as Server and as Database on >LogOnServerEx and made no difference. >Thanks in advance for your help. >Marc >.
|
Wed, 06 Apr 2005 02:27:10 GMT |
|
 |
CW #3 / 12
|
 Yet again "Server has not yet been opened"
Did you design your report based on OLE DB connection or ADO connection? If you don't mind switching to normal Data File (i.e., Access database in your case), you simply have to set Location property of each DatabaseTable object to the full path of the mdb file.
Quote: > Hi there, > I have VB6 Front End with a non-secured Access 2000 Back End. > I have created several reports on CR 8.5 that are pointing to the Back End > using OLE DB. > On my developing machine (W2K Pro) I can display the reports and so far > everything works great. > Now, when I do the installation on a client machine (Win 98 SE) the reports > cannot be displayed and I get the "Server has not yet been opened" message. > Here is the code I'm using. I've tried different combinations suggested on > the KB but so far none worked. > If I store the database on C:\ and hardcode the Front End to point at > "C:\TheDB.mdb" then it works but I want the DB to be with the rest of the > application (Program Files or else). > Here goes the code: > ------------------------------------------------------ > Option Explicit > Dim Appl As New CRAXDRT.Application > Dim Report As New CRAXDRT.Report > Private Sub Form_Load() > On Error GoTo ErrorHandler > Screen.MousePointer = vbHourglass > Me.Caption = pstrReportTitle > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & "\TheDB.mdb", "", > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & > App.Path & "\TheDB.mdb" > Me.CRViewer.ReportSource = Report > Me.CRViewer.ViewReport > Me.CRViewer.DisplayGroupTree = False > Screen.MousePointer = vbDefault > Exit Sub > ErrorHandler: > Screen.MousePointer = vbDefault > MsgBox Err.Description > End Sub > Private Sub Form_Resize() > CRViewer.Top = 0 > CRViewer.Left = 0 > CRViewer.Height = ScaleHeight > CRViewer.Width = ScaleWidth > End Sub > ------------------------------------------------------ > I've tried using App.Path & "\TheDB.mdb" as Server and as Database on > LogOnServerEx and made no difference. > Thanks in advance for your help. > Marc
|
Wed, 06 Apr 2005 08:52:52 GMT |
|
 |
Marc Llena #4 / 12
|
 Yet again "Server has not yet been opened"
Calvin, What do you mean by "switching to normal data"? I added the line Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" Before Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" and now I get a "No rowset was returned for this table, query, or procedure." error followed by "Error detected by database DLL". Any suggestions? Thanks in advance, Marc
Quote: > Did you design your report based on OLE DB connection or ADO connection? > If you don't mind switching to normal Data File (i.e., Access database in > your case), you simply have to set Location property of each DatabaseTable > object to the full path of the mdb file.
> > Hi there, > > I have VB6 Front End with a non-secured Access 2000 Back End. > > I have created several reports on CR 8.5 that are pointing to the Back End > > using OLE DB. > > On my developing machine (W2K Pro) I can display the reports and so far > > everything works great. > > Now, when I do the installation on a client machine (Win 98 SE) the > reports > > cannot be displayed and I get the "Server has not yet been opened" > message. > > Here is the code I'm using. I've tried different combinations suggested on > > the KB but so far none worked. > > If I store the database on C:\ and hardcode the Front End to point at > > "C:\TheDB.mdb" then it works but I want the DB to be with the rest of the > > application (Program Files or else). > > Here goes the code: > > ------------------------------------------------------ > > Option Explicit > > Dim Appl As New CRAXDRT.Application > > Dim Report As New CRAXDRT.Report > > Private Sub Form_Load() > > On Error GoTo ErrorHandler > > Screen.MousePointer = vbHourglass > > Me.Caption = pstrReportTitle > > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & "\TheDB.mdb", > "", > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & > > App.Path & "\TheDB.mdb" > > Me.CRViewer.ReportSource = Report > > Me.CRViewer.ViewReport > > Me.CRViewer.DisplayGroupTree = False > > Screen.MousePointer = vbDefault > > Exit Sub > > ErrorHandler: > > Screen.MousePointer = vbDefault > > MsgBox Err.Description > > End Sub > > Private Sub Form_Resize() > > CRViewer.Top = 0 > > CRViewer.Left = 0 > > CRViewer.Height = ScaleHeight > > CRViewer.Width = ScaleWidth > > End Sub > > ------------------------------------------------------ > > I've tried using App.Path & "\TheDB.mdb" as Server and as Database on > > LogOnServerEx and made no difference. > > Thanks in advance for your help. > > Marc
|
Fri, 08 Apr 2005 19:02:54 GMT |
|
 |
CW #5 / 12
|
 Yet again "Server has not yet been opened"
When you design a report, you get to choose the types of the data sources. For access database, you can simply select Data File. In your case, you can go to database -> set location to convert from using OLE DB to using Data File.
Quote: > Calvin, > What do you mean by "switching to normal data"? > I added the line > Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" > Before > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > and now I get a "No rowset was returned for this table, query, or > procedure." error followed by "Error detected by database DLL". > Any suggestions? > Thanks in advance, > Marc
> > Did you design your report based on OLE DB connection or ADO connection? > > If you don't mind switching to normal Data File (i.e., Access database in > > your case), you simply have to set Location property of each DatabaseTable > > object to the full path of the mdb file.
> > > Hi there, > > > I have VB6 Front End with a non-secured Access 2000 Back End. > > > I have created several reports on CR 8.5 that are pointing to the Back > End > > > using OLE DB. > > > On my developing machine (W2K Pro) I can display the reports and so far > > > everything works great. > > > Now, when I do the installation on a client machine (Win 98 SE) the > > reports > > > cannot be displayed and I get the "Server has not yet been opened" > > message. > > > Here is the code I'm using. I've tried different combinations suggested > on > > > the KB but so far none worked. > > > If I store the database on C:\ and hardcode the Front End to point at > > > "C:\TheDB.mdb" then it works but I want the DB to be with the rest of > the > > > application (Program Files or else). > > > Here goes the code: > > > ------------------------------------------------------ > > > Option Explicit > > > Dim Appl As New CRAXDRT.Application > > > Dim Report As New CRAXDRT.Report > > > Private Sub Form_Load() > > > On Error GoTo ErrorHandler > > > Screen.MousePointer = vbHourglass > > > Me.Caption = pstrReportTitle > > > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & "\TheDB.mdb", > > "", > > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & > > > App.Path & "\TheDB.mdb" > > > Me.CRViewer.ReportSource = Report > > > Me.CRViewer.ViewReport > > > Me.CRViewer.DisplayGroupTree = False > > > Screen.MousePointer = vbDefault > > > Exit Sub > > > ErrorHandler: > > > Screen.MousePointer = vbDefault > > > MsgBox Err.Description > > > End Sub > > > Private Sub Form_Resize() > > > CRViewer.Top = 0 > > > CRViewer.Left = 0 > > > CRViewer.Height = ScaleHeight > > > CRViewer.Width = ScaleWidth > > > End Sub > > > ------------------------------------------------------ > > > I've tried using App.Path & "\TheDB.mdb" as Server and as Database on > > > LogOnServerEx and made no difference. > > > Thanks in advance for your help. > > > Marc
|
Fri, 08 Apr 2005 19:32:37 GMT |
|
 |
Marc Llena #6 / 12
|
 Yet again "Server has not yet been opened"
Thanks Calvin, I'm assuming tht after changing from OLEDB to ADO I need to modify my connection driver, right?. I've been trying with the following code and I get an error stating that it cannot find the DB on the location I used when I created the report. Set Report = Appl.OpenReport(strMyAppPath) Report.Database.Tables(1).Location = strMyDBPath Report.Database.Tables(1).SetLogOnInfo strMyDBPath Report.Database.LogOnServerEx "p2smon.dll", strMyDBPath, "", "", "", "Active Data (ADO)", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & strMyDBPath & ";" Me.CRViewer.ReportSource = Report Me.CRViewer.ViewReport Before I was using "p2soledb.dll" Can you think of the reason it doesn't take the new DB location? Cheers, Marc
Quote: > When you design a report, you get to choose the types of the data sources. > For access database, you can simply select Data File. > In your case, you can go to database -> set location to convert from using > OLE DB to using Data File.
> > Calvin, > > What do you mean by "switching to normal data"? > > I added the line > > Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" > > Before > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > and now I get a "No rowset was returned for this table, query, or > > procedure." error followed by "Error detected by database DLL". > > Any suggestions? > > Thanks in advance, > > Marc
> > > Did you design your report based on OLE DB connection or ADO connection? > > > If you don't mind switching to normal Data File (i.e., Access database > in > > > your case), you simply have to set Location property of each > DatabaseTable > > > object to the full path of the mdb file.
> > > > Hi there, > > > > I have VB6 Front End with a non-secured Access 2000 Back End. > > > > I have created several reports on CR 8.5 that are pointing to the Back > > End > > > > using OLE DB. > > > > On my developing machine (W2K Pro) I can display the reports and so > far > > > > everything works great. > > > > Now, when I do the installation on a client machine (Win 98 SE) the > > > reports > > > > cannot be displayed and I get the "Server has not yet been opened" > > > message. > > > > Here is the code I'm using. I've tried different combinations > suggested > > on > > > > the KB but so far none worked. > > > > If I store the database on C:\ and hardcode the Front End to point at > > > > "C:\TheDB.mdb" then it works but I want the DB to be with the rest of > > the > > > > application (Program Files or else). > > > > Here goes the code: > > > > ------------------------------------------------------ > > > > Option Explicit > > > > Dim Appl As New CRAXDRT.Application > > > > Dim Report As New CRAXDRT.Report > > > > Private Sub Form_Load() > > > > On Error GoTo ErrorHandler > > > > Screen.MousePointer = vbHourglass > > > > Me.Caption = pstrReportTitle > > > > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & > "\TheDB.mdb", > > > "", > > > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & > > > > App.Path & "\TheDB.mdb" > > > > Me.CRViewer.ReportSource = Report > > > > Me.CRViewer.ViewReport > > > > Me.CRViewer.DisplayGroupTree = False > > > > Screen.MousePointer = vbDefault > > > > Exit Sub > > > > ErrorHandler: > > > > Screen.MousePointer = vbDefault > > > > MsgBox Err.Description > > > > End Sub > > > > Private Sub Form_Resize() > > > > CRViewer.Top = 0 > > > > CRViewer.Left = 0 > > > > CRViewer.Height = ScaleHeight > > > > CRViewer.Width = ScaleWidth > > > > End Sub > > > > ------------------------------------------------------ > > > > I've tried using App.Path & "\TheDB.mdb" as Server and as Database on > > > > LogOnServerEx and made no difference. > > > > Thanks in advance for your help. > > > > Marc
|
Sat, 09 Apr 2005 00:12:48 GMT |
|
 |
Al Emer #7 / 12
|
 Yet again "Server has not yet been opened"
When I go to database -> set location the "Same As Report" option is disabled. Any further suggestions? I'm considering {*filter*}. Al Quote:
> When you design a report, you get to choose the types of the data sources. > For access database, you can simply select Data File. > In your case, you can go to database -> set location to convert from using > OLE DB to using Data File.
> > Calvin, > > What do you mean by "switching to normal data"? > > I added the line > > Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" > > Before > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > and now I get a "No rowset was returned for this table, query, or > > procedure." error followed by "Error detected by database DLL". > > Any suggestions? > > Thanks in advance, > > Marc
> > > Did you design your report based on OLE DB connection or ADO connection? > > > If you don't mind switching to normal Data File (i.e., Access database > in > > > your case), you simply have to set Location property of each > DatabaseTable > > > object to the full path of the mdb file.
> > > > Hi there, > > > > I have VB6 Front End with a non-secured Access 2000 Back End. > > > > I have created several reports on CR 8.5 that are pointing to the Back > > End > > > > using OLE DB. > > > > On my developing machine (W2K Pro) I can display the reports and so > far > > > > everything works great. > > > > Now, when I do the installation on a client machine (Win 98 SE) the > > > reports > > > > cannot be displayed and I get the "Server has not yet been opened" > > > message. > > > > Here is the code I'm using. I've tried different combinations > suggested > > on > > > > the KB but so far none worked. > > > > If I store the database on C:\ and hardcode the Front End to point at > > > > "C:\TheDB.mdb" then it works but I want the DB to be with the rest of > > the > > > > application (Program Files or else). > > > > Here goes the code: > > > > ------------------------------------------------------ > > > > Option Explicit > > > > Dim Appl As New CRAXDRT.Application > > > > Dim Report As New CRAXDRT.Report > > > > Private Sub Form_Load() > > > > On Error GoTo ErrorHandler > > > > Screen.MousePointer = vbHourglass > > > > Me.Caption = pstrReportTitle > > > > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & > "\TheDB.mdb", > > > "", > > > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & > > > > App.Path & "\TheDB.mdb" > > > > Me.CRViewer.ReportSource = Report > > > > Me.CRViewer.ViewReport > > > > Me.CRViewer.DisplayGroupTree = False > > > > Screen.MousePointer = vbDefault > > > > Exit Sub > > > > ErrorHandler: > > > > Screen.MousePointer = vbDefault > > > > MsgBox Err.Description > > > > End Sub > > > > Private Sub Form_Resize() > > > > CRViewer.Top = 0 > > > > CRViewer.Left = 0 > > > > CRViewer.Height = ScaleHeight > > > > CRViewer.Width = ScaleWidth > > > > End Sub > > > > ------------------------------------------------------ > > > > I've tried using App.Path & "\TheDB.mdb" as Server and as Database on > > > > LogOnServerEx and made no difference. > > > > Thanks in advance for your help. > > > > Marc
|
Sat, 09 Apr 2005 05:31:04 GMT |
|
 |
CW #8 / 12
|
 Yet again "Server has not yet been opened"
You need to change the report to be based on Access Data File, not OLE DB or ADO. It's possible to use OLE DB and ADO to change underlying location as well, however, it is more complex than using Access Data File. I don't think it's possible to convert the report from based on OLE DB/ADO database back to a report based on Data File in CR 8.5. From memory, this feature was removed since CR 7. That means you either would have to redesign the report based on Access Data File, or get the code to work with ADO. For ADO, one way to get things to work is to bind ADO recordset against report tables directly. You use SetDataSource method to bind an in-memory recordset against databasetable. It does mean that all joining/processing is done in memory rather than on server (which is no big deal in your case since you are using ACCESS anyway).
Quote: > Thanks Calvin, > I'm assuming tht after changing from OLEDB to ADO I need to modify my > connection driver, right?. I've been trying with the following code and I > get an error stating that it cannot find the DB on the location I used when > I created the report. > Set Report = Appl.OpenReport(strMyAppPath) > Report.Database.Tables(1).Location = strMyDBPath > Report.Database.Tables(1).SetLogOnInfo strMyDBPath > Report.Database.LogOnServerEx "p2smon.dll", strMyDBPath, "", "", "", > "Active Data (ADO)", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & > strMyDBPath & ";" > Me.CRViewer.ReportSource = Report > Me.CRViewer.ViewReport > Before I was using "p2soledb.dll" > Can you think of the reason it doesn't take the new DB location? > Cheers, > Marc
> > When you design a report, you get to choose the types of the data sources. > > For access database, you can simply select Data File. > > In your case, you can go to database -> set location to convert from using > > OLE DB to using Data File.
> > > Calvin, > > > What do you mean by "switching to normal data"? > > > I added the line > > > Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" > > > Before > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > and now I get a "No rowset was returned for this table, query, or > > > procedure." error followed by "Error detected by database DLL". > > > Any suggestions? > > > Thanks in advance, > > > Marc
> > > > Did you design your report based on OLE DB connection or ADO > connection? > > > > If you don't mind switching to normal Data File (i.e., Access database > > in > > > > your case), you simply have to set Location property of each > > DatabaseTable > > > > object to the full path of the mdb file.
> > > > > Hi there, > > > > > I have VB6 Front End with a non-secured Access 2000 Back End. > > > > > I have created several reports on CR 8.5 that are pointing to the > Back > > > End > > > > > using OLE DB. > > > > > On my developing machine (W2K Pro) I can display the reports and so > > far > > > > > everything works great. > > > > > Now, when I do the installation on a client machine (Win 98 SE) the > > > > reports > > > > > cannot be displayed and I get the "Server has not yet been opened" > > > > message. > > > > > Here is the code I'm using. I've tried different combinations > > suggested > > > on > > > > > the KB but so far none worked. > > > > > If I store the database on C:\ and hardcode the Front End to point > at > > > > > "C:\TheDB.mdb" then it works but I want the DB to be with the rest > of > > > the > > > > > application (Program Files or else). > > > > > Here goes the code: > > > > > ------------------------------------------------------ > > > > > Option Explicit > > > > > Dim Appl As New CRAXDRT.Application > > > > > Dim Report As New CRAXDRT.Report > > > > > Private Sub Form_Load() > > > > > On Error GoTo ErrorHandler > > > > > Screen.MousePointer = vbHourglass > > > > > Me.Caption = pstrReportTitle > > > > > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & > > "\TheDB.mdb", > > > > "", > > > > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & > > > > > App.Path & "\TheDB.mdb" > > > > > Me.CRViewer.ReportSource = Report > > > > > Me.CRViewer.ViewReport > > > > > Me.CRViewer.DisplayGroupTree = False > > > > > Screen.MousePointer = vbDefault > > > > > Exit Sub > > > > > ErrorHandler: > > > > > Screen.MousePointer = vbDefault > > > > > MsgBox Err.Description > > > > > End Sub > > > > > Private Sub Form_Resize() > > > > > CRViewer.Top = 0 > > > > > CRViewer.Left = 0 > > > > > CRViewer.Height = ScaleHeight > > > > > CRViewer.Width = ScaleWidth > > > > > End Sub > > > > > ------------------------------------------------------ > > > > > I've tried using App.Path & "\TheDB.mdb" as Server and as Database > on > > > > > LogOnServerEx and made no difference. > > > > > Thanks in advance for your help. > > > > > Marc
|
Sat, 09 Apr 2005 18:30:36 GMT |
|
 |
CW #9 / 12
|
 Yet again "Server has not yet been opened"
You can always redesign your report - which is certainly more preferable than {*filter*}.
Quote: > When I go to database -> set location the "Same As Report" option is > disabled. > Any further suggestions? I'm considering {*filter*}. > Al
> > When you design a report, you get to choose the types of the data sources. > > For access database, you can simply select Data File. > > In your case, you can go to database -> set location to convert from using > > OLE DB to using Data File.
> > > Calvin, > > > What do you mean by "switching to normal data"? > > > I added the line > > > Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" > > > Before > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > and now I get a "No rowset was returned for this table, query, or > > > procedure." error followed by "Error detected by database DLL". > > > Any suggestions? > > > Thanks in advance, > > > Marc
> > > > Did you design your report based on OLE DB connection or ADO connection? > > > > If you don't mind switching to normal Data File (i.e., Access database > > in > > > > your case), you simply have to set Location property of each > > DatabaseTable > > > > object to the full path of the mdb file.
> > > > > Hi there, > > > > > I have VB6 Front End with a non-secured Access 2000 Back End. > > > > > I have created several reports on CR 8.5 that are pointing to the Back > > > End > > > > > using OLE DB. > > > > > On my developing machine (W2K Pro) I can display the reports and so > > far > > > > > everything works great. > > > > > Now, when I do the installation on a client machine (Win 98 SE) the > > > > reports > > > > > cannot be displayed and I get the "Server has not yet been opened" > > > > message. > > > > > Here is the code I'm using. I've tried different combinations > > suggested > > > on > > > > > the KB but so far none worked. > > > > > If I store the database on C:\ and hardcode the Front End to point at > > > > > "C:\TheDB.mdb" then it works but I want the DB to be with the rest of > > > the > > > > > application (Program Files or else). > > > > > Here goes the code: > > > > > ------------------------------------------------------ > > > > > Option Explicit > > > > > Dim Appl As New CRAXDRT.Application > > > > > Dim Report As New CRAXDRT.Report > > > > > Private Sub Form_Load() > > > > > On Error GoTo ErrorHandler > > > > > Screen.MousePointer = vbHourglass > > > > > Me.Caption = pstrReportTitle > > > > > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & > > "\TheDB.mdb", > > > > "", > > > > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & > > > > > App.Path & "\TheDB.mdb" > > > > > Me.CRViewer.ReportSource = Report > > > > > Me.CRViewer.ViewReport > > > > > Me.CRViewer.DisplayGroupTree = False > > > > > Screen.MousePointer = vbDefault > > > > > Exit Sub > > > > > ErrorHandler: > > > > > Screen.MousePointer = vbDefault > > > > > MsgBox Err.Description > > > > > End Sub > > > > > Private Sub Form_Resize() > > > > > CRViewer.Top = 0 > > > > > CRViewer.Left = 0 > > > > > CRViewer.Height = ScaleHeight > > > > > CRViewer.Width = ScaleWidth > > > > > End Sub > > > > > ------------------------------------------------------ > > > > > I've tried using App.Path & "\TheDB.mdb" as Server and as Database on > > > > > LogOnServerEx and made no difference. > > > > > Thanks in advance for your help. > > > > > Marc
|
Sat, 09 Apr 2005 18:31:18 GMT |
|
 |
Al Emer #10 / 12
|
 Yet again "Server has not yet been opened"
LO AND BEHOLD! I did as you suggested to Marc Llenas and everything works perfectly. Why all the {*filter*}in the KB and newsgroups when your one-sentence answer did it? CW FOR PRESIDENT! He's gotta be better than the pack of bowel babies we're gonna have to choose from in '04. <G> Al Quote:
> You can always redesign your report - which is certainly more preferable > than {*filter*}.
> > When I go to database -> set location the "Same As Report" option is > > disabled. > > Any further suggestions? I'm considering {*filter*}. > > Al
> > > When you design a report, you get to choose the types of the data > sources. > > > For access database, you can simply select Data File. > > > In your case, you can go to database -> set location to convert from > using > > > OLE DB to using Data File.
> > > > Calvin, > > > > What do you mean by "switching to normal data"? > > > > I added the line > > > > Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" > > > > Before > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > and now I get a "No rowset was returned for this table, query, or > > > > procedure." error followed by "Error detected by database DLL". > > > > Any suggestions? > > > > Thanks in advance, > > > > Marc
> > > > > Did you design your report based on OLE DB connection or ADO > connection? > > > > > If you don't mind switching to normal Data File (i.e., Access > database > > > in > > > > > your case), you simply have to set Location property of each > > > DatabaseTable > > > > > object to the full path of the mdb file.
> > > > > > Hi there, > > > > > > I have VB6 Front End with a non-secured Access 2000 Back End. > > > > > > I have created several reports on CR 8.5 that are pointing to the > Back > > > > End > > > > > > using OLE DB. > > > > > > On my developing machine (W2K Pro) I can display the reports and > so > > > far > > > > > > everything works great. > > > > > > Now, when I do the installation on a client machine (Win 98 SE) > the > > > > > reports > > > > > > cannot be displayed and I get the "Server has not yet been opened" > > > > > message. > > > > > > Here is the code I'm using. I've tried different combinations > > > suggested > > > > on > > > > > > the KB but so far none worked. > > > > > > If I store the database on C:\ and hardcode the Front End to point > at > > > > > > "C:\TheDB.mdb" then it works but I want the DB to be with the rest > of > > > > the > > > > > > application (Program Files or else). > > > > > > Here goes the code: > > > > > > ------------------------------------------------------ > > > > > > Option Explicit > > > > > > Dim Appl As New CRAXDRT.Application > > > > > > Dim Report As New CRAXDRT.Report > > > > > > Private Sub Form_Load() > > > > > > On Error GoTo ErrorHandler > > > > > > Screen.MousePointer = vbHourglass > > > > > > Me.Caption = pstrReportTitle > > > > > > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > > > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & > > > "\TheDB.mdb", > > > > > "", > > > > > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" > & > > > > > > App.Path & "\TheDB.mdb" > > > > > > Me.CRViewer.ReportSource = Report > > > > > > Me.CRViewer.ViewReport > > > > > > Me.CRViewer.DisplayGroupTree = False > > > > > > Screen.MousePointer = vbDefault > > > > > > Exit Sub > > > > > > ErrorHandler: > > > > > > Screen.MousePointer = vbDefault > > > > > > MsgBox Err.Description > > > > > > End Sub > > > > > > Private Sub Form_Resize() > > > > > > CRViewer.Top = 0 > > > > > > CRViewer.Left = 0 > > > > > > CRViewer.Height = ScaleHeight > > > > > > CRViewer.Width = ScaleWidth > > > > > > End Sub > > > > > > ------------------------------------------------------ > > > > > > I've tried using App.Path & "\TheDB.mdb" as Server and as Database > on > > > > > > LogOnServerEx and made no difference. > > > > > > Thanks in advance for your help. > > > > > > Marc
|
Mon, 11 Apr 2005 06:06:55 GMT |
|
 |
Marc Llena #11 / 12
|
 Yet again "Server has not yet been opened"
Congrats Al, I'm still busting my head with this issue. Could you post a snippet with the code you are using to connect to CR? Thanks, Marc
Quote: > LO AND BEHOLD! > I did as you suggested to Marc Llenas and everything works perfectly. > Why all the {*filter*}in the KB and newsgroups when your one-sentence answer > did it? > CW FOR PRESIDENT! He's gotta be better than the pack of bowel babies > we're gonna have to choose from in '04. <G> > Al
> > You can always redesign your report - which is certainly more preferable > > than {*filter*}.
> > > When I go to database -> set location the "Same As Report" option is > > > disabled. > > > Any further suggestions? I'm considering {*filter*}. > > > Al
> > > > When you design a report, you get to choose the types of the data > > sources. > > > > For access database, you can simply select Data File. > > > > In your case, you can go to database -> set location to convert from > > using > > > > OLE DB to using Data File.
> > > > > Calvin, > > > > > What do you mean by "switching to normal data"? > > > > > I added the line > > > > > Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" > > > > > Before > > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > > and now I get a "No rowset was returned for this table, query, or > > > > > procedure." error followed by "Error detected by database DLL". > > > > > Any suggestions? > > > > > Thanks in advance, > > > > > Marc
> > > > > > Did you design your report based on OLE DB connection or ADO > > connection? > > > > > > If you don't mind switching to normal Data File (i.e., Access > > database > > > > in > > > > > > your case), you simply have to set Location property of each > > > > DatabaseTable > > > > > > object to the full path of the mdb file.
> > > > > > > Hi there, > > > > > > > I have VB6 Front End with a non-secured Access 2000 Back End. > > > > > > > I have created several reports on CR 8.5 that are pointing to the > > Back > > > > > End > > > > > > > using OLE DB. > > > > > > > On my developing machine (W2K Pro) I can display the reports and > > so > > > > far > > > > > > > everything works great. > > > > > > > Now, when I do the installation on a client machine (Win 98 SE) > > the > > > > > > reports > > > > > > > cannot be displayed and I get the "Server has not yet been opened" > > > > > > message. > > > > > > > Here is the code I'm using. I've tried different combinations > > > > suggested > > > > > on > > > > > > > the KB but so far none worked. > > > > > > > If I store the database on C:\ and hardcode the Front End to point > > at > > > > > > > "C:\TheDB.mdb" then it works but I want the DB to be with the rest > > of > > > > > the > > > > > > > application (Program Files or else). > > > > > > > Here goes the code: > > > > > > > ------------------------------------------------------ > > > > > > > Option Explicit > > > > > > > Dim Appl As New CRAXDRT.Application > > > > > > > Dim Report As New CRAXDRT.Report > > > > > > > Private Sub Form_Load() > > > > > > > On Error GoTo ErrorHandler > > > > > > > Screen.MousePointer = vbHourglass > > > > > > > Me.Caption = pstrReportTitle > > > > > > > Set Report = Appl.OpenReport(App.Path & "\" & pstrReportToOpen) > > > > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > > > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & > > > > "\TheDB.mdb", > > > > > > "", > > > > > > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" > > & > > > > > > > App.Path & "\TheDB.mdb" > > > > > > > Me.CRViewer.ReportSource = Report > > > > > > > Me.CRViewer.ViewReport > > > > > > > Me.CRViewer.DisplayGroupTree = False > > > > > > > Screen.MousePointer = vbDefault > > > > > > > Exit Sub > > > > > > > ErrorHandler: > > > > > > > Screen.MousePointer = vbDefault > > > > > > > MsgBox Err.Description > > > > > > > End Sub > > > > > > > Private Sub Form_Resize() > > > > > > > CRViewer.Top = 0 > > > > > > > CRViewer.Left = 0 > > > > > > > CRViewer.Height = ScaleHeight > > > > > > > CRViewer.Width = ScaleWidth > > > > > > > End Sub > > > > > > > ------------------------------------------------------ > > > > > > > I've tried using App.Path & "\TheDB.mdb" as Server and as Database > > on > > > > > > > LogOnServerEx and made no difference. > > > > > > > Thanks in advance for your help. > > > > > > > Marc
|
Sat, 16 Apr 2005 19:18:24 GMT |
|
 |
Al Emer #12 / 12
|
 Yet again "Server has not yet been opened"
You need to print a copy of the current report from Crystal Reports, then delete the original .rpt file and start over. When you create a new report, the Data Explorer will appear. Double click on "Database Files". If the file you want doesn't appear in the expanded tree, double click on "Find Database File". The "Open" dialog will appear. Then navigate to the folder where the database you want resides and double click on the file and select the tables and/or queries that you want to use in the report. for viewing/printing the report after it's been created, I use ReportViewer.dll which I created in VB5 a few years ago. I'll send you a copy of the .dll and the source code. HTH Al Quote:
> Congrats Al, > I'm still busting my head with this issue. > Could you post a snippet with the code you are using to connect to CR? > Thanks, > Marc
> > LO AND BEHOLD! > > I did as you suggested to Marc Llenas and everything works perfectly. > > Why all the {*filter*}in the KB and newsgroups when your one-sentence answer > > did it? > > CW FOR PRESIDENT! He's gotta be better than the pack of bowel babies > > we're gonna have to choose from in '04. <G> > > Al
> > > You can always redesign your report - which is certainly more preferable > > > than {*filter*}.
> > > > When I go to database -> set location the "Same As Report" option is > > > > disabled. > > > > Any further suggestions? I'm considering {*filter*}. > > > > Al
> > > > > When you design a report, you get to choose the types of the data > > > sources. > > > > > For access database, you can simply select Data File. > > > > > In your case, you can go to database -> set location to convert from > > > using > > > > > OLE DB to using Data File.
> > > > > > Calvin, > > > > > > What do you mean by "switching to normal data"? > > > > > > I added the line > > > > > > Report.Database.Tables(1).Location = App.Path & "\TheDB.mdb" > > > > > > Before > > > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & "\TheDB.mdb" > > > > > > and now I get a "No rowset was returned for this table, query, or > > > > > > procedure." error followed by "Error detected by database DLL". > > > > > > Any suggestions? > > > > > > Thanks in advance, > > > > > > Marc
> > > > > > > Did you design your report based on OLE DB connection or ADO > > > connection? > > > > > > > If you don't mind switching to normal Data File (i.e., Access > > > database > > > > > in > > > > > > > your case), you simply have to set Location property of each > > > > > DatabaseTable > > > > > > > object to the full path of the mdb file.
> > > > > > > > Hi there, > > > > > > > > I have VB6 Front End with a non-secured Access 2000 Back End. > > > > > > > > I have created several reports on CR 8.5 that are pointing to > the > > > Back > > > > > > End > > > > > > > > using OLE DB. > > > > > > > > On my developing machine (W2K Pro) I can display the reports > and > > > so > > > > > far > > > > > > > > everything works great. > > > > > > > > Now, when I do the installation on a client machine (Win 98 > SE) > > > the > > > > > > > reports > > > > > > > > cannot be displayed and I get the "Server has not yet been > opened" > > > > > > > message. > > > > > > > > Here is the code I'm using. I've tried different combinations > > > > > suggested > > > > > > on > > > > > > > > the KB but so far none worked. > > > > > > > > If I store the database on C:\ and hardcode the Front End to > point > > > at > > > > > > > > "C:\TheDB.mdb" then it works but I want the DB to be with the > rest > > > of > > > > > > the > > > > > > > > application (Program Files or else). > > > > > > > > Here goes the code: > > > > > > > > ------------------------------------------------------ > > > > > > > > Option Explicit > > > > > > > > Dim Appl As New CRAXDRT.Application > > > > > > > > Dim Report As New CRAXDRT.Report > > > > > > > > Private Sub Form_Load() > > > > > > > > On Error GoTo ErrorHandler > > > > > > > > Screen.MousePointer = vbHourglass > > > > > > > > Me.Caption = pstrReportTitle > > > > > > > > Set Report = Appl.OpenReport(App.Path & "\" & > pstrReportToOpen) > > > > > > > > Report.Database.Tables(1).SetLogOnInfo App.Path & > "\TheDB.mdb" > > > > > > > > Report.Database.LogOnServerEx "p2soledb.dll", App.Path & > > > > > "\TheDB.mdb", > > > > > > > "", > > > > > > > > "", "", "OLE DB", "Provider=Microsoft.Jet.OLEDB.4.0; Data > Source=" > > > & > > > > > > > > App.Path & "\TheDB.mdb" > > > > > > > > Me.CRViewer.ReportSource = Report > > > > > > > > Me.CRViewer.ViewReport > > > > > > > > Me.CRViewer.DisplayGroupTree = False > > > > > > > > Screen.MousePointer = vbDefault > > > > > > > > Exit Sub > > > > > > > > ErrorHandler: > > > > > > > > Screen.MousePointer = vbDefault > > > > > > > > MsgBox Err.Description > > > > > > > > End Sub > > > > > > > > Private Sub Form_Resize() > > > > > > > > CRViewer.Top = 0 > > > > > > > > CRViewer.Left = 0 > > > > > > > > CRViewer.Height = ScaleHeight > > > > > > > > CRViewer.Width = ScaleWidth > > > > > > > > End Sub > > > > > > > > ------------------------------------------------------ > > > > > > > > I've tried using App.Path & "\TheDB.mdb" as Server and as > Database > > > on > > > > > > > > LogOnServerEx and made no difference. > > > > > > > > Thanks in advance for your help. > > > > > > > > Marc
|
Sun, 17 Apr 2005 05:41:46 GMT |
|
|
|