首页 > 开发 > 综合 > 正文

VB程序打印水晶报表的典型方法1

2024-07-21 02:24:54
字体:
来源:转载
供稿:网友

描述:

 

  本文介绍流行的一种vb程序打印水晶报表的方法,具有比较好的扩展性.

 

环境:

   ms sql server 2000  /  vb6  /  crystal report8.5

 

步骤

 

1: 建立odbc连接

 

2: 创建一个为crystal report检索数据的过程(procedure)

举例: (通过日期查询总额)

   if exists (select * from sysobjects where name = 'usp_testfjs')

            drop proc usp_testfjs

   go

   create proc usp_testfjs

            @strdate varchar(20)

   as

        select sum(tot_amt) as total_amount

        from trans_header

        where convert(varchar(10),bus_dt,120) = @strdate

   go

 

3. 创建使用procedure的crystal 报表

   步骤和创建一般报表相同,但是注意在选择数据源时,把options中的stored procedures勾上

  

4. 创建vb程序

   注意加入一个水晶报表控件(crystal report control)

   一段最简单的程序:

   例如:

   private sub command1_click()

        dim iret as integer

        crystalreport1.reset  /*reset data*/

 crystalreport1.reportfilename = app.path + "/totalamount.rpt"

/*link the crystal report control with actual rpt file */

        crystalreport1.storedprocparam(0)= format(trim$(dtpicker1.value), "yyyy-mm-dd")

/*assign the parameter*/

        crystalreport1.windowstate = crptmaximized

        crystalreport1.windowtitle = "hello"

        iret = crystalreport1.printreport

/*retrieve the data and display the printpreview screen */

 

总结:

   这个方法实现了水晶报表和vb程序的独立性,用户对于报表格式的改变将被局限于水晶报表的修改范围中. 建议大家采用这种方法.

  

 
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表