老师帮我看看哪里有问题
我的汇总全部到了最下面
还有汇总行加上底色 怎么加
Dim tb As Table = Tables("成品报价表")
Dim cnt As Integer
Dim drs As List(Of DataRow)
Dim pds As List(Of String) = tb.DataTable.GetValues("空间",tb.Filter)
For Each pd As String In pds '分产品打印
If tb.Filter > "" Then
drs = tb.DataTable.Select("空间 = '" & pd & "' And " & tb.Filter)
Else
drs = tb.DataTable.Select("空间 = '" & pd & "'" )
End If
cnt = rt.Rows.Count '分产品打印标题
rt.Cells(cnt, 2).Text = pd & "小计 " '打印产品的小计
rt.Cells(cnt,8).Text = tb.compute("Sum(金额小计)", "空间 = '" & pd & "'")
For c As Integer = 0 To ColNames2.Length - 1 '逐列设置和填入内容
rt.Cells(0,c).Text = ColNames(c) '列名作为标题
rt.Cells(0,c).Style.TextAlignHorz = prt.AlignHorzEnum.Center '标题内容水平居中
If ColNames(c) <> "备注" Then '
rt.Cols(c).Width = tb.Cols(ColNames2(c)).PrintWidth
End If
For r As Integer = 0 To tb.Rows.Count -1 '开始填入该列内容
If ColNames(c) <>"产品图片 Picture"
rt.Cells(r + 1, c).Text = tb.Rows(r)(ColNames2(c))
Else
Dim name As String = Vars("bdwj") & "家具\" & filesys.getname(tb.Rows(r)("图片"))
If FileSys.FileExists(name) Then
Else
Network.DownloadFile(tb.Rows(r)("图片"), name)
End If
rt.Cells(r + 1,2).Image = GetImage(name)
rt.Style.ImageAlign.AlignHorz = prt.ImageAlignHorzEnum.Center '居中显示
End If
Next
Next
rt.Style.GridLines.All = New prt.Linedef '设置网格线
rt.Cols(0).Width = 12 '设置前四列的宽度,剩余的宽度被分配给5列(显示图片的那列)
rt.Cols(1).Width = 20
rt.Cols(2).Width = 30
rt.Cols(3).Width = 15
rt.Cols(4).Width = 28
rt.Cols(5).Width = 18
rt.Cols(6).Width = 15
rt.Cols(7).Width = 10
rt.Cols(8).Width = 20
rt.Cols(9).Width = 20
rt.CellStyle.Spacing.All = 0.5 '内容距离网格线0.5毫米
rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center '第一行内容水平居中
rt.Style.TextAlignVert = prt.AlignVertEnum.Center '第一行内容垂直居中
'rt.Rows(0).Style.TextAlignHorz = prt.AlignHorzEnum.Center '第一行内容水平居中
'rt.Rows(0).Style.TextAlignVert = prt.AlignVertEnum.Center '第一行内容垂直居中
rt.Rows(0).Style.BackColor = Color.LightGray '第一行背景颜色设为灰色.
rt.RowGroups(0,1).Header = prt.TableHeaderEnum.All '将第一行作为表头..
Next
doc.Body.Children.Add(rt) '将表格加入到报表'
[此贴子已经被作者于2022/1/5 21:59:10编辑过]