一种所见即所得报表打印技术研究和实现.docVIP

一种所见即所得报表打印技术研究和实现.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种所见即所得报表打印技术研究和实现

一种所见即所得报表打印技术的研究和实现   [摘 要] 本文介绍在VB编程平台上实现一种财务报表所见即所得打印技术及实现该技术的两种编程方法,研究了两种编程方法的特点及其适应性。   [关键词] VB ;报表程序;ActiveReports   doi : 10 . 3969 / j . issn . 1673 - 0194 . 2010 . 14 . 004   [中图分类号]F270.7;TP311.1 [文献标识码]A [文章编号]1673 - 0194(2010)14- 0011- 02      所见即所得报表打印技术,是财务管理软件的必备功能,也是管理软件开发技术追求的一种风格。如微软公司的办公软件Microsoft Excel的打印工具,就是大家所熟悉的。但把Microsoft Excel的打印工具移植到其他管理软件上的技术复杂,不容易实现。本文提出以VB为编程平台,以Microsoft Office Web Components组件为管理软件前台界面,以第三方控件ActiveReports为打印工具,实现一种类似Microsoft Excel的打印工具风格的财务报表打印技术,并分析实现该技术的两种编程方法的特点,并对其进行比较。      1 技术平台      该所见即所得报表打印技术的开发环境是VB 6.0,前台控件是Spreadsheet电子表格,后台打印控件是ActiveReports,底层数据库采用Microsoft Access,以ADO为数据库接口技术。   1.1技术界面   该所见即所得报表打印技术的前台界面如图1所示。   该界面外观可调,表格的列宽、行高可任意调整,并能对任一列数据进行排序、筛选。   该所见即所得报表打印技术的后台打印工具界面如图2所示。   该打印工具的打印参数可调,如打印份数、页面大小、横打或竖打等可自行设置,显示界面可放大缩小,一键式打印操作。   1.2两种方法   实现该技术的关键是,怎样把前台界面的数据及其关系传递到打印工具界面。根据前台界面数据及其关系的来源不同,本例采用两种方法把前台界面的数据及其关系传递到后台打印工具界面。   第一种方法:前台界面的数据及其关系来自底层数据库MicrosoftAccess的,通过ADO从数据库取出数据后,同时往前台界面和打印工具界面输送。这种方法可靠性高,前台界面和打印工具界面都是重现数据库的数据及其关系,数据及其关系不容易出错,技术成熟。   第二种方法:前台界面的数据来自人机接口(通常是手工输入),则需要把前台界面的数据及其关系往打印工具界面输送,这种方法不如第一种方法的可靠性高。需要将数据与数据关系同时往打印工具输送,并且要一一对应,缺一不可,数据或数据关系其中之一发生错误,都会导致失败,因此这种方法比较烦琐 。      2 相关代码      2.1底层数据库与前台表格连接代码   Dim Con As ADODB.Connection   Dim Rs As ADODB.Recordset   Set Con = New ADODB.Connection   Con.ConnectionString = _   Provider=Microsoft.Jet.OLEDB.4.0 ; _   data source = App.Path \db1.mdb   Con.Open   Set Rs = Con.Execute(select zhaiyao,shuliang,jine,zengjian from TableName Where FieldName = FieldVaLue )   Dim i As Integer   Dim h As Integer   h = 1   Do    For i = 0 To Rs.Fields.Count - 1   Spreadsheet1.Cells(h,1).Offset(1,i).Value=Rs.Fields(i).Value    Next i    Rs.MoveNext    If Rs.EOF = True Then   Exit Do    End If    h = h + 1   Loop   2.2底层数据库与后台打印工具数据连接代码   Dim Con As ADODB.Connection   Dim Rs As ADODB.Recordset    Set Con = New ADODB.Connection    Con.ConnectionString = _   Provider=Microsoft.Je

文档评论(0)

erterye + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档