Foxtable(狐表)用户栏目专家坐堂 → 二维码


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

主题:二维码

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
二维码  发帖心情 Post By:2016/8/2 11:53:00 [只看该作者]


datacolchanging代码:
If e.DataCol.Name = "SN" Then
    Dim str As String = e.NewValue
    Dim idx1 As Integer = str.IndexOf("MAC:")
    Dim idx2 As Integer = str.IndexOf("H/W:")
    Dim length As Integer
    If str.Contains("SN:") Then
        length  = IIF(idx1 <> -1,idx1-3,IIF(idx2 <> -1,idx2-4,str.Length - 3))
        e.NewValue = str.SubString(3, length)
    Else
        e.NewValue =str
    End If
    If str.Contains("MAC:") Then
        If idx2 = -1 Then
            e.DataRow("MAC") = str.SubString(idx1+4)
        Else
            e.DataRow("MAC") = str.SubString(idx1+4, idx2-idx1-4)
        End If
    End If
    If str.Contains("H/W:") Then
        e.DataRow("HW") = str.substring(idx2+4)
    End If
End If
正常情况扫描到一个二维码为:SN:123 MAC:111 HW: 444
那么根据datacolchanging代码,自动就是SN列为123,MAC列为111,HW列为444。
可是有一部分二维码格式不是作为一行的,是分行的。如:
SN:123
MAC:111
HW:444.
那么这样一扫二维码,就变为了第一行SN列为123. 第一行MAC列和HW都为空了。第二行的SN列为111,第三行的SN列为444.
需求是,如果遇到这样的分行的二维码格式。希望能做到把第二行的SN值111和444写入到第一行对应的MAC列和HW列。并把第二行和第三行删除掉
[此贴子已经被作者于2016/8/2 11:53:35编辑过]

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


加好友 发短信
等级:二尾狐 帖子:569 积分:4210 威望:0 精华:0 注册:2015/5/13 8:32:00
  发帖心情 Post By:2016/8/2 12:04:00 [只看该作者]

http://www.foxtable.com/webhelp/index.htm?page=2629.htm

回车 换行
[此贴子已经被作者于2016/8/2 12:04:36编辑过]

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


加好友 发短信
等级:管理员 帖子:47448 积分:251060 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2016/8/2 12:38:00 [只看该作者]

 替换掉回车换行就行了。

Dim  s As string = 原来的值
s= s.Replace(vblf,"").Replace(vbcr,"")

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/8/2 13:57:00 [只看该作者]

进入编辑状态再扫描,然后事件中用个空格替换掉换行符

dim sn = e.NewValue.Replace(chr(10), "").Replace(chr(13), " ")


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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/8/2 16:08:00 [只看该作者]

StartEditing这个事件在哪呢?我好像没找到。

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/8/2 16:21:00 [只看该作者]

帮助里搜索“StartEditing


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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/8/2 16:33:00 [只看该作者]

表属性---事件里面仅仅找到
StartEdit

开始编辑的时候执行。

不是这个吧


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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/8/2 16:55:00 [只看该作者]

StartEdit才是事件,StartEditing是table的函数

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


加好友 发短信
等级:五尾狐 帖子:1165 积分:8129 威望:0 精华:0 注册:2015/3/30 10:44:00
  发帖心情 Post By:2016/8/2 16:57:00 [只看该作者]

进入编辑状态再扫描,然后事件中用个空格替换掉换行符

dim sn = e.NewValue.Replace(chr(10), "").Replace(chr(13), " ")

这个代码需要写到哪了去?

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


加好友 发短信
等级:狐神 帖子:5015 积分:25363 威望:0 精华:0 注册:2015/8/18 9:21:00
  发帖心情 Post By:2016/8/2 17:24:00 [只看该作者]

比如1楼的代码

datacolchanging代码:
If e.DataCol.Name = "SN" Then
    Dim str As String = e.NewValue.Replace(chr(10), "").Replace(chr(13), " ")
    Dim idx1 As Integer = str.IndexOf("MAC:")
    Dim idx2 As Integer = str.IndexOf("H/W:")
    Dim length As Integer
    If str.Contains("SN:") Then
        length  = IIF(idx1 <> -1,idx1-3,IIF(idx2 <> -1,idx2-4,str.Length - 3))
        e.NewValue = str.SubString(3, length)
    Else
.......

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