打印统计数据

CrossTableBuilder和CrossTableBuilder提供了强大的统计功能。
在默认情况下,这两个类都会生成一个Table,用于显示统计结果。
有的时候,我们仅仅希望打印统计结果,而不希望统计结果以Table的形式显示在界面中。

这两个类的Build方法都有一个可选参数,如果设为True,将只生成一个临时的DataTable,而不生成Table。
所以当我们只想打印统计结果的时候,可以参考下面的代码:

Dim dt As DataTable
Dim
g As New GroupTableBuilder("统计表1", DataTables("订单"))
g.Groups.AddDef(
"产品")
g.Totals.AddDef(
"数量")
dt = g.Build(
True)
Dim
doc As New PrintDoc
Dim
rt As New prt.RenderTable
Dim
Count As Integer = 0
For
Each Col AS DataCol In Dt.DataCols
    rt.Cells(
0,Count).Text = Col.Name
    For
r As integer = 0 To dt.DataRows.Count - 1
        rt.Cells(r +
1,Count).Text = dt.DataRows(r)(Col.Name)
    Next

    Count = Count +
1
Next

rt.Style.Gridlines.All = New prt.Linedef(Color.Gray)
rt.CellStyle.Spacing.All =
1
rt.Rows(
0).Style.TextAlignHorz = prt.AlignHorzEnum.Center
doc.Body.Children.Add(rt)
doc.Preview()


本页地址:http://www.foxtable.com/webhelp/topics/1624.htm