VB程序打印水晶报表的典型方法2
2024-07-21 02:24:54
供稿:网友
 
描述:
  本文介绍另一种流行的一种vb程序打印水晶报表的方法.
 
环境: ms sql server 2000  /  vb6  /  crystal report8.5
 
步骤
1: 建立odbc连接
 
2: 创建一个为crystal report报表文件
 
3: 加载microsoft activex data objects library 至项目的references 中
 
4. 创建vb 设计(designer) , 通过open existing file的方式把crystal report报表文件加载进来.
   如果报表条件从画面输入需要写一些简单程序, 举例
dim adors as adodb.recordset
private sub report_initialize()
 
sql$ = "select *  from view_xxxx where xxxx "
‘根据画面,重新获得where条件’
 
set adors = createobject("adodb.recordset")
adors.open sql$, "provider=msdasql.1;persist security info=false;data source=odbc_sales", adopenkeyset, adlockbatchoptimistic
database.setdatasource adors
end sub
 
private sub report_terminate()
    set adors = nothing
end sub
 
5: 创建vb画面(form) ,加入crystal report viewer控件
   一些简单程序, 举例
dim rptreportname as rpt_reportname ‘rptreportname is name of designer
   private sub form_load()
        crviewer1.reportsource = rptreportname 
       crviewer1.viewreport
end sub
 
总结:
   这个方法实现了vb程序对水晶报表的控制, 但是在可扩展性方面不如前一种有效,任何报表的格式改动,需要编译整个项目l