Foxtable(狐表)用户栏目专家坐堂 → 求助 关于条码问题


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

主题:求助 关于条码问题

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


加好友 发短信
等级:三尾狐 帖子:655 积分:5085 威望:0 精华:0 注册:2013/10/7 22:27:00
  发帖心情 Post By:2024/1/18 10:47:00 [只看该作者]

老师:您好!
表A
是 0003  0001
    0003  0002
    0003  0003
    0003  0004
    0003  0005
    0003  0006
    0003  0007
    0003  0008
    0003  0009
    0003  0010
    0003  0011         
    0003  0012
表B
是01
   02
   03
专业报表共有9列
想把条码的顺序号,分别
1为左边第一列
2为右边后最后一列
 Dim doc As New P r i n t Doc '定义一个报表
    Do c.Pa g e S e t ti n g. L e f t Margin = 10 '设置左边距
    Do c.P age Se t ti n g. R i g h t Margin = 10 '设置右边距
    D o c. P a g e Se t ti n g.To p M a r gin = 10 '设置上边距
    Do c.P a g e Se t t in g .B o t t om Mar gin = 10 '设置下边距
    Dim rt As New pr t.R en d e r T a  b le () '定义一个表格对象
    doc.Stacking = pr t.St ac kin g R u l e s E n u  m .B lo c k T o T o Bot tom
    rt.Width = "Parent.Width" '对象宽度等于页面宽度
    rt.Cols.Count = 7 '置总列数
    rt.Cols(0).Width = 55
    rt.Cols(0).Width = 55
    rt.Cols(1).Width = 9
    rt.Cols(2).Width = 10
    rt.Cols(3).Width = 12
    rt.Cols(4).Width = 25
    rt.Cols(5).Width = 12
    rt.Cols(6).Width = 10
    rt.Cols(7).Width = 9
    rt.Cols(8).Width = 55
    Dim fa As Table = Tables("表A")
    Dim rl As  Table = Tables("表B")
    Dim n As Integer = Tables("表A").Rows.Count-1
    Dim nl As Integer = Tables("表B").Rows.Count-1
    For i As Integer = 0 To 12
        For il As Integer = 0 To 2  ' Step 2     
            Dim i m g As p rt .R en d e r I m age
            Dim Bar As New B a r Code B u i l d er
            Bar.Symbology = B a r p r o.S y m b o l o g y. C o d e 1 28
            B a r. B a r R a t i o = 0.05
            B a r . B a r H e i g h t = 6
            Doc.Stacking = p r t . S t a c k i n g R u l e s E n u m . I n l i n e L e f t T o  Right
            bar.Code = 88982*00001*00001*00001
            i mg = new p r t. R e n d e r I m age
            i m g . Image = b a r . G e t I mage
            Doc.Body.Children.Add(i mg)
            'rt.Cells(i,0).R e n d e r Object = i mg           
rt.Cells(i,0). ? = ? 
rt.Cells(i,8). ? = ? 
        Next
    Next
    Doc.Preview()


此主题相关图片如下:cc.png
按此在新窗口浏览图片
请老师指教!!!
谢谢!

[此贴子已经被作者于2024/1/18 12:22:43编辑过]

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


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/1/18 13:44:00 [只看该作者]

            Dim nl As Integer = Tables("表B").Rows.Count - 1
            Dim m As Integer = 0
            Dim n As Integer = 0
            For i As Integer = 0 To 12
                For il As Integer = 0 To 2 ' Step 2     
                    Dim i m g As p rt.R en d e r I m age
                    Dim Bar As New B a r Code B u i l d er
                    Bar.Symbology = B a r p r o.S y m b o l o g y.C o d e 1 28
                    B a r.B a r R a t i o = 0.05
                    B a r.B a r H e i g h t = 6
                    Doc.Stacking = p r t.S t a c k i n g R u l e s E n u m.I n l i n e L e f t T o Right
                    bar.Code = 88982 * 00001 * 00001 * 00001
                    i mg = New p r t.R e n d e r I m age
                    i m g.Image = b a r.G e t I mage
                    If n Mod 2 = 0 Then
                        rt.Cells(m, 0).RenderObject = img
                    Else
                        rt.Cells(m, 8).RenderObject = img
                        m = m + 1
                    End If
                    n = n + 1
                Next
            Next

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


加好友 发短信
等级:三尾狐 帖子:655 积分:5085 威望:0 精华:0 注册:2013/10/7 22:27:00
  发帖心情 Post By:2024/1/18 15:22:00 [只看该作者]

谢谢老师!
可以了
谢谢!!!

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


加好友 发短信
等级:三尾狐 帖子:655 积分:5085 威望:0 精华:0 注册:2013/10/7 22:27:00
  发帖心情 Post By:2024/1/19 0:06:00 [只看该作者]


老师:   您好!
Dim doc As New Pr i n t Doc '定义一个报表
Dim rt As New pr t.R end er T able() '定义一个表格对象
Do c.Pa g e Set ti n g .L e f t M a r g in = 10 '设置左边距
Do c. P a g e Setting. R i g h t M a r g in = 10 '设置右边距
D o c. P a g e S e t t i n g .T o p M a r g in = 10 '设置上边距
D o c .P a g e S e t t i n g . B o t t o m M a r g i n = 10 '设置下边距
Doc.Stacking = p r t . S t a c k i n g R u l e s E n u m . I n l i n e L e f t T o R i g h t
r t . S p l i t V e r t Behavior = pr t.Sp l i t Be h a v i o r E n u m.Never
rt.Width = "Parent.Width" '对象宽度等于页面宽度
rt.Height = 38
rt.Cols.Count = 11 '置总列数
rt.Cols(0).Width = 30
rt.Cols(1).Width = 15
rt.Cols(2).Width = 13
rt.Cols(3).Width = 10
rt.Cols(4).Width = 12
rt.Cols(5).Width = 23
rt.Cols(6).Width = 12
rt.Cols(7).Width = 10
rt.Cols(8).Width = 13
rt.Cols(9).Width = 15
rt.Cols(10).Width = 30
r t .S t y l e . G r i d L i n e s.All = New P r t . L i n e D e f(0.1, Color.Silver)
r t . S t y l e . T e x t A l i g n H o r z  = p r t . A l i g n H  o r z E n u m.Center '水平居中
rt .S t y l e . T ex t A l i g n V e r t = p r t . Al i g n V e r t E n u m .Center
Dim n l As Integer = 5
Dim k As Integer
If n l Mod 2 = 0 Then
    k = n l \ 2
E l s e I f   n l Mod 2 = 1 Then
    k = n l \ 2 + 1
End If
For il As Integer = 0 To n l-1 
    rt.Rows(il).Height = 16
    Dim i mg As p r t . R e n d e r I mage
    Dim Bar As New B a r C o d e B u i l d er
    Bar.Symbology = B a r p r o . S y m b o l o g y . C o d e 39    
    B a r. B a r Height = 10
    bar.Code = "889820001002" & 001+il
    B a r. Ad d C h e c k S um = False
    i mg = new p r t .R e n d e r I mage
    i mg.Image = b a r . G e t I mage
    If i l Mod 2 = 0 Then
        r t.Cells(i l,0).R e n d e r O b j e c t = i m g
        
    Else
        rt.Cells( i l-1,10).R e n d e r O b j e c t = i m g               '
    End If
Next
doc.Body.Children.Add(rt)
Doc.Preview()
老师: 打印有空行,敬请老师指教!!!,谢谢!!!

图片点击可在新窗口打开查看此主题相关图片如下:dd.png
图片点击可在新窗口打开查看
老师:代码在压缩包内,谢谢!!!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:aa.rar


[此贴子已经被作者于2024/1/19 0:10:53编辑过]

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


加好友 发短信
等级:超级版主 帖子:107135 积分:544918 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/1/19 8:30:00 [只看该作者]

……
rt.Style.TextAlignHorz = prt.AlignHorzEnum.Center '水平居中
rt.Style.TextAlignVert = prt.AlignVertEnum.Center
Dim nl As Integer = 5
Dim k As Integer = 0

For il As Integer = 0 To nl - 1 
    rt.Rows(il).Height = 16
    Dim img As prt.RenderImage
    Dim Bar As New BarCodeBuilder
    Bar.Symbology = Barpro.Symbology.Code39
    ' Bar.BarRatio = 0.2
    Bar.BarHeight = 10
    bar.Code = "889820001002" & 001 + il
    Bar.AddCheckSum = False
    img = New prt.RenderImage
    img.Image = bar.GetImage
    If il Mod 2 = 0 Then
        rt.Cells(k, 0).RenderObject = img
    Else
        rt.Cells(k, 10).RenderObject = img '
         k = k + 1
    End If
Next
doc.Body.Children.Add(rt)
Doc.Preview()

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


加好友 发短信
等级:三尾狐 帖子:655 积分:5085 威望:0 精华:0 注册:2013/10/7 22:27:00
  发帖心情 Post By:2024/1/19 9:43:00 [只看该作者]

老师:
   您好! 
还是多了2 行

图片点击可在新窗口打开查看此主题相关图片如下:ee.png
图片点击可在新窗口打开查看
谢谢老师!!!
谢谢!

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


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

For il As Integer = 0 To nl - 1 
    rt.Rows(k).Height = 16

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


加好友 发短信
等级:三尾狐 帖子:655 积分:5085 威望:0 精华:0 注册:2013/10/7 22:27:00
  发帖心情 Post By:2024/1/19 10:50:00 [只看该作者]

谢谢老师!!!

 回到顶部
总数 18 上一页 1 2