以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  又看了几天的专业报表,就差中间没搞定了,版主帮帮忙!!!  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=5710)

--  作者:雨中的泪
--  发布时间:2009/12/31 11:37:00
--  又看了几天的专业报表,就差中间没搞定了,版主帮帮忙!!!
又看了几天的专业报表,就差中间没搞定了,版主帮帮忙!!!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:实例一.table


--  作者:xl
--  发布时间:2009/12/31 13:01:00
--  
唉~
--  作者:雨中的泪
--  发布时间:2009/12/31 13:36:00
--  
图片点击可在新窗口打开查看
--  作者:雨中的泪
--  发布时间:2009/12/31 22:30:00
--  
图片点击可在新窗口打开查看
--  作者:雨中的泪
--  发布时间:2010/1/1 16:40:00
--  
图片点击可在新窗口打开查看
--  作者:雨中的泪
--  发布时间:2010/1/2 11:31:00
--  
图片点击可在新窗口打开查看
--  作者:雨中的泪
--  发布时间:2010/1/2 18:16:00
--  
图片点击可在新窗口打开查看
--  作者:雨中的泪
--  发布时间:2010/1/2 21:01:00
--  
版主帮帮忙
--  作者:雨中的泪
--  发布时间:2010/1/2 23:31:00
--  
 

 Tables("调标表").Filter =""   \'取消筛选

 

Dim Q As  String

Q = e.Form.Controls("输入单位名称").Value

Dim doc As New PrintDoc() \'定义一个报表

doc.PageSetting.PaperKind = 8 \'纸张类型改为A3

doc.PageSetting.Landscape = True \'横向打印

doc.AutoRotate = False \'禁止自动旋转打印内容

Doc.PageSetting.LeftMargin = 30 \'设置左边距

Doc.PageSetting.RightMargin = 25 \'设置右边距

Doc.PageSetting.TopMargin = 30\'设置上边距

Doc.PageSetting.TopMargin = 25 \'设置下边距

\'设置标题

Dim rs As New prt.RenderTable()\'定义一个表格

\'设置各位置的网格线

rs.Style.GridLines.All = New Prt.LineDef(0.4, Color.Black)

rs.Style.GridLines.Horz = new Prt.LineDef(0.3,Color. Black)

rs.Style.GridLines.Vert = new Prt.LineDef(0.3,Color. Black)

Rs.Width = 369 \'设置表格的宽度为369毫米

rs.rows.count = 2  \'设置总行数

rs.cols.count = 8  \'设置总列数

Rs.Rows(0).Height =18 \'设置表格第一行的高度为18毫米

Rs.Rows(1).Height =8 \'设置表格第二行的高度为8毫米

rs.cells(0,0).spancols = 8 \'第1行第1个单元格向右合并8列

rs.Cells(0,0).Text = "桐梓县机关(参公)单位工作人员地方津贴补贴调标审批花名册" \'设置表格第一行第一个单元格内填入文本的内容

rs.Rows(0).style.F  \'设置第一行字体

rs.Rows(0).Style.FontSize = 28 \'字体大小为28磅   \'设置第一行字体大小

rs.Rows(0).Style.FontBold = True \'第一行字体是否加粗

rs.Rows(0).Style.TextAlignHorz = prt.AlignHorzEnum.Center \'第一行内容水平居中

rs.Rows(0).Style.TextAlignVert = prt.AlignVertEnum.Center \'第一行内容垂直居中

rs.Rows(1).style.F  \'设置第二行字体

rs.Rows(1).Style.TextAlignVert = prt.AlignVertEnum.Center \'第二行内容垂直居中

rs.Rows(1).Style.FontSize = 12\'字体大小为12磅   \'设置第二行字体大小

rs.cells(1,0).spancols = 2 \'第2行第1个单元格向右合并2列

rs.Cells(1,0).Text = "填报单位(章): " & Q \'设置表格内第二行第一个单元格填入文本内容

rs. Cells(1,0).Style.TextAlignHorz = prt.AlignHorzEnum.left \'第二行第一个单元格内的内容靠左

rs.cells(1,2).spancols = 2 \'第2行第3个单元格向右合并2列

rs.Cells(1,2).Text = "审批人:" \'设置表格内第二行第三个单元格填入文本内容

rs. Cells(1,2).Style.TextAlignHorz = prt.AlignHorzEnum.Center \'第二行第三个单元格内的内容水平居中

rs.cells(1,4).spancols = 3 \'第2行第5个单元格向右合并3列

rs.Cells(1,4).Text = "人事部门审核(章):" \'设置表格第二行第五个单元格内填入文本内容

rs. Cells(1,4).Style.TextAlignHorz = prt.AlignHorzEnum.Center \'第二行第五个单元格内的内容水平居中

rs.Cells(1,7).Text = "单位:元/月" \'设置表格第二行第八个单元格内填入文本内容

rs. Cells(1,7).Style.TextAlignHorz = prt.AlignHorzEnum.right \'第二行第八个单元格内的内容靠右

rs.cellstyle.spacing.bottom = 1 \'和下面的对象(表格)距离1毫米

Doc.PageHeader = rs \'作为页眉使用

 

Dim ck As WinForm.ComBoBox = e.Form.Controls("输入单位名称")

Tables("调标表").Filter = "[单位名称] = \'" & ck.value & "\'"  \'筛选出指定单位名称的行

 

Dim rs2 As New prt.RenderTable() \'定义一个表格对象

Dim tb as Table = Tables("调标表")

Dim ColNames As String() = New String(){"序号", "姓名", "性别","出生日期", "身份证号", "民族", "参加工作时间", "享受地方津贴补贴职务级别", "调整前地方津贴补贴", "调整后地方津贴补贴", "月增资额", "补发月数", "补发合计"}

Rs2.cansplithorz = false \'表格宽度超出页宽时,不允许水平换页

Rs2.Style.Font = tb.Font

For c As Integer = 0 To ColNames.Length - 1 \'逐列设置和填入内容

 rs2.cols(c).Style.TextAlignVert = prt.AlignVertEnum.Center \'数据垂直居中

 Rs2.Cols(c).Style.TextAlignHorz = prt.AlignHorzEnum.Center \'数据水平居中

For r As integer = 0 To tb.Rows.Count -1 \'开始填入该列内容

        rs2.rows(r+1).height = 15

        rs2.Rows(R+1).Style.FontSize = 12\'字体大小为12磅   \'设置字体大小

        Rs2.Cells(r + 1, c).Text = tb.Rows(r)(ColNames(c))

    Next

next

\'设置各位置的网格线

Rs2.style.gridlines.all = new prt.linedef \'将网格线类型设为默认类型

Rs2.Cols.Count = 13 \'设置列数

Rs2.Rows(0).Height =15 \'设置表格第一行的高度为15毫米

Rs2.Rows(0).style.F  \'设置第一行字体

Rs2.Rows(0).Style.FontSize = 13 \'字体大小为13磅   \'设置第一行字体大小

Rs2.Cols(0).Width = 10  \'序号列宽度

Rs2.Cols(1).Width = 22  \'姓名列宽度

Rs2.Cols(2).Width = 10  \'性别列宽度

Rs2.Cols(3).Width = 30  \'出生日期列宽度

Rs2.Cols(4).Width = 65  \'身份证号列宽度

Rs2.Cols(5).Width = 27  \'民族列宽度

Rs2.Cols(6).Width = 30  \'参加工作时间列宽度

Rs2.Cols(7).Width = 42  \'享受地方津贴补贴职务级别(技术等级)列宽度

Rs2.Cols(8).Width = 32  \'调整前地方津贴补贴列宽度

Rs2.Cols(9).Width = 32  \'调整后地方津贴补贴列宽度

Rs2.Cols(10).Width = 30  \'月增资额列宽度

Rs2.Cols(11).Width = 10  \'补发月数列宽度

Rs2.Cols(12).Width = 29  \'补发合计列宽度

Rs2.Rows(0).Style.TextAlignHorz = prt.AlignHorzEnum. Center \'第一行内容靠中间对齐

Rs2.Rows(0).Style.TextAlignVert = prt.AlignHorzEnum. Center \'第一行内容垂直居中

Rs2.Cells(0,0).Text= "序号"

Rs2.Cells(0,1).Text = "姓名"

Rs2.Cells(0,2).Text = "性别"

Rs2.Cells(0,3).Text= "出生日期"

Rs2.Cells(0,4).Text = "身份证号"

Rs2.Cells(0,5).Text = "民族"

Rs2.Cells(0,6).Text= "参加工作时间"

Rs2.Cells(0,7).Text = "享受地方津贴补贴职务级别(技术等级)"

Rs2.Cells(0,8).Text = "调整前地方津贴补贴"

Rs2.Cells(0,9).Text= "调整后地方津贴补贴"

Rs2.Cells(0,10).Text = "月增资额"

Rs2.Cells(0,11).Text = "补发月数"

Rs2.Cells(0,12).Text = "补发合计"

Rs2.RowGroups(0,1).PageHeader = True \'第一行作为表头

Rs2.RowGroups(0,1).Style.TextAlignHorz = prt.AlignHorzEnum.Center \'第一行的文本水平居中

Rs2.RowGroups(0,1).Style.TextAlignVert = prt.AlignVertEnum.Center \'第一行的文本垂直居中

 

 

Rs2.style.spacing.bottom = 1

Doc.body.children.add(rs2)

 

 

\'设置页脚

Dim rs1 As New prt.RenderTable()\'定义一个表格

\'设置各位置的网格线

Rs1.Style.GridLines.All = New Prt.LineDef(0.4, Color.Black)

Rs1.Style.GridLines.Horz = new Prt.LineDef(0.3,Color. Black)

Rs1.Style.GridLines.Vert = new Prt.LineDef(0.3,Color. Black)

Rs1.Width = 369 \'设置表格的宽度为369毫米

Rs1.Rows(0).Height =15 \'设置表格第一行的高度为15毫米

Rs1.rows.count = 1  \'设置总行数

Rs1.cols.count = 6  \'设置总列数

Rs1.Rows(0).Height =8 \'设置表格第一行的高度为8毫米

Rs1.Rows(0).style.F  \'设置第一行字体

Rs1.Rows(0).Style.FontSize = 12 \'字体大小为12磅   \'设置第一行字体大小

Rs1.Rows(0).Style.TextAlignHorz = prt.AlignHorzEnum.right \'第一行内容靠右

Rs1.Rows(0).Style.TextAlignHorz = prt.AlignHorzEnum.Center \'第一行内容水平居中

Rs1.Rows(0).Style.TextAlignVert = prt.AlignVertEnum.Center \'第一行内容垂直居中

Rs1.cells(0,0).spancols = 2 \'第1行第1个单元格向右合并2列

Rs1.Cells(0,0).Text = "单位负责人:" \'设置表格内第一行第一个单元格填入文本内容

Rs1.cells(0,2).spancols = 2 \'第1行第3个单元格向右合并2列

Rs1.Cells(0,2).Text = "填报人:" \'设置表格内第一行第三个单元格填入文本内容

Rs1.cells(0,4).spancols = 2 \'第1行第5个单元格向右合并2列

Rs1.Cells(0,4).Text = "填报日期:" \'设置表格内第一行第五个单元格填入文本

Doc.PageFooter = rs1 \'作为页脚使用

 

doc.Preview() \'预览报表


--  作者:雨中的泪
--  发布时间:2010/1/2 23:32:00
--  
搞定了