CR9, RDC and RDO recordset => Crash
From: Stefan Nobis (stefan_at_snobis.de)
Date: 09/21/04
- Next message: Wart: "Re: Null Args or Null DB Data Blows"
- Previous message: Bob Holmes: "Re: Null Args or Null DB Data Blows"
- Messages sorted by: [ date ] [ thread ]
Date: Tue, 21 Sep 2004 16:42:42 +0200
Hi!
I tried to create a simple test application to experiment with
active data. All tutorials and documentation i found refers to RDO
and ADO, but examples are only with ADO.
The ADO version of my application works fine -- the reportviewer
opens and shows the data. If i try to use the RDO version, the
application completely crashes (illegal (read) access,
GPF). I already tried the newest service pack for CR9 but still
the crash occurs.
Any ideas are very welcome!
This is, what i tried:
1) Create a report.ttx file like this:
,----
| X Number 1.5
| Y Number 3.1415489723489789
`----
2) Create a simple report file report.rpt based on the above TTX.
3) Create a simple VB6 application with the RDC reportviewer like
this:
,----[ main.frm ]
| Private Sub Form_Load()
| Dim conn As ADODB.Connection
| Dim rs As ADODB.Recordset
| 'Dim engine As rdoEngine
| 'Dim rdoenv As rdoEnvironment
| 'Dim conn As rdoConnection
| 'Dim rs As rdoResultset
|
| Dim crystal As CRAXDRT.Application
| Dim report As CRAXDRT.report
|
| Dim dbstring As String
| Dim sql As String
| Dim i As Integer
|
| 'dbstring = "DSN=rweora;UID=strabis;PWD=strabis"
| 'dbstring = "DSN=bastelora;UID=bastel;PWD=bastel"
| 'dbstring = "DSN=bastelms;UID=bastel;PWD=bastel"
| 'sql = "SELECT * FROM data"
| dbstring = "DSN=frankfurtjet;UID=Administrator;PWD=RsWyEstems"
| 'dbstring = "DSN=frankfurtora;UID=strabis;PWD=strabis"
| 'dbstring = "DSN=frankfurt;UID=strabis;PWD=strabis"
| sql = "SELECT V.version as x, V.bisversion as y FROM version V"
|
| CRViewer.DisplayBorder = False
| CRViewer.DisplayTabs = False
| CRViewer.EnableDrillDown = False
| CRViewer.EnableRefreshButton = False
|
| ' ADO version
| Set conn = New ADODB.Connection
| conn.CursorLocation = adUseClient
| conn.ConnectionString = dbstring
| conn.Open
| Set rs = New ADODB.Recordset
| rs.Open sql, conn, adOpenStatic, adLockReadOnly
|
| ' RDO version
| 'Set engine = rdoEngine
| 'Set rdoenv = engine.rdoEnvironments(0)
| 'Set conn = rdoenv.OpenConnection("", , , dbstring)
| ''Set rs = conn.OpenResultset(sql, rdOpenDynamic)
| 'Set rs = conn.OpenResultset(sql)
|
| ' Rest is the same for both
|
| 'i = 0
| 'While Not rs.EOF
| ' i = i + 1
| ' rs.MoveNext
| 'Wend
| 'MsgBox "Anzahl: " & i
| 'rs.MoveFirst
|
| Set crystal = New CRAXDRT.Application
|
| Set report = crystal.OpenReport("d:\dev\laboratory\xxx\bastel.rpt")
|
| report.DiscardSavedData
| report.Database.SetDataSource rs 'Crash with RDO, fine with ADO
|
| CRViewer.ReportSource = report
| CRViewer.ViewReport
|
| Do While CRViewer.IsBusy
| DoEvents
| Loop
|
| CRViewer.Zoom 94
|
| rs.Close
| Set rs = Nothing
|
| conn.Close
| Set conn = Nothing
|
| Set crystal = Nothing
| Set report = Nothing
| End Sub
|
| Private Sub Form_Resize()
| CRViewer.Top = 0
| CRViewer.Left = 0
| CRViewer.Height = ScaleHeight
| CRViewer.Width = ScaleWidth
| End Sub
`----
-- Stefan.
- Next message: Wart: "Re: Null Args or Null DB Data Blows"
- Previous message: Bob Holmes: "Re: Null Args or Null DB Data Blows"
- Messages sorted by: [ date ] [ thread ]