CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  数据库(包含打印,安装,报表)

水晶报表数据库验证(使用与设计时候不同数据库名称,提示找不到对应表名称)

楼主Scarroot(每天一贴,把分用完.)2006-03-18 17:38:27 在 VB / 数据库(包含打印,安装,报表) 提问

最近使用水晶报表,设计时候数据库名称为(smsd),设计rpt文件的数据源是利用存储过程生成的。  
  当在不同服务器上使用不同数据库名称,就会提示在sysdatabase找不到smsd......表的名称;  
  但是在不同服务器中使用相同数据库名称就会正常运行;以为是连接表的连接还是指向设计时候的连接,但是为什么服务器名称,用户名称,密码都是对的,惟独数据库没有更新。  
   
   
  如果从新验证数据库利用   database.verify   这个方法老是会弹出对话框。提示后可以正常运行。但我不要对话框不要弹出。有什么方式?  
   
  有没有其它方式验证数据库,更新新的连接。  
   
   
  以下是调用过程:  
  Public   Function   Report(ReportName   As   String,   ArraryGet   As   Variant)   As   CRAXDDRT.Report  
  On   Error   GoTo   Err_Handle  
  Dim   AppRpt   As   CRAXDDRT.Application  
  Dim   rpt   As   CRAXDDRT.Report  
  Dim   Mint   As   Integer  
  Dim   tablecoleection,   table,   connproperty,   subreport,   rptsection,   rptobject   As   Variant  
  Set   Report   =   Nothing  
  Set   Report   =   New   CRAXDDRT.Report  
  Set   AppRpt   =   Nothing  
  Set   AppRpt   =   New   CRAXDDRT.Application  
  Set   rpt   =   Nothing  
  Set   rpt   =   New   CRAXDDRT.Report  
   
  Set   rpt   =   AppRpt.OpenReport(App.Path   &   "\"   &   "Report"   &   "\"   &   ReportName,   1)  
  rpt.FieldMappingType   =   crEventFieldMapping  
  rpt.EnableParameterPrompting   =   False  
   
  Set   tablecoleection   =   rpt.Database.Tables   ‘更新报表文件所有表的连接信息  
  Set   table   =   Nothing  
  For   Each   table   In   tablecoleection  
  Set   connproperty   =   table.ConnectionProperties("data   source")  
          connproperty.Value   =   g_strServerName         '服务器名称  
  Set   connproperty   =   table.ConnectionProperties("user   id")  
          connproperty.Value   =   g_strUserName             用户名称  
  Set   connproperty   =   table.ConnectionProperties("password")  
          connproperty.Value   =   g_strPassword             '用户密码  
  Set   connproperty   =   table.ConnectionProperties("initial   catalog")  
          connproperty.Value   =   g_strDataBaseName     '数据库名称  
  Next  
   
  ’向存储过程传递参数值  
  For   Mint   =   0   To   Int(UBound(ArraryGet)   /   2)  
            rpt.ParameterFields.GetItemByName(Trim(ArraryGet((Mint   *   2)))).AddCurrentValue               (ArraryGet((Mint   *   2)   +   1))  
  Next  
   
  Set   Report   =   rpt  
  Set   rpt   =   Nothing  
  Exit   Function  
  Err_Handle:  
  ShowMsg   err.Description  
  End   Function 问题点数:50、回复次数:3Top

1 楼xihongjian(迷失方向的小鸟)回复于 2006-03-19 09:16:15 得分 50

不太会.顶下。Top

2 楼Scarroot(每天一贴,把分用完.)回复于 2006-03-20 08:27:28 得分 0

dTop

3 楼Scarroot(每天一贴,把分用完.)回复于 2006-03-20 20:09:07 得分 0

dTop

相关问题

  • 救命:我的水晶报表连接数据库时提示登入失败,请问是什么问题?
  • 如何给水晶报表设置数据库连接?
  • 水晶报表的数据库登录问题!
  • !!!!!!!水晶报表连接带密码的access数据库问题!!!!!!!!!!
  • 水晶报表9.0 不能连接异地数据库问题
  • 水晶报表访问数据库登录失败
  • 水晶报表怎么登录数据库啊?
  • 急呀!水晶报表动态时连接数据库
  • 水晶报表数据库SQL语句问题
  • 水晶报表的参数和数据库登录页面

关键词

  • 数据库
  • 验证
  • 服务器
  • 连接
  • report
  • craxddrt
  • connproperty
  • 名称
  • apprpt
  • rpt

得分解答快速导航

  • 帖主:Scarroot
  • xihongjian

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo