Dim doc As New PrintDoc '定义一个报表
Doc.PageSetting.TopMargin = 5 '设置上边距
Doc.PageSetting.BottomMargin = 5 '设置下边距
'Doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight
Dim ra As New prt.RenderArea
Dim rx As prt.RenderText '定义一个文本对象
Dim rm As prt.RenderImage '定义一个图形队形
Dim Currow As Row
Dim tbl As Table = Tables("表A")
Dim rep As prt.RenderEmpty
Dim idx As Integer = 0
Dim kk As Integer = 0
For i As Integer = 0 To tbl.Rows.Count - 1
CurRow = tbl.rows(i)
For j As Integer = 1 To CurRow("数量") Step 4
For k As Integer = 0 To math.min(3,CurRow("数量") - j)
If kk > 3 Then
kk = 0
idx += 1
End If
If idx > 6 Then
rep = New prt.RenderEmpty '定义一个新的空对象
rep.BreakBefore = prt.BreakEnum.Page '打印前换页
doc.Body.Children.Add(rep ) '加入到报表中
kk = 0
idx = 0
End If
rx = new prt.RenderText
rx.SplitVertBehavior = prt.SplitBehaviorEnum.Never
rx.Text = CurRow("名称")
rx.x = kk * 50 + 5
rx.y = idx * 40 + 5
doc.body.Children.Add(rx)
rx = new prt.RenderText
rx.Text = CurRow("条码")
rx.x = kk * 50 + 5
rx.y = idx * 40 + 15
doc.body.Children.Add(rx)
kk += 1
Next
Next
Next
Doc.Preview() '预览报表