系统中报表的使用

 

报表这块,由于比较生疏,都是自己从网上下载控件,然后看下载后的小例子,现学现卖的。

 下面是应用中的一个小模块:

Dim WithEvents Report As grproLibCtl.GridppReport ’‘声明report具有报表控件的事件

Private Sub cmdPrint_Click()  '打印报表
'因为报表对象的 Print 方法名与 VB 内部定义有冲突,所以要用中括号括起来   

 Report.[Print] (True)
End Sub

Private Sub cmdPrintPreview_Click()  '打印预览
    Report.PrintPreview (True)
End Sub

Private Sub Form_Load()

    Set Report = New grproLibCtl.GridppReport    '实例化一个报表
    '载入报表模板文件
    Report.LoadFromFile (App.Path & "\Checkweek.grf")

  ‘设置数据连接串

    Report.DetailGrid.Recordset.ConnectionString = "Provider=SQLOLEDB;Data Source=192.168.24.58;Initial CataLog=charge_my;UID=sa;PWD=123456"
   
    GRDisplayViewer1.Report = Report '查看报表
    GRDisplayViewer1.Start '显示报表
   
End Sub

'初始化,将DTPicker取得的时间转化成报表事件中字符串

'DTPicker是显示日期的控件

Private Sub Report_Initialize()
    Report.ParameterByName("BeginDate").AsString = Format(DTPicker1.Value, "yyyy-mm-dd")
    Report.ParameterByName("EndDate").AsString = Format(DTPicker2.Value, "yyyy-mm-dd")
End Sub

 

如果不用DTPicker控件的话,方法也可以

 

Dim withEvents Report As grproLibCtl.GridppReport   ‘声明report具有报表控件的事件

Dim starttime As Date

Dim endtime As Date

Private Sub cmdpreview_Click()

  Report.PrintPreview (True)   ‘报表预览

End Sub

Private Sub cmdprint_Click()

Report.[Print] (True)           ‘打印报表

End Sub

Private Sub cmdrefresh_Click()

Dataview.Stop                              ‘刷新报表

Set Report = New grproLibCtl.GridppReport      ‘实例化一个报表

Report.LoadFromFile (App.Path & "\Checkweek.grf")‘加载报表文件

Report.DetailGrid.Recordset.connectionstring = "filedsn=andy.dsn;UID=sa;pwd=123456"

‘建立连接,也可以在创建报表的时候

Report.DetailGrid.Recordset.QuerySQL = "select * from daily_account where daily_time between '" & starttime & "' and '" & endtime & "'"  ‘报表查看的内容

Dataview.Report = Report      ‘查看报表

Dataview.Start                ‘开始显示

End Sub

以上两种方法,其实相似的很,主要以掌握其实用为目的。

对于“dim withevents xx as adodb.recordset<br />”的理解:

其实这个声明,也没有什么难的。WithEvents 关键字,指定变量xx将用于处理对象的事件。可以通过提供类名来指定对象类型,该类是创建这个xx对象的类。<br />说明 xx 是一个用来响应由 ActiveX 对象触发的事件的对象变量。只有在类模块中才是合法的。使用 WithEvents,可以声明任意个所需的单变量,但不能使用 WithEvents 创建数组。New 和 WithEvents 不能一起使用。

转载于:https://www.cnblogs.com/liu765023051/archive/2011/08/22/2813664.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值