zoukankan      html  css  js  c++  java
  • 个人重构机房收费系统之报表

        在开始计划做机房收费系统的时候,就觉得报表,上下机,组合查询会放在最后完成,因为我认为这是机房收费系统的重难点,报表是因为涉及到外部插件的调用,组合查询需要严谨的逻辑思维,上下机因为涉及的表和数据很多。

          意料之中我把几个都放在了最后做,暑假开学也一段时间了,而我只完成了组合查询和报表,在做报表的时候还遇到了很多问题。是整个的情绪都很低落,到现在还有一个问题没有解决,不过先和大家分享一下我的实现过程吧

        首先应该先下载Grid++ Report 报表设计器,进行安装,以便于对报表的设计。

    先进行报表的设计,这些应该都不陌生,因为在vb做收费系统的时候都有涉及到,不过多的介绍,需要做的就是要插入:页眉,页脚,报表头,报表尾,明细网格。在相应的位置插入静态框,综合文字框,系统变量框,参数等。

    这里想详细说的是明细网格,系统变量,和参数


         明细网格是用来盛放查询得到的数据信息的,分为标题行和内容行,如图所示:


    标题行和内容行都是可以自动生成的,在设置完SQL数据库连接和查询语句后,通过Clm(根据字段生成列)可自动获得。获得的标题行和数据库字段一致可通过双击改成汉字。


         系统变量,在系统变量中有很多系统变量:这个表格中用到的是当前日期时间变量,还有页数,页号,行号等,作用就是可以自动获得所选择的类型量,相当于一个函数,例如当前日期时间变量,就会自动生成当前日期时间,是集成了的参数的作用。


     


         还有要说的就是参数的插入,因为很多时候是无法通过系统变量来获得值得,所以在这里需要插入参数以便于可以获得更多类型的数据;例如插入参数:


    这时候就要考虑的是,该如何使参数获得值呢?!不用担心,这时候就要考虑到vb.netGrid++Report的交互。首先在工具箱对Grid++Report添加COM引用,然后在需要使用该控件的地方,添加引用“Grid++Report Designer5.0 Type Library” 不做详细介绍,跟vb的时候差不多。


    最主要的是获得参数的值,还用刚插入的参数StartDate说明;只要我们在vb.net中写上:

     grReport.ParameterByName("StartDate").Value= Format(dtpStartDate.Value, "yyyy-MM-dd")

    就可以将控件中的值赋给startDate参数,很简单也很方便。


    再有一点儿需要提到的就是:在VB中用app.path表示同名文件夹下,但是在vb.net中却不是这样表达,而是用:

    grReport.LoadFromFile(Environment.CurrentDirectory& "GatherBill.grf")代替


    但是在过程中遇到一个问题,还没有解决,贴在在这里谁有好方法可以留言。

    在第二次加载Grid++Report控件的时候出现(找了一些方法,暂时还没解决)


  • 相关阅读:
    转载JGTM' 2004[MVP]有关AOP的三篇精彩文章
    新增Skin
    发表文章的要求
    自定义UserControl的属性为什么不能在设计时显示在属性窗口中
    .Text学习笔记(一)
    访问类的private或internal成员[转载]
    博客园对发表文章的一些要求
    博客园成立了管理团队
    推荐一篇介绍.NET MetaData的文章
    让大家久等了:终于完成了AOP尝鲜系列之第三部[JGTM'2004 [MVP]文章转载]
  • 原文地址:https://www.cnblogs.com/aukle/p/3215163.html
Copyright © 2011-2022 走看看