报表应该是机房快要结束时一个障碍,因为在此之前我们从来接触过要如何将VB于报表联系起来,所以在做之前我先查找了一些资料,当时看的时候感觉很蒙,不过到自己动手的时候就感觉很简单了。
1.首先是一个报表的简单介绍:
Grid++Report 为报表开发者提供四个外层构件,报表开发人员通过对这四个构件的使用为最终用户提供完善的报表系统。以下是对四个构件对象的简述:
A.报表引擎对象(GridppReport)一个COM Automation。定义报表的模板数据,在生成报表时存贮报表记录数据,对数据进行加工处理。生成打印页面,输出打印页面到打印机。
B.查询显示器(GRDisplayViewer)
一个 ActiveX Control。在使用时要关联一个报表主对象。开始运行时向报表主对象发出生成数据请求,然后本构件显示报表主对象生成的数据,本对象为最终用户提供了完善的查看数据的操作。报表开发者通过对本对象交互事件的响应,可以为最终用户提供可交互的报表查询功能。例如通过对汇总报表的明细网格内容格的双击事件的响应,打开对应的明细报表,达到从汇总报表到明细报表的穿透查询。
C.打印查看器(GRPrintViewer)
一个 ActiveX Control。在使用时要关联一个报表主对象。开始运行时向报表主对象发出生成数据请求,并生成打印页面数据,然后本构件显示生成的打印页面,并且提供其它相应的页面操作与打印操作。报表开发人员可以通过提供外部操作界面来执行构件接口的方法与属性,为最终用户提供报表打印预览界面。
D.报表设计器(GRDesigner)
一个 ActiveX Control。在使用时要关联一个报表主对象。由三个窗口组成:其一是报表布局窗口,主要可以在其中设置报表显示元素的大小、位置、显示顺序等。其二是属性编辑窗口,可以在其中查看与修改选中对象的属性值。其三是对象浏览窗口,显示出所有报表元素对象,可以在此窗口中对报表元素进行选中操作。构件接口提供执行各种设计任务的动作方法,报表开发人员可以通过提供外部操作界面执行动作方法,为最终用户提供运行时的自定义报表设计器。
2.制作报表的过程:
(1).文件——新建向导
(2).点击下一步
(3)创建数据库连接串
密码一定要保存,否则就会出现:
点击测试:
(4)下面就跟着步骤一步一步的设置就OK了
(5)参数的设置
插入——综合文字框——右击——插入参数
(6)VB与报表结合
Dim Report As grproLibCtl.GridppReport '实例化变量
'日结账单刷新
Private Sub cmdCheckDay_Click()
Dim txtSQL As String
txtSQL = "select * from CheckDay_Info where Date = '" & Date & " '"
'报表参数设置
Report.ParameterByName("username").AsString = UserName '获取管理员名称
Report.DetailGrid.Recordset.QuerySQL = txtSQL '通过select查询创建记录集
GRDisplayViewer1.Refresh '刷新
'显示报表
GRDisplayViewer1.Start
End Sub
'退出
Private Sub cmdExit_Click()
Unload Me
End Sub
'打印
Private Sub cmdStamp_Click()
Report.[Print] (True)
End Sub
'打印预览
Private Sub cmdStampView_Click()
Report.PrintPreview (True)
End Sub
Private Sub Form_Load()
Dim txtSQL As String
Set Report = New grproLibCtl.GridppReport
Report.LoadFromFile App.Path & "\日结账单.grf" '加载模板
Report.DetailGrid.Recordset.ConnectionString = ConnectString '数据源连接数据库直接调用写好的模块内容
txtSQL = "select * from CheckDay_Info where Date = '" & Date & " '"
'报表参数设置
Report.ParameterByName("username").AsString = UserName
Report.DetailGrid.Recordset.QuerySQL = txtSQL
GRDisplayViewer1.Report = Report '刷新
GRDisplayViewer1.Start '显示
End Sub
总结
:
刚刚接触报表的时候,虽然看了很多师哥师姐的博客,但是还是不知道怎么下手,做出来的结果如何。但是首先还是要先试着去做,在做的过程中我们自然而然的就懂了,就会做了,所以迈出第一步是很重要的。