Foxtable(狐表)用户栏目专家坐堂 → [求助] 打印标签


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

主题:[求助] 打印标签

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


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2019/1/29 13:09:00 [只看该作者]

版主,上传了,cusotmer part no 在打印预览中换行了。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:标签打印.table


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


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2019/1/29 13:11:00 [只看该作者]

另外, 以下可不可以设定最多只能输入最大100. 总共打印多少次,存在表A中。谢谢。

 

 

Dim count As Integer = 1
If InputValue(count, "提示", "打印多少次?") Then
    Dim doc  As New PrintDoc
    doc.PageSetting.Width = 49  '
    doc.PageSetting.Height = 29
    Doc.PageSetting.LeftMargin = 0
    Doc.PageSetting.TopMargin = 0
   
    Dim t As Table = e.form.controls("table1").Table
    For j As Integer = 1 To count
        For i As Integer = t.TopPosition To t.BottomPosition
            Dim r As Row = t.Rows(i)
            Dim rt As New prt.RenderTable() '定义一个表格对象
            rt.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
            rt.Width = 50 '表格宽度为50mm
            rt.Style.Spacing.All = 2 '和其他对象之间的间隔为2mm
            rt.SplitVertBehavior = prt.SplitBehaviorEnum.Never '避免垂直换页的时候,表格被分割成两部分.
            rt.Cols(0).Width = 20
            rt.cells(0,0).Text = "客户"
            rt.Cells(0,1).Text = r("客户")
            rt.Cells(1,0).Text = "订单号"
            rt.Cells(1,1).Text = r("订单号码")
            rt.Cells(2,0).Text= "数量"
            rt.cells(2,1).Text = r("发货数量")
            doc.Body.Children.Add(rt) '将表格对象加入到报表中
        Next
    Next
    doc.Preview
    'doc.print
End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2019/1/29 15:34:00 [只看该作者]

Dim doc  As New PrintDoc
doc.PageSetting.Width = 69  '
doc.PageSetting.Height = 42
Doc.PageSetting.LeftMargin = 5
Doc.PageSetting.TopMargin = 2
Doc.PageSetting.RightMargin = 0
Dim t As Table = e.form.controls("table1").Table
For i As Integer = t.TopPosition To t.BottomPosition
    Dim r As Row = t.Rows(i)
    Dim rt As New prt.RenderTable() '定义一个表格对象
    Dim rt1 As New prt.RenderText
    rt1.Style.FontBold = True
    rt.Style.FontSize = 12
    rt.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
    'rt.Width = 50 '表格宽度为50mm
    rt.Style.Spacing.All = 2 '和其他对象之间的间隔为2mm
    rt.SplitVertBehavior = prt.SplitBehaviorEnum.Never '避免垂直换页的时候,表格被分割成两部分.
    rt.Cols(0).Width = 50
    rt.cells(0,0).Text = "Customer"
    rt.Cells(0,1).Text = r("客户")
    rt.Cells(1,0).Text = "Order No"
    rt.Cells(1,1).Text = r("订单号码")
    rt.Cells(2,0).Text= "Customer Part No"
    rt.Cells(2,0).Style.WordWrap = False
   
    'rt.Cells(2,0).Style.Font = new font("宋体", 5)
    rt.cells(2,1).Text = r("客户产品代码")
    rt.Cells(3,0).Text= "Part No."
    rt.cells(3,1).Text = r("代码")
    rt.Cells(4,0).Text= "Qty"
    rt.cells(4,1).Text = r("发货数量")
   
    doc.Body.Children.Add(rt) '将表格对象加入到报表中
Next
doc.Preview()


'Doc.PrinterName = "ZDesigner ZM400 300 dpi (ZPL)"
'doc.Print()


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


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2019/1/29 18:23:00 [只看该作者]

版主,另外, 以下可不可以设定最多只能输入最大100. 总共打印多少次,存在表A中。谢谢。

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


加好友 发短信
等级:幼狐 帖子:61 积分:820 威望:0 精华:0 注册:2013/5/7 23:46:00
  发帖心情 Post By:2019/1/29 19:49:00 [只看该作者]

我们也是频繁打印标签,其实也可以采取以下方式,建立一个固定名称的excel或access文件,从foxtable应用中将要打印的数据写入该文件,用第三方的标签打印软件加载这个文件后打印标签,毕竟专业的标签软件无论是模版编写,打印控制等等都会更专业一点

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


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2019/1/29 20:25:00 [只看该作者]

版主, 以下可不可以设定最多只能输入最大100. 总共打印多少次,存在表A中的,列名可以叫打印次次数。谢谢。

 

 

Dim count As Integer = 1
If InputValue(count, "提示", "打印多少次?") Then
    Dim doc  As New PrintDoc
    doc.PageSetting.Width = 49  '
    doc.PageSetting.Height = 29
    Doc.PageSetting.LeftMargin = 0
    Doc.PageSetting.TopMargin = 0
   
    Dim t As Table = e.form.controls("table1").Table
    For j As Integer = 1 To count
        For i As Integer = t.TopPosition To t.BottomPosition
            Dim r As Row = t.Rows(i)
            Dim rt As New prt.RenderTable() '定义一个表格对象
            rt.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
            rt.Width = 50 '表格宽度为50mm
            rt.Style.Spacing.All = 2 '和其他对象之间的间隔为2mm
            rt.SplitVertBehavior = prt.SplitBehaviorEnum.Never '避免垂直换页的时候,表格被分割成两部分.
            rt.Cols(0).Width = 20
            rt.cells(0,0).Text = "客户"
            rt.Cells(0,1).Text = r("客户")
            rt.Cells(1,0).Text = "订单号"
            rt.Cells(1,1).Text = r("订单号码")
            rt.Cells(2,0).Text= "数量"
            rt.cells(2,1).Text = r("发货数量")
            doc.Body.Children.Add(rt) '将表格对象加入到报表中
        Next
    Next
    doc.Preview
    'doc.print
End If


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


加好友 发短信
等级:超级版主 帖子:106067 积分:539428 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/1/29 20:36:00 [只看该作者]

Dim count As Integer = 1
If InputValue(count, "提示", "打印多少次?") Then
    Dim doc  As New PrintDoc
    doc.PageSetting.Width = 49  '
    doc.PageSetting.Height = 29
    Doc.PageSetting.LeftMargin = 0
    Doc.PageSetting.TopMargin = 0
    
    Dim t As Table = e.form.controls("table1").Table
    For i As Integer = t.TopPosition To t.BottomPosition
        Dim r As Row = t.Rows(i)
        r("打印次数") = count
        For j As Integer = 1 To count
            Dim rt As New prt.RenderTable() '定义一个表格对象
            rt.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
            rt.Width = 50 '表格宽度为50mm
            rt.Style.Spacing.All = 2 '和其他对象之间的间隔为2mm
            rt.SplitVertBehavior = prt.SplitBehaviorEnum.Never '避免垂直换页的时候,表格被分割成两部分.
            rt.Cols(0).Width = 20
            rt.cells(0,0).Text = "客户"
            rt.Cells(0,1).Text = r("客户")
            rt.Cells(1,0).Text = "订单号"
            rt.Cells(1,1).Text = r("订单号码")
            rt.Cells(2,0).Text= "数量"
            rt.cells(2,1).Text = r("发货数量")
            doc.Body.Children.Add(rt) '将表格对象加入到报表中
        Next
    Next
    doc.Preview
    'doc.print
End If

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


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2019/1/29 21:21:00 [只看该作者]

非常感谢版主。测试一下,有点问题,当时点第二次打印时原来记录的打印次数被取代了,没有累计加总,第二点,每次最大只能打印100个,能设定吗?麻烦了。

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


加好友 发短信
等级:超级版主 帖子:106067 积分:539428 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2019/1/29 21:33:00 [只看该作者]

1、r("打印次数") = r("打印次数")  + count

2、
If InputValue(count, "提示", "打印多少次?") Then
    if count > 100 then
错误提示并返回




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


加好友 发短信
等级:三尾狐 帖子:795 积分:5880 威望:0 精华:0 注册:2018/11/3 8:24:00
  发帖心情 Post By:2019/1/31 10:31:00 [只看该作者]

版主,再请问一下, 以下出来的结果要每行的间距稍微大一点,该如何调整。

 

Dim count As Integer = 1
If InputValue(count, "提示", "打印多少次?") Then
    Dim doc  As New PrintDoc
    doc.PageSetting.Width = 49  '
    doc.PageSetting.Height = 29
    Doc.PageSetting.LeftMargin = 0
    Doc.PageSetting.TopMargin = 0
    
    Dim t As Table = e.form.controls("table1").Table
    For i As Integer = t.TopPosition To t.BottomPosition
        Dim r As Row = t.Rows(i)
        r("打印次数") = count
        For j As Integer = 1 To count
            Dim rt As New prt.RenderTable() '定义一个表格对象
            rt.Style.GridLines.All = New prt.LineDef '将网格线类型设为默认类型
            rt.Width = 50 '表格宽度为50mm
            rt.Style.Spacing.All = 2 '和其他对象之间的间隔为2mm
            rt.SplitVertBehavior = prt.SplitBehaviorEnum.Never '避免垂直换页的时候,表格被分割成两部分.
            rt.Cols(0).Width = 20
            rt.cells(0,0).Text = "客户"
            rt.Cells(0,1).Text = r("客户")
            rt.Cells(1,0).Text = "订单号"
            rt.Cells(1,1).Text = r("订单号码")
            rt.Cells(2,0).Text= "数量"
            rt.cells(2,1).Text = r("发货数量")
            doc.Body.Children.Add(rt) '将表格对象加入到报表中
        Next
    Next
    doc.Preview
    'doc.print
End If

 回到顶部
总数 41 上一页 1 2 3 4 5 下一页