在上一篇博客用VB做报表(一)当中我们介绍了用锐浪报表设计器做一个简单报表的过程,本篇将揭开如何使用VB连接报表的神秘面纱。
首先,安装Grid++Report 5.0报表设计器,具体过程如破解等在此不做涉及。然后打开VB程序,通过“Ctrl+T”快捷键调出“部件”窗口,勾选“Grid++Report Engine5.0 Type Library”,然后在工具箱窗口中会自动添加两个小部件,按照下图鼠标箭头提示在窗体中添加一个GRDisplayViewer1控件:
然后,再添加其他实际所需的控件。本例中实现三个功能:① 刷新 ② 打印 ③ 打印预览。
最后就是添加代码了。显示报表数据的结果如上图,其相关代码如下:
Dim WithEvents Report As grproLibCtl.GridppReport '实例化报表
Private Sub Form_Load() Dim strsql As String,strMsg As String strsql = "select * from checkday_info where date='" & Format(Date,"yyyy-mm-dd") & "'" Set Report = New grproLibCtl.GridppReport '实例化模版 Report.LoadFromFile (App.Path & "\checkday.grf") '加载模版 Report.DetailGrid.Recordset.ConnectionString = ConnectString() '连接数据源 Report.DetailGrid.Recordset.Querysql = strsql '通过SELECT查询创建记录集 GRDisplayViewer1.Report = Report GRDisplayViewer1.Start '开始打印 End Sub对于“打印”:
Private Sub cmdPrint_Click() Report.[Print] (True) '打印,因为报表对象的print方法名与vb的内部定义有冲突所以要用中括号 End Sub对于“打印预览”:
Private Sub cmdPreview_Click()
Report.PrintPreview (True) '打印预览
End Sub
对于“刷新”:
Private Sub cmdRefresh_Click() GRDisplayViewer1.Refresh '刷新 End Sub效果图分别如下:
打印
打印预览
注意:1、最好把做好的报表放到VB程序目录下,方便以后打包发布,防止出现找不到路径的问题。
2、查找数据的时候代码一定要写对,否则,一个空格都有可能出现错误。
3、由于我的电脑上没有连接打印机,所以只是选择发送到Onenote中。