Foxtable(狐表)用户栏目专家坐堂 → 打印报表请教


  共有2513人关注过本帖树形打印复制链接

主题:打印报表请教

美女呀,离线,留言给我吧!
cjl333333333
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
打印报表请教  发帖心情 Post By:2021/7/7 15:07:00 [只看该作者]

 Dim rt As New prt.RenderTable '定义一个新表格
        Dim tb As Table = Tables("库存表主表.库存表")
        'Dim prs As Integer = 5
        Dim ColNames As String() = New String(){"客户单号","生产单号","编号","名称","类型","出库数量","单位","出库件数","包装","备注"}
        Dim ColNames1 As String() = New String(){"客户PO/批号","生产单号","产品编码","产品名称","产品类型","数量","单位","件数(件)","包装方式","备注"}
       
       
        rt.Height = 80  '设置表格的高度为80毫米
              rt.SplitHorzBehavior = prt.SplitBehaviorEnum.SplitIfNeeded '表格宽度超出页宽时,可以水平换页
        rt.Style.Font = tb.Font
        For c As Integer = 0 To ColNames.Length - 1 '逐列设置和填入内容
            rt.Cells(0,c).Text = ColNames1(c) '列名作为标题
            rT.RowS(0).Style.FontSize = 12
            rt.Style.FontSize = 12
            rt.Rows(0).Style.FontBOLD = True
            rt.Cells(0,c).Style.TextAlignHorz = prt.AlignHorzEnum.Center '标题内容水平居中
            rt.Cols(c).Width = tb.Cols(ColNames(c)).PrintWidth '列宽等于实际列宽
                              
            If tb.Cols(ColNames(c)).IsNumeric OrElse tb.Cols(ColNames(c)).IsDate Then '如果是数值或日期列
                rt.Cols(c).Style.TextAlignHorz = prt.AlignHorzEnum.Right '数据水平靠右
            End If
            For r As Integer = 0 To tb.Rows.Count -1 '开始填入该列内容
                rt.Cells(r + 1, c).Text = tb.Rows(r)(ColNames(c))
                               
                
            Next
            
        rt.SplitVertBehavior = prt.SplitBehaviorEnum.Never '禁止被垂直分割
        rt.Style.Gridlines.All = New prt.Linedef(Color.Gray) '灰色网格线
        rt.CellStyle.Spacing.All = 0.5 '单元格内距设为0.5毫米
        rt.Rows(0).Style.TextAlignHorz = prt.AlignHorzEnum.Center '第一行内容水平居中
        rt.RowGroups(0,1).Header = prt.TableHeaderEnum.All '利用行组,将第一行设为表头.
        rT.Style.Spacing.Bottom = 0 '和下面的对象(表格)距离3毫米
       
        doc.Body.Children.Add(rt)

 

 

 

老师以上代码我想在表格最后加一行合计出库存件数要怎么加代码?



 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110558 积分:562680 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/7 15:26:00 [只看该作者]

        rT.Style.Spacing.Bottom = 0 '和下面的对象(表格)距离3毫米
       rt.Cells(rt.rows.count, 0).Text = tb.compute("sum(库存件数)")
        doc.Body.Children.Add(rt)

 回到顶部
美女呀,离线,留言给我吧!
cjl333333333
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:200 积分:1706 威望:0 精华:0 注册:2015/2/3 17:04:00
  发帖心情 Post By:2021/7/7 16:07:00 [只看该作者]

 rt.Cells(rt.rows.count, 0).Text = "合计"
        rt.Cells(rt.rows.count, 5).Text = tb.compute("sum(出库件数)")
        rt.Cells(rt.rows.count, 6).Text = "件"
我这样加老是显示成三行?我想它显示在同一行上就行的。

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110558 积分:562680 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2021/7/7 16:19:00 [只看该作者]

dim k as integer = rt.rows.count
rt.Cells(k, 0).Text = "合计"
        rt.Cells(k, 5).Text = tb.compute("sum(出库件数)")
        rt.Cells(k, 6).Text = "件"

 回到顶部