文件的报表代码有一些问题,用下面的:
Dim doc As New PrintDoc Dim tb as Table = Tables("订单") Dim ColNames As String() = New String(){"产品", "日期", "数量"} Dim PageRows As integer = 30 '每页打印30行 Dim Pages As Integer = Math.Ceiling(tb.Rows.Count / PageRows) '获得总页数 Dim Sum As Integer For Page As integer = 0 To Pages -1 Dim StartRow As Integer = Page * PageRows Dim EndRow As integer = Math.Min((Page + 1) * PageRows - 1,tb.Rows.Count - 1) Sum = 0 Dim rt As New prt.RenderTable For c As Integer = 0 To ColNames.Length - 1 rt.Cells(0,c).Text = ColNames(c) Next For r As integer = StartRow to EndRow Sum = Sum + tb.rows(r)("数量") For c As Integer = 0 To ColNames.Length - 1 rt.Cells(r - StartRow + 1, c).Text = tb.Rows(r)(ColNames(c)) Next Next rt.Style.Gridlines.All = New prt.Linedef(Color.Gray) doc.Body.Children.Add(rt) Dim rx As New prt.RenderText rx.Text = "数量合计: " & Sum rx.Style.Spacing.Top = 5 If EndRow < tb.Rows.Count - 1 Then rx.BreakAfter = prt.BreakEnum.Page End If doc.Body.Children.Add(rx) Next doc.Preview()
|