Rave 报表 和 Ado (100分)

  • 主题发起人 主题发起人 ljlwater
  • 开始时间 开始时间
L

ljlwater

Unregistered / Unconfirmed
GUEST, unregistred user!
RvDatasetConnection 好象对 Ado 的支持不好
我用RvDatasetConnection连接了一个AdoQuery,但是在RAVE里建Direct Dataview 时
总是出现"A component named DataView1 already exists ." ,其实这是第一个Dataview!
随后建立的 DataView1 中就只有一个Field,往往就是AdoQuery 中的第一个 Field
各们同位有什么经验,请不啬赐教!
我用的是 Delphi 7 , Rave 5
 
d7没有这个问题
 
我的正是D7
 
我对Dataview1 进行Refresh 时 也是这样
"A component named DataView1 already exists "
 
我也用ado,从没遇到过
 
没有碰到过这样的问题
 
http://expert.csdn.net/Expert/topic/1303/1303444.xml?temp=.7489588
这个问题的根源既然是rave中dataview对象的字段名不支持中文,dataview对象的字段名是系统自动生成的,其格式为:dataview对象名+字段名的别名,其中字段名的别名不支持中文,如果没有指定字段的别名,那么默认的别名是字段名,例如:dataview1的数据源用两个字段:name,telno那么dataview1中将生成两个字段分别为:dataview1name,dataview1telno,如果你用了中文的字段名,又没有指定字段的别名,那么系统将用dataview1给字段命名,这就有两个同名的dataview1(一个是dataview对象,另一个是dataview1中的字段),这就是上面的问题.
解决方法:
在rvdatasetconnection中的fieldaliaslist属性中设置字段的别名,
例如:姓名=a,其中"姓名"为字段名,"a"为字段的别名,设置字段的别名后,
在dataview中的字段名将是dataview1a,这样就不会再出现两个同名的
dataview1的情况.
 
我也碰到了同样问题,关注!!!
并且,我用的是ACCESS,加密了的ACCESS,这也带来了难度。的确,好象用英文字段时
这问题可解决。
 
将字段改为英文变可以了!!!!
 
问题解决了!
正如qxj所说
都是汉字惹的祸,Rave应该要考虑这个问题的
在rvdatasetconnection中fieldaliaslist属性中设置字段的别名为英文即可
 
接受答案了.
 

Similar threads

回复
0
查看
1K
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部