动态水晶报表的实现

                                         实现基本功能的动态水晶报表

    系统配置:VS2005+内嵌的水表

   

    目的:

         我也是刚接触.net不久,做项目过程中需要设计报表,可一个个的做起来烦啊,原来做过一个vb6的动态报表,用起来还不错,故也想弄一个水表的东东。因为水表接触时间不长,做的也不是很顺手,用了我半个月的时间才弄个大概模样,不当之处还请各位见谅。觉得有用就看看,没用就当没看到吧。

    

   目前实现的功能

        1、报表标题、页码显示格式、纸张大小、纸张方向、边距等的动态修改

        2、报表列标题的动态修改(2行也支持,但是感觉定义麻烦)

              最大允许用户定义40列(内部定义的公式总数决定的,呵呵)

             同时显示的列数必须<=提供的数据表里面的字段数,不让报错

        3、数据部分偷懒了,是和提供的数据表的顺序一致(本来想做两种方式的)

        4、分组头部分

             简单的显示分组名

        5、分组尾部分

              这部分能定义是否显示、以及组的小计,比如计数、求和等

        6、报表尾部分

             这部分能定义是否显示、以及总计信息,比如计数、求和等

 

 调用方法

      

        Dim strSql As String = "select a.EmployeeID,FirstName,Title,LastName,a.Region,a.postalCode,a.country,a.homephone,a.reportsto,CompanyName,ContactName,c.OrderID,ShipCity,ShipPostalCode,ProductID,UnitPrice,Quantity,Discount " & _
                      "from Employees a,Customers b,Orders c , [Order Details] d " & _
                       "where(a.EmployeeID = c.EmployeeID And b.CustomerID = c.CustomerID And c.OrderID = d.OrderID)"
        ds = Getdata(strSql)

        Dim rc As Integer
        Dim aa As New CryClsV1.AutoRepDoc


        rc = aa.CreateRepDoc(Sfile, ds.Tables(0), sInfo)‘Sfile是Ini格式的报表设置文件

                                                                         'sinfo是定义的报表左下角显示的内容
        If rc > 0 Then
            MsgBox(rc)
        Else
            CrystalReportViewer1.ReportSource = aa.ReportDoc
        End If

 

   

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值