报表制作简化版

前言:   

   机房收费系统无论是重构还是第一版,都用到了报表,为什么在一个系统中要添加报表呢?报表的作用是什么呢?报表百科。我理解的报表是:向上级报告情况的一个媒介,没有固定的格式。之前在项目中,我们真正给企业做过一次报表,是以导出word的形式生成的,大概格式如图:

                      

   这次在自己的《机房收费系统》中设计报表,我使用的VS中自带的报表制作工具:ReportViewer。之前看前辈的博客,大家用的方法大多是以绑定数据源的方式,将数据库中的信息显示到报表中,制作过程相当精彩。详情参考博客:

             http://blog.youkuaiyun.com/zlt995768025/article/details/50887984

    http://blog.youkuaiyun.com/caoyujiao520/article/details/50925850

   看了前辈的博客,发现了一个问题,控件ReportViewer和控件Datagridview给人的感觉是一样的,连接数据库的步骤也几乎是一样的。我们可以直接通过将Datagridview绑定数据源的方式显示数据库中的信息,也可以通过从数据库中查找,再将一条一条数据返回的形式显示数据库中的信息。那么,ReportViewer是不是也有另一种显示数据库信息的方式呢?我们能不能通过三层架构,将信息返回到U层后,直接把查到的数据赋值给报表中的变量,让其显示呢?

   实验证明,一切都是有可能的!

引用:

Imports Microsoft.Reporting.WinForms

新建报表:

                                                                    

      这一步和前辈的步骤是一样的。

设置参数:

                                                                  

        参数,个人理解是传递数据的变量


相关代码:

 '显示报表信息
            '设置嵌入报表的资源的名称;
            ReportViewer1.LocalReport.ReportEmbeddedResource = "UI.Report1.rdlc"
            '清空报表数据源;
            ReportViewer1.LocalReport.DataSources.Clear()
            '给参数赋值;

            '给参数赋值  
            Dim params1() As ReportParameter = {New ReportParameter("ManagerId", ManagerId),
                                                New ReportParameter("DateNow", DateTime.Now.ToString("yyyy-MM-dd")),
                                                New ReportParameter("SaleCount", SaleCountSum),
                                                New ReportParameter("RefundCount", RefundCountSum),
                                                New ReportParameter("RechargeSum", RechargeSum),
                                                New ReportParameter("RefundSum", RefundSum)}
            '传递报表中的参数集合  
            ReportViewer1.LocalReport.SetParameters(params1)
            Me.ReportViewer1.RefreshReport()

在这里不需要用代码连接数据源和数据库,只需要还按照以前的查询语句,把从数据库中查到的数据赋值给参数就可以了

成果图:

                     

                        

           大家可以根据自己的想象力自行美化,添加图片或者线条,我在这里就不展示了。(如果有看不懂的地方,请留言,编者会为大家一一解答)

小结:

    1、报表制作是一个小马过河,自己探索的过程,深浅,难易,只有自己尝试过了才知道。

    2、即使走在别人后面,我们也可以另辟蹊径,勇于探索是不分早晚的。

评论 35
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小王师傅66

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值