Foxtable(狐表)用户栏目专家坐堂 → 专业报表分组加入图片


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

主题:专业报表分组加入图片

帅哥哟,离线,有人找我吗?
yifan3429
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
专业报表分组加入图片  发帖心情 Post By:2021/5/22 23:35:00 [显示全部帖子]

Dim doc As New PrintDoc
Dim rt As Prt.RenderTable
Dim rx As prt.RenderText
Dim tbl As Table = Tables("活动家居产品库")
Dim Rows As List(Of DataRow)
Dim Regions As List(Of String) = tbl.DataTable.GetValues("品牌")
doc.Pagesetting.LandScape = True
For Each Region As String In Regions
    rx = New prt.RenderText
    rx.Style.FontSize = 14
    rx.Style.FontBold = True
    rx.Style.Spacing.Bottom = 2
    rx.Text = "品牌: " & Region
    doc.Body.Children.Add(rx)
    rt = New prt.RenderTable
    rt.Style.Font = Tables("活动家居产品库").Font
    rt.Style.TextAlignVert = prt.AlignVertEnum.Center
    rt.Style.GridLines.All = New prt.LineDef(0.3,Color.LightGray)
    rt.Style.Spacing.Bottom = 5
    rt.CellStyle.Spacing.All = 1
    rt.Style.Font = tbl.Font
    Rows = tbl.DataTable.Select("[品牌] = '" & Region & "'")
    
    Dim tb As Table = Tables("活动家居产品库")
    Dim ColNames As String() = New String(){"分类","产品名称","型号","原始图片","备注"}
    rt.Style.Font = tb.Font
    For c As Integer = 0 To ColNames.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(ColNames(c)).PrintWidth
        End If
        For r As Integer = 0 To tb.Rows.Count -1 '开始填入该列内容
            rt.Cells(r + 1, c).Text = tb.Rows(r)(ColNames(c))
        Next
    Next

想显示原始图片 并控制大小  高固定  宽度 自动
    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 '利用行组,将第一行设为表头.
    doc.Body.Children.Add(rt) '将表格加入到报表
Next
doc.preview()

图片点击可在新窗口打开查看此主题相关图片如下:鱼片.png
图片点击可在新窗口打开查看
   

[此贴子已经被作者于2021/5/22 23:37:32编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
yifan3429
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
  发帖心情 Post By:2021/5/23 11:08:00 [显示全部帖子]

Dim doc As New PrintDoc
Dim rt As Prt.RenderTable
Dim rx As prt.RenderText
Dim CurRow As Row = Tables("活动家居产品库").Current
Dim tbl As Table = Tables("活动家居产品库")
Dim Rows As List(Of DataRow)
Dim Regions As List(Of String) = tbl.DataTable.GetValues("品牌")
doc.Pagesetting.LandScape = True
For Each Region As String In Regions
    rx = New prt.RenderText
    rx.Style.FontSize = 14
    rx.Style.FontBold = True
    rx.Style.Spacing.Bottom = 2
    rx.Text = "品牌: " & Region
    doc.Body.Children.Add(rx)
    rt = New prt.RenderTable
    rt.Style.Font = Tables("活动家居产品库").Font
    rt.Style.TextAlignVert = prt.AlignVertEnum.Center
    rt.Style.GridLines.All = New prt.LineDef(0.3,Color.LightGray)
    rt.Style.Spacing.Bottom = 5
    rt.CellStyle.Spacing.All = 1
    rt.Style.Font = tbl.Font
    Rows = tbl.DataTable.Select("[品牌] = '" & Region & "'")
    
    Dim tb As Table = Tables("活动家居产品库")
    Dim ColNames As String() = New String(){"分类","产品名称","型号","原始图片","备注"}
    rt.Style.Font = tb.Font
    For c As Integer = 0 To ColNames.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(ColNames(c)).PrintWidth
        End If
        For r As Integer = 0 To tb.Rows.Count -1 '开始填入该列内容
            rt.Cells(r + 1, c).Text = tb.Rows(r)(ColNames(c))
            rt.Cells(0,4).Image = GetImage(CurRow("原始图片"))  还是不显示图片  不知道哪里不多 求助
        Next
    Next
 
    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 '利用行组,将第一行设为表头.
    doc.Body.Children.Add(rt) '将表格加入到报表
Next
doc.preview()

 回到顶部
帅哥哟,离线,有人找我吗?
yifan3429
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
  发帖心情 Post By:2021/5/23 14:19:00 [显示全部帖子]


    For c As Integer = 0 To ColNames.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(ColNames(c)).PrintWidth
        End If
                
        For r As Integer = 0 To tb.Rows.Count -1 '开始填入该列内容
            rt.Cells(r + 1, c).Text = tb.Rows(r)(ColNames(c))
            rt.Cells(r+1,3).Image = GetImage("\\Citywsv\产品库$\家居\" & CurRow("原始图片"))
        Next
    Next

\\Citywsv\产品库$\家居\莫弗\(1.8M)床组23C002A-3011.jpg  地址可以直接看图片

还是不能显示图片
[此贴子已经被作者于2021/5/23 14:21:15编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
yifan3429
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2482 积分:22932 威望:0 精华:0 注册:2011/3/29 17:14:00
  发帖心情 Post By:2021/8/1 8:59:00 [显示全部帖子]

rt.Cells(r + 1,3).Image = GetImage(CurRow("商品图片"))  代码

rt.Cells(r + 1,2).Image = GetImage("https://weapp-1253522117.image.myqcloud.com//image/20210204/d7d3b458d91346ec.jpg")  实际地址

不能显示出来



[此贴子已经被作者于2021/8/1 8:59:48编辑过]

 回到顶部