VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - CrystaIReports for VB5报表编程经验
发表评论(0)作者:, 平台:, 阅读:19433, 日期:2000-03-12



CrystaIReports for VB5报表编程经验




  由于VB5本身无报表输出工具,因此在开发VB5数据库应用系统时,必须用第三方报表书写器,通常采用VB5的企业版附带的Crystal Reports。在开发时不注意两者的连接关系,经常会出现意想不到的问题,下面是笔者在开发VB5系统中的几点经验:

  1.报表控件的引入

  Crystal Reports不是VB5标准控件,而是Active X控件。使用时,首先要点击“工程→引用”菜单,引出部件窗口,再选Crystal Reports Control 4.6控件。

  2.报表制作

  现象:报表设计时文字已排列整齐,但预览或打印往往出现偏差。

  措施:表名及列头文字不要直接输入文本,而改用“Insert→Text Field”菜单插入文本字段,就可避免以上现象。

  3.数据输出

  现象:在数据输出时易犯错误,是因为在VB5中用SQL语句进行查询,然后打印,目的是想把查询结果输出到报表上,但结果往往仍然是原表中的数据。也就是说Crystal Reports并不认VB5的查询。

  措施:建一个临时表,查询先前删除表中的数据,再把查询结果放入到临时表,再进行预览或打印。

  4.报表控件的使用及路径的指定

  现象:在一个表单中,如果需输出多个报表,放置多个报表控件。打印时会出现“堆栈溢出”这样的致命错误。另外发布给用户时,需要设定任意路径,如果只指定报表名路径,也会出现错误。

  措施:如果在一个表单上要打印多个报表,在打印时先定义数据文件名和报表名,再打印。打印前设定时,不仅要设定报表文件路径,而且还要设定数据库的路径。

  CrystalReport1.datafile(index)=App.path & “数据库名”

  CrystalReport1.reportfilename=App.path & “报表文件名”  

  5.设定预览窗口

  现象:预览窗口太小,用户必须点击最大化按钮才能覆盖整个屏幕。

  措施:

  CrystalReport1.WindowHeight=screen.Height

  CrystalReport1.WindowsHeight=screen.Windth

  CrystalReport1.WindotTop=0

  CrystalReport1.WindowLeft=0

  或者用:

  CrystalReport1.Windo

wState=crptM

aximized (江苏 徐静文)