Foxtable(狐表)用户栏目专家坐堂 → 扫码输入多行数据问题


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

主题:扫码输入多行数据问题

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


加好友 发短信
等级:婴狐 帖子:44 积分:447 威望:0 精华:0 注册:2023/5/5 11:55:00
扫码输入多行数据问题  发帖心情 Post By:2024/5/23 10:14:00 [只看该作者]

蓝版,您好:

我用如下代码对下表的多行数据进行操作形成一个二维码:






Dim doc As New PrintDoc
Dim dus As New list (Of String)
dus.add("工单编号")
dus.add("工单性质")
dus.add("客户")
Dim rg As prt.RenderGraphics
Dim Bar As New BarCodeBuilder
Bar.Symbology = Barpro.Symbology.QRCode
Doc.Stacking = prt.StackingRulesEnum.InlineLeftToRight
For Each r As Row In Tables("全局工单列表").Rows
Dim u As String = "" ‘u为空格

For Each s As String In dus
  
u = u & "*" & r(s)
   Next
 u = u.Substring(1, u.Length - 1)

    bar.Code = bar.Code & "|" & u
 
Next
bar.Code = bar.Code.Substring(7, bar.Code.Length - 7)
 rg = New prt.RenderGraphics
    bar.DrawOnCanvas(rg.Graphics, 0, 0, 1)
    rg.Style.Spacing.All = 3
    Doc.Body.Children.Add(rg)
Doc.Preview()



我测试的场景是这个表只有三行数据,形成二维码后再用扫描枪扫这个二维码,得到如下预期的字符串:
全局工单202304-001*全局工单*海天|全局工单202304-002*全局工单*大建|全局工单202304-003*全局工单*宇发
但我用20行数据取测试时,得到一个非常大的二维码,如下图右(3行数据二维码和20行数据二维码的对比),而且也扫不出内容了。



我的问题是:数据行增多,形成的二维码能否保持大小不变,且能用扫描枪扫出内容?


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


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

二维码是靠黑点的排列来存储数据的,需要存储的内容越多,肯定就越大。并且存储的内容是有限制的。

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


加好友 发短信
等级:婴狐 帖子:44 积分:447 威望:0 精华:0 注册:2023/5/5 11:55:00
  发帖心情 Post By:2024/5/23 10:22:00 [只看该作者]

能否通过更换扫描枪或者换另外一种二维码的方式来更好地解决这个问题

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


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

理论是可以的。这个建议咨询扫描枪生产厂家。另外大容量的二维码编码格式可能就需要第三方的组件支持了

 回到顶部