做专业报表,在一个表里筛选部分行进行打印,准备移植帮助里“打印后台数据”的代码
Dim doc As New PrintDoc
Dim rt As New prt.RenderTable
Dim cmd As New SQLCommand '定义一个SQL命令
Dim
dt As
DataTable
'定义一个数据表变量
Dim
Count As
Integer = 0
cmd.CommandText = "Select * From {发货表} Where Year(日期) = 2009 And Month(日期) = 6"
dt = cmd.ExecuteReader() '生成一个临时表
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
'内容距离网格线1毫米
rt.Rows(0).Style.TextAlignHorz =
prt.AlignHorzEnum.Center '第一行内容水平居中
doc.Body.Children.Add(rt)
doc.Preview()
只改了表名,其他都没改动(日期列也同样有的),但显示错误 system.NullReferenceException:在UserCode.build()
该如何处理,谢谢。