Foxtable(狐表)用户栏目专家坐堂 → [求助]在执行打印的时候,为什么前面的数据全部都没传输过来,只有最后几个字传过来打印出来了?换其他数据确实正常的,或者换电脑打印这段数据也是正常的


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

主题:[求助]在执行打印的时候,为什么前面的数据全部都没传输过来,只有最后几个字传过来打印出来了?换其他数据确实正常的,或者换电脑打印这段数据也是正常的

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


加好友 发短信
等级:六尾狐 帖子:1483 积分:10551 威望:0 精华:0 注册:2018/10/16 11:42:00
[求助]在执行打印的时候,为什么前面的数据全部都没传输过来,只有最后几个字传过来打印出来了?换其他数据确实正常的,或者换电脑打印这段数据也是正常的  发帖心情 Post By:2019/12/24 15:10:00 [显示全部帖子]

'''
Dim doc As New PrintDoc '定义一个报表
doc.PageSetting.Width =76 '纸张宽度为100毫米
doc.PageSetting.Height =130 '纸张高度为120毫米
Dim rt As New prt.RenderTable() '定义一个表格对象
Doc.PageSetting.LeftMargin = 0 '设置左边距
Doc.PageSetting.RightMargin = 0 '设置右边距
Doc.PageSetting.TopMargin = 0 '设置上边距
Doc.PageSetting.BottomMargin = 0 '设置下边距
rt.Width = "Parent.Width" '对象宽度等于页面宽度
rt.Height = "Parent.Height" '对象高度等于页面高度
'指定行数?列数?列宽?行高
rt.Rows.Count = 10 '设置总行数
rt.Cols.Count = 4 '设置总列数

rt.Rows(0).Height = 10 '
rt.Rows(1).Height = 5 '
rt.Rows(2).Height = 12 '
rt.Rows(3).Height = 18 '
rt.Rows(4).Height = 10 '
rt.Rows(5).Height = 7 '
rt.Rows(6).Height = 13 '
rt.Rows(7).Height = 6 '
rt.Rows(8).Height = 6 '
rt.Rows(9).Height = 28 '
rt.Rows(10).Height = 14 '


'设置列宽度
rt.Cols(0).Width = 8.5 '设置前四列的宽度,剩余的宽度被分配给5列(显示图片的那列)
rt.Cols(1).Width = 29.5
rt.Cols(2).Width = 23
rt.Cols(3).Width = 15
'设置合并单元格

rt.Cells(0,0).SpanCols =2 '
rt.Cells(1,0).SpanCols = 2 '
rt.Cells(1,2).SpanCols = 2 '
rt.Cells(2,0).SpanCols = 4 '
rt.Cells(3,0).SpanCols = 4 '
rt.Cells(4,0).SpanCols = 2 '

rt.Cells(5,1).SpanCols = 2 '
rt.Cells(5,0).SpanRows = 2 '
rt.Cells(6,1).SpanCols = 2 '
rt.Cells(7,0).SpanRows = 2 '
rt.Cells(7,1).SpanCols = 2 '
rt.Cells(8,1).SpanCols = 2 '
rt.Cells(9,0).SpanCols = 4 '
rt.Cells(10,0).SpanCols = 2 '
rt.Cells(10,2).SpanCols = 2 '

rt.Cells(5,3).SpanRows = 4 '
'设置表格样式
rt.CellStyle.Spacing.All = 1 '单元格内容缩进1毫米
rt.Style.GridLines.All = New prt.Linedef '设置网格线
rt.Style.GridLines.All = new Prt.LineDef(Color.Gainsboro) '设置网格颜色
rt.Style.TextAlignVert = prt.AlignVertEnum.Center '内容垂直居中
rt.Rows(9).Style.TextAlignVert = prt.AlignVertEnum.Top '唯独第7行是备注,内容靠上对齐
'''下面很简单,指定每一个单元格的内容
rt.Cells(0,0).Text= "zto"
rt.Cells(0,0).Style.Font = New Font("微软雅黑", 16, FontStyle.Bold) '设置字体
....................
Dim rg As New prt.RenderGraphics
Dim Bar As New BarCodeBuilder
Bar.Symbology = Barpro.Symbology.Code128
bar.Code = "368806664526"  '条形码
rg = new prt.RenderGraphics
bar.DrawOnCanvas(rg.Graphics,0,0,1)
rt.Cells(3,0).RenderObject = rg  '将单元格内容设置为图片对象rm


Dim rbc As New prt.RenderBarCode()
rbc.Height = 1

rbc.BarCodeType = BarCodeEnum.Code128
rbc.BarDirection = BarDirectionEnum.Up
rbc.Text = "368806664526"
rbc.ShowText = False
rt.Cells(5,3).RenderObject = rbc  '将单元格内容设置为图片对象rm

doc.Body.Children.Add(rt) '将表格对象加入到报表中

'Dim rt0 As prt.RenderText '定义一个文本对象
'rt0 = New prt.RenderText '设置文本对象的内容
'rt0.Text = "承诺达" '设置文本内容
'rt0.Width = "38" '宽度等于页面宽度
'rt0.Height = "245" '高度等于页面高度
'rt0.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中对齐
'rt0.Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中对齐
'rt0.Style.Font = New Font("微软雅黑",14, FontStyle.Bold) '设置字体
'rt0.Style.TextColor = Color.DarkSlateGray '文本颜色为灰色
'Doc.WaterMark = rt0 '作为水印使用

Doc.Preview   () '预览报表

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


加好友 发短信
等级:六尾狐 帖子:1483 积分:10551 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/12/24 20:01:00 [显示全部帖子]

如图,一个是我打的,一个是别人电脑打的,打了一张白纸
[此贴子已经被作者于2019/12/24 20:03:59编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1483 积分:10551 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/12/24 20:03:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20191224200228.jpg
图片点击可在新窗口打开查看
发错图了,是这两个
图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20191224200224.jpg
图片点击可在新窗口打开查看


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


加好友 发短信
等级:六尾狐 帖子:1483 积分:10551 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/12/24 20:04:00 [显示全部帖子]


图片点击可在新窗口打开查看此主题相关图片如下:微信图片_20191224200414.jpg
图片点击可在新窗口打开查看

[此贴子已经被作者于2019/12/24 20:04:32编辑过]

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


加好友 发短信
等级:六尾狐 帖子:1483 积分:10551 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/12/24 20:05:00 [显示全部帖子]

Dim 当前行 As Row = Args(0)
Dim 自定义 As String
Dim 打印() As String = 当前行("打印信息").split("\")
If 当前行("内件详情").Contains ("[{") Then
Dim json As String =  当前行("内件详情")
For Each ep As JToken In JArray.Parse(json)
自定义=ep("商品名称").ToString() &  " " & ep("规格").ToString() &" 【" & ep("数量").ToString() &"】"
Next
Else
自定义= 当前行("内件详情")
End If
Dim doc As New PrintDoc '定义一个报表

doc.PageSetting.Width =74 '纸张宽度为100毫米
doc.PageSetting.Height =129 '纸张高度为120毫米

Dim rt As New prt.RenderTable() '定义一个表格对象
Doc.PageSetting.LeftMargin = 1 '设置左边距
Doc.PageSetting.RightMargin = 1 '设置右边距
Doc.PageSetting.TopMargin = 2 '设置上边距
Doc.PageSetting.BottomMargin = 1 '设置下边距
rt.Width = "Parent.Width" '对象宽度等于页面宽度
rt.Height = "Parent.Height" '对象高度等于页面高度
'指定行数?列数?列宽?行高
rt.Rows.Count = 10 '设置总行数
rt.Cols.Count = 4 '设置总列数
rt.Rows(0).Height = 9 '
rt.Rows(1).Height = 0 '
rt.Rows(2).Height = 17 '
rt.Rows(3).Height = 11 '
rt.Rows(4).Height = 10 '
rt.Rows(5).Height = 7 '
rt.Rows(6).Height = 14 '
rt.Rows(7).Height = 6 '
rt.Rows(8).Height = 6 '
rt.Rows(9).Height = 37 '
rt.Rows(10).Height = 14 '
'设置列宽度
rt.Cols(0).Width = 8.5 '设置前四列的宽度,剩余的宽度被分配给5列(显示图片的那列)
rt.Cols(1).Width = 29.5
rt.Cols(2).Width = 22
rt.Cols(3).Width = 15
'设置合并单元格
'rt.Cells(0,0).SpanCols =2 '
rt.Cells(1,0).SpanCols = 2 '
rt.Cells(1,2).SpanCols = 2 '
rt.Cells(2,0).SpanCols = 4 '
rt.Cells(3,0).SpanCols = 4 '
rt.Cells(4,0).SpanCols = 2 '
rt.Cells(5,1).SpanCols = 2 '
rt.Cells(5,0).SpanRows = 2 '
rt.Cells(6,1).SpanCols = 2 '
rt.Cells(7,0).SpanRows = 2 '
rt.Cells(7,1).SpanCols = 2 '
rt.Cells(8,1).SpanCols = 2 '
rt.Cells(9,0).SpanCols = 4 '
rt.Cells(10,0).SpanCols = 2 '
rt.Cells(10,2).SpanCols = 2 '
rt.Cells(5,3).SpanRows = 4 '

'设置表格样式
rt.CellStyle.Spacing.All = 1 '单元格内容缩进1毫米
rt.Style.GridLines.All = New prt.Linedef '设置网格线
rt.Style.GridLines.All = new Prt.LineDef(Color.RosyBrown) '设置网格颜色
rt.Style.TextAlignVert =  prt.AlignVertEnum.Top '内容靠上对齐
'''下面很简单,指定每一个单元格的内容
rt.Cells(0,1).Style.BackColor = Color.Black
Dim rx As New prt.RenderText '定义一个文本对象
rx.Text = 打印(2) ' 打印(20)  '退件标识
rx.Style.Font = New Font("微软雅黑", 16, FontStyle.Bold)
rx.Style.TextColor = Color.white
rt.Cells(0,1).RenderObject = rx '将文本对象放置在单元格中
rt.Cells(0,3).Text= "退标请勿盖住此行!"  '"第1/1页"
rt.Cells(0,3).Style.Font = New Font("微软雅黑", 7, FontStyle.Regular) '设置字体
rt.Cells(0,2).Text= "普通订单"
rt.Cells(0,2).Style.Font = New Font("微软雅黑", 12, FontStyle.Bold) '设置字体
rt.Cells(3,0).Text= 当前行("大头笔")  '大头笔
rt.Cells(3,0).Style.Font = New Font("微软雅黑",20, FontStyle.Bold) '设置字体
rt.Cells(4,0).Text= 当前行("集包地") '集包地
rt.Cells(4,0).Style.Font = New Font("微软雅黑", 16, FontStyle.Bold) '设置字体
rt.Cells(4,2).Text= Date.Now
rt.Cells(4,2).Style.FontSize = 8  '字体大小为16磅
rt.Cells(5,1).Text= 当前行("收件人") & " " & 当前行("收件电话")  '收件人 电话
rt.Cells(5,1).Style.Font = New Font("微软雅黑", 9, FontStyle.Bold) '设置字体
rt.Cells(6,1).Text= 当前行("收件省") & " " &当前行("收件市")& " " &当前行("收件区")& " " &当前行("收件地址") '收件地址
rt.Cells(6,1).Style.Font = New Font("微软雅黑",8, FontStyle.Regular) '设置字体
rt.Cells(5,0).Text= "收"
rt.Cells(5,0).Style.Font = New Font("微软雅黑", 14, FontStyle.Bold) '设置字体
rt.Cells(7,0).Text= "寄"
rt.Cells(7,0).Style.Font = New Font("微软雅黑", 14, FontStyle.Bold) '设置字体
rt.Cells(7,1).Text= 当前行("寄件人") & " "& 当前行("寄件电话")  '寄件人电话
rt.Cells(8,1).Text= 当前行("寄件省")& " "&当前行("寄件市")& " "&当前行("寄件区")& " "&当前行("寄件地址") '寄件地址
rt.Cells(8,1).Style.Font = New Font("微软雅黑",8, FontStyle.Regular) '设置字体
rt.Cells(9,0).Text=自定义 '内件
rt.Cells(9,0).Style.Font = New Font("微软雅黑",8, FontStyle.Bold) '设置字体
rt.Cells(10,0).Text= "本次服务适用于中通官网(www.zto.com)公示的快递服务协议条款.您对此单的签收代表您已收到快件且包装完好无损."
rt.Cells(10,0).Style.Font = New Font("微软雅黑",6, FontStyle.Regular) '设置字体
rt.Cells(10,2).Text=  打印(2) '当前行(20)  '退件标识
rt.Cells(10,2).Style.Font = New Font("微软雅黑",14, FontStyle.Bold) '设置字体
rt.Cells(4,3).Text= " 已验视 " & Chr(13) & Chr(10) & " 已实名"
rt.Cells(4,3).Style.Font = New Font("微软雅黑",9, FontStyle.Bold) '设置字体
rt.Cells(4,3).Style.GridLines.All = new Prt.LineDef(0.5,Color.Black) '设置网格颜色
Dim rg As New prt.RenderGraphics
Dim Bar As New BarCodeBuilder
Bar.Symbology = Barpro.Symbology.Code128
bar.Code = 当前行("运单编号")    '条形码
rg = new prt.RenderGraphics
bar.DrawOnCanvas(rg.Graphics,0,0,1)
rt.Cells(2,0).RenderObject = rg  '将单元格内容设置为图片对象rm
Dim rbc As New prt.RenderBarCode()
rbc.Height = 1
rbc.BarCodeType = BarCodeEnum.Code128
rbc.BarDirection = BarDirectionEnum.Up
rbc.Text = 当前行("运单编号")
rbc.ShowText = False
rt.Cells(5,3).RenderObject = rbc  '将单元格内容设置为图片对象rm
doc.Body.Children.Add(rt) '将表格对象加入到报表中

Dim rt0 As prt.RenderText '定义一个文本对象
rt0 = New prt.RenderText '设置文本对象的内容
rt0.Text = 打印(2) '设置文本内容
rt0.Width = "115" '宽度等于页面宽度
rt0.Height = "245" '高度等于页面高度
rt0.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中对齐
rt0.Style.TextAlignVert = prt.AlignVertEnum.Center '垂直居中对齐
rt0.Style.Font = New Font("微软雅黑",14, FontStyle.Bold) '设置字体
rt0.Style.TextColor = Color.DarkSlateGray '文本颜色为灰色
Doc.WaterMark = rt0 '作为水印使用

Doc.PrinterName = Args(1)
Doc.Preview() '预览报表

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


加好友 发短信
等级:六尾狐 帖子:1483 积分:10551 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/12/24 20:43:00 [显示全部帖子]

不是在预览的时候打印的,是直接调用print打印的。

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


加好友 发短信
等级:六尾狐 帖子:1483 积分:10551 威望:0 精华:0 注册:2018/10/16 11:42:00
  发帖心情 Post By:2019/12/24 20:44:00 [显示全部帖子]

而且我明明有打印网格,在他那边都不出来。。而这个单最奇特,其他都能打印出来,就他打不出来。

 回到顶部