彩票走势图

DevExpress Xtrareport报表控件的分组功能探秘

原创|其它|编辑:郝浩|2012-09-04 15:37:23.000|阅读 4422 次

概述:对于xtrareport的分组功能进行了详细的探讨,对于希望深入了解xtrareport的人群有很大的帮助。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

转自csdn 作者cathy_girl
第一次使用Xtra的第三方控件

确实做的很好看~

尝试使用了一下XtraReport控件的分组功能

方法如下:

添加一个名为XtraReport1的报表作为主报表

界面上Detail中放置主表显示内容的表格,再插入一个Subreport,在属性面板将其ReportSource属性设为子表的类名称

1. Private Sub XtraReport1_BeforePrint(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintEventArgs) Handles MyBase.BeforePrint
2.
3. Dim conn As New SqlClient.SqlConnection("server=DBServer;User ID=sa;Password=sa;database=test;min pool size=4;max pool size=4;packet size=3072;timeout=900")
4.
5. conn.Open()
6.
7. Dim strSql As String
8. strSql = "select wound_id as woundid,encounter_id as username "
9. strSql += "from wound "
10.
11.
12. Dim da As New SqlDataAdapter(strSql, conn)
13. da.Fill(dsTest, "Test")
14.
15. Me.DataSource = dsTest.Tables(0)
16. End Sub

Detail加载事件,加载一行,向子表传递一次参数

XrSubreport1为在主报表中添加的XrSubReport

SubReport1为向工程中加入的另一报表作为子报表来使用

在属性设置框中设定XrSubreport1的ReportSource为SubReport1

但是subRpt = Me.XrSubreport1.ReportSource这句不能省,否则不能正确的显示子报表

dsTest.Tables(0).Columns(0).ToString()为需要传入子报表的参数
1. Private Sub Detail_BeforePrint(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintEventArgs) Handles Detail.BeforePrint
2. Dim subRpt As New SubReport1()
3. subRpt = Me.XrSubreport1.ReportSource
4. subRpt.getDetail(GetCurrentColumnValue(dsTest.Tables(0).Columns(0).ToString()))
5. End Sub

在子表界面只保留Detail,放置显示内容的表格

并在子报表的程序文件中添加getDetail方法

1. Public Sub getDetail(ByVal strWoundId As String)
2. Dim dsTest As New DataSet()
3. Dim conn As New SqlClient.SqlConnection("server=DBServer;User ID=sa;Password=sa;database=test;min pool size=4;max pool size=4;packet size=3072;timeout=900")
4.
5. conn.Open()
6.
7. Dim strSql2 As String
8. strSql2 = "select WOUND_ID,WOUND_CONTENT_ID,WOUND_GRADE,EXUDATE_QUALITY "
9. strSql2 += "from wound_record "
10. strSql2 += "where WOUND_ID=" & strWoundId
11. Dim da2 As New SqlDataAdapter(strSql2, conn)
12. da2.Fill(dsTest, "Report2")
13. Me.DataSource = dsTest.Tables(0)
14. conn.Close()
15.
16. End Sub

这样就可以啦~

然后拉一个窗体run一下主报表就可以看到我们做的主子报表

Dim testReport As New XtraReport1()
testReport.ShowPreview()



标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:转载

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP