Dim doc As New PrintDoc '定义一个报表
Dim tbl As Table = Tables("FAJHB")
For i As Integer = tbl.TopRow To tbl.BottomRow
Dim CurRow As Row = tbl.Rows(i)
Dim rt As New prt.RenderTable() '定义一个表格对象
Dim rx As New prt.RenderText '定义一个文本对象
Dim ra As New prt.RenderArea '定义一个容器
ra.SplitVertBehavior = prt.SplitBehaviorEnum.Never '禁止容器因为分页而被垂直分割
'加入标题
rx.text = "XX公司发运通知单"
rx.Style.FontBold = True '字体加粗
rx.Style.FontSize = 16 '大体大小为16磅
rx.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中排列
rx.Style.Spacing.Bottom = 3 '和下面的对象(表格)距离3毫米
ra.Children.Add(rx) '加入到容器中
'指定行数?列数?列宽?行高
rt.Rows.Count = 11 '设置总行数
rt.Cols.Count = 8 '设置总列数
rt.Height = 100 '设置表格的高度为100毫米
rt.Rows(11).Height = 20 '设置第11行(显示备注的行)的高度为40毫米,剩余高度被平均分排到其他行
rt.Cols(0).Width = 30 '设置前四列的宽度,剩余的宽度被分配给5列(显示图片的那列)
rt.Cols(1).Width = 50
rt.Cols(2).Width = 20
rt.Cols(4).Width = 20 '设置前四列的宽度,剩余的宽度被分配给5列(显示图片的那列)
rt.Cols(3).Width = 30
rt.Cols(5).Width = 30 '设置前四列的宽度,剩余的宽度被分配给5列(显示图片的那列)
rt.Cols(6).Width = 20
rt.Cols(7).Width = 20'设置前四列的宽度,剩余的宽度被分配给5列(显示图片的那列)
'设置合并单元格
rt.Cells(0,1).SpanCols = 2 '第1行第2个单元格向右合并5列(用于显示备注)
rt.Cells(0,4).SpanCols = 4 '第1行第5个单元格向右合并3列(用于显示备注)
rt.Cells(1,1).SpanCols = 2 '第1行第2个单元格向右合并5列(用于显示备注)
rt.Cells(1,4).SpanCols = 4 '第1行第5个单元格向右合并3列(用于显示备注)
rt.Cells(2,1).SpanCols = 3 '第3行第2个单元格向右合并5列(用于显示备注)
rt.Cells(2,5).SpanCols = 4 '第3行第6个单元格向右合并2列(用于显示备注)
rt.Cells(3,1).SpanCols = 2 '第3行第2个单元格向右合并5列(用于显示备注)
rt.Cells(3,4).SpanCols = 4 '第3行第6个单元格向右合并2列(用于显示备注)
rt.Cells(4,0).SpanCols = 8 '第3行第6个单元格向右合并2列(用于显示备注)
rt.Cells(11,0).SpanCols = 8 '第11行第1个单元格向右合并6列(用于显示备注)
'设置表格样式
rt.CellStyle.Spacing.All = 0.5 '单元格内容缩进1毫米
rt.Style.GridLines.All = New prt.Linedef '设置网格线
rt.Style.TextAlignVert = prt.AlignVertEnum. TOP'内容垂直居中
rt.Rows(10).Style.TextAlignVert = prt.AlignVertEnum.Top '唯独第7行是备注,内容靠上对齐
rt.Rows(3).Style.TextAlignHorz = prt.AlignHorzEnum.Center '唯独第7行是备注,内容靠上对齐
rt.Rows(4).Style.TextAlignHorz = prt.AlignHorzEnum.Center '唯独第7行是备注,内容靠上对齐
rt.Rows(5).Style.TextAlignHorz = prt.AlignHorzEnum.Center '唯独第7行是备注,内容靠上对齐
rt.Rows(6).Style.TextAlignHorz = prt.AlignHorzEnum.Center '唯独第7行是备注,内容靠上对齐
rt.Rows(7).Style.TextAlignHorz = prt.AlignHorzEnum.Center '唯独第7行是备注,内容靠上对齐
rt.Rows(8).Style.TextAlignHorz = prt.AlignHorzEnum.Center '唯独第7行是备注,内容靠上对齐
rt.Rows(9).Style.TextAlignHorz = prt.AlignHorzEnum.Center '唯独第7行是备注,内容靠上对齐
'下面很简单,指定每一个单元格的内容
rt.Cells(0,0).Text= "发货日期"
rt.Cells(0,1).Text = CurRow("发运日期")
rt.Cells(0,3).Text="有效日期"
rt.Cells(0,4).Text = CurRow("有效时间")
rt.Cells(1,0).Text="发货编号"
rt.Cells(1,1).Text = CurRow("发货编号")
rt.Cells(1,3).Text= "计划单号"
rt.Cells(1,4).Text = CurRow("计划单号")
rt.Cells(2,0).Text="客户名"
rt.Cells(2,1).Text = CurRow("客户名")
rt.Cells(2,4).Text= "子客户"
rt.Cells(2,5).Text = CurRow("子客户")
rt.Cells(3,3).Text= "包装"
rt.Cells(3,4).Text = CurRow("包装")
rt.Cells(3,0).Text= "品种"
rt.Cells(3,1).Text = CurRow("品种")
rt.Cells(4,0).Text= "以下为预报车号信息"
rt.Cells(5,0).Text= "车号1"
rt.Cells(5,1).Text = CurRow("车号1")
rt.Cells(5,2).Text= "吨位1"
rt.Cells(5,3).Text = CurRow("吨位1")
rt.Cells(5,4).Text= "车号6"
rt.Cells(5,5).Text = CurRow("车号6")
rt.Cells(5,6).Text= "吨位6"
rt.Cells(5,7).Text = CurRow("吨位6")
rt.Cells(6,0).Text= "车号2"
rt.Cells(6,1).Text = CurRow("车号2")
rt.Cells(6,2).Text= "吨位2"
rt.Cells(6,3).Text = CurRow("吨位2")
rt.Cells(6,4).Text= "车号7"
rt.Cells(6,5).Text = CurRow("车号7")
rt.Cells(6,6).Text= "吨位7"
rt.Cells(6,7).Text = CurRow("吨位7")
rt.Cells(7,0).Text= "车号3"
rt.Cells(7,1).Text = CurRow("车号3")
rt.Cells(7,2).Text= "吨位3"
rt.Cells(7,3).Text = CurRow("吨位3")
rt.Cells(7,4).Text= "车号8"
rt.Cells(7,5).Text = CurRow("车号8")
rt.Cells(7,6).Text= "吨位8"
rt.Cells(7,7).Text = CurRow("吨位8")
rt.Cells(8,0).Text= "车号4"
rt.Cells(8,1).Text = CurRow("车号4")
rt.Cells(8,2).Text= "吨位4"
rt.Cells(8,3).Text = CurRow("吨位4")
rt.Cells(8,4).Text= "车号9"
rt.Cells(8,5).Text = CurRow("车号9")
rt.Cells(8,6).Text= "吨位9"
rt.Cells(8,7).Text = CurRow("吨位9")
rt.Cells(9,0).Text= "车号5"
rt.Cells(9,1).Text = CurRow("车号5")
rt.Cells(9,2).Text= "吨位5"
rt.Cells(9,3).Text = CurRow("吨位5")
rt.Cells(9,4).Text= "车号10"
rt.Cells(9,5).Text = CurRow("车号10")
rt.Cells(9,6).Text= "吨位10"
rt.Cells(9,7).Text = CurRow("吨位10")
rt.Cells(11,0).Text = CurRow("备注")
ra.Children.Add(rt) '加入到容器中
Doc.Body.ChildRen.Add(ra) '将容器加入到报表中
Next
Doc.Preview() '预览报表