水晶报表动态设置数据源出错。。。。

zhuixing 2003-08-01 10:14:57
我在vb6中建立了水晶报表,但是出错提示"实时错误9,下标越界"

Dim Report As New CrystalReport1
dim rs as New ADODB.Recordset

rs.open "Select * from tablename","DSN=dsnname;UID=sa;PWD=;".adOpenStatic
Report.DataBase.SetDataSource=rs ----出错处
Report.DataBase.Verify
CRViewer1.ReportSource = Report
CRViewer1.ViewReport
CRDesignerCtrl.ReportObject = Report

该错误如何解决?
我在建立水晶报表时,该不该在其中固定的设定数据源和表?
...全文
155 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
kqh0319 2004-03-25
  • 打赏
  • 举报
回复
up
zhuixing 2003-08-06
  • 打赏
  • 举报
回复
顺便问一句,建立了与数据源的连接,你指定表了吗?可否不指定特定的表,这样不就可以用一个

报表来打印多个表了吗
cliving 2003-08-06
  • 打赏
  • 举报
回复
应该使用Report.DataBase.SetDataSource rs

问题出在水晶报表设计器上。如果设计器是空的,就会提示“下标越界”的错误。如果在设计器中建立了与数据源的连接,再通过report.DataBase.SetDataSource rs将rs传给水晶报表设计器,就不会有错误。

但在水晶报表设计器中也要单独设立与数据源的连接,就显得不是很灵活。不如datareport加个text控件,再设置datasource属性,就能接受rs传来的字段值。但是水晶报表就不行。
我在http://expert.csdn.net/Expert/topic/2103/2103703.xml?temp=.5258905里主贴提问这个问题,没有的到回答。

希望我们都能解决这个问题。

cliving 2003-08-06
  • 打赏
  • 举报
回复
程序代码里应该用:
Report.DataBase.SetDataSource rs

问题出在水晶报表设计器上,它是空的,没有和数据源连接。就会出现“下标越界”的错误提示。如果水晶报表设计器也建立了和数据源的连接,程序中再调用Report.DataBase.SetDataSource rs,就可以把rs记录集传过去。

但水晶报表设计器也要独立设置与数据源的连接使得程序不是很灵活。不如datareport加个text控件,设置datasource属性就能接受动态rs字段属性了。

水晶报表设计器如何能方便地接受rs属性,这是问题的关键。我也百思不得其解。我在http://expert.csdn.net/Expert/topic/2103/2103703.xml?temp=.7906763中提出了这个问题,一直没有得到解答。希望能得到这个问题的专家解释。
zhuixing 2003-08-04
  • 打赏
  • 举报
回复
to Cocoky 我单步运行,调试 rs.RecordCount=11,所以是不是就是连接没问题啊
但是还提示 实时错误9,下标越界
Report.DataBase.SetDataSource rs
前提我建立的是一个空的模块的水晶报表,没设置任何表和数据源
Cocoky 2003-08-04
  • 打赏
  • 举报
回复
Report.DataBase.SetDataSource rs
还有你的连接字符串好象有问题
无须固定设置数据源可动态改变
zhuixing 2003-08-04
  • 打赏
  • 举报
回复
这些程序在我建立水晶报表时如果设置ODBC和打开的表的字段时
它就不会出错了,而且数据源也是你打开的那一部分数据。
而我主要想就建一个空白的水晶报表,as a Blank report 的选项,
这样所有的报表,不就可以成为一个了吗,有没有这样的高手,希望指点一下
zhuixing 2003-08-01
  • 打赏
  • 举报
回复
to :liaoguohuan(babyking) 他说"参数不可选"
liaoguohuan 2003-08-01
  • 打赏
  • 举报
回复
set Report.DataBase.SetDataSource=rs
zhuixing 2003-08-01
  • 打赏
  • 举报
回复
Report.DataBase.SetDataSource rs ----出错处 ,没加=号

807

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧