以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- 扫条码提取信息 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=82684)
|
-- 作者:foxtable-im
-- 发布时间:2016/3/22 19:36:00
-- 扫条码提取信息
此主题相关图片如下:扫条码.png

此主题相关图片如下:客户信息.png

|
-- 作者:foxtable-im
-- 发布时间:2016/3/22 19:42:00
--
如何实现表“开张数”《条形码》列扫入条码后,《账户编号》列自动提取第7位数后9位数,《账期》列提取第16位数后的4位数,《金额》列提取第24位数后的8位数,并保 留两位小数。《账户编号》列提取数字后需要与表“客户信息”的“账户编号”匹配,然后自动将表中的公司名字,业务种类,服务类型,代理商,自动填充到开张数表中。
|
-- 作者:大红袍
-- 发布时间:2016/3/22 20:07:00
--
DataColChanged事件
If e.DataCol.Name = "开张数" Then If e.newvalue.length >= 32 Then e.DataRow("账户编号") = e.newvalue.substring(6, 9) e.DataRow("账期") = e.newvalue.substring(15, 4) e.DataRow("金额") = e.newvalue.substring(24, 8) Else e.DataRow("账户编号") = Nothing e.DataRow("账期") = Nothing e.DataRow("金额") = Nothing End If End If
If e.DataCol.name = "账户编号" Then Dim fdr As DataRow = DataTables("客户信息").find("账户编号 = \'" & e.newvalue & "\'") If fdr Is Nothing Then e.DataRow("公司名字") = Nothing e.DataRow("业务种类") = Nothing Else e.DataRow("公司名字") = fdr("公司名字") e.DataRow("业务种类") = fdr("业务种类") End If End If
|
-- 作者:foxtable-im
-- 发布时间:2016/3/23 10:23:00
--
没有提取到
|
-- 作者:大红袍
-- 发布时间:2016/3/23 10:24:00
--
If e.DataCol.Name = "开张数" Then
改成
If e.DataCol.Name = "条形码" Then
|
-- 作者:foxtable-im
-- 发布时间:2016/3/23 13:16:00
--
还是不行
|
-- 作者:大红袍
-- 发布时间:2016/3/23 15:23:00
--
不可能,上传具体例子测试。
|
-- 作者:foxtable-im
-- 发布时间:2016/3/23 17:32:00
--
此主题相关图片如下:开张数.png

此主题相关图片如下:客户信息.png

|
-- 作者:狐狸爸爸
-- 发布时间:2016/3/23 17:35:00
--
If e.DataCol.Name = "条形码" Then If e.newvalue.length >= 32 Then e.DataRow("账户编号") = e.newvalue.substring(6, 9) e.DataRow("账期") = e.newvalue.substring(15, 4) e.DataRow("金额") = e.newvalue.substring(24, 8) Else e.DataRow("账户编号") = Nothing e.DataRow("账期") = Nothing e.DataRow("金额") = Nothing End If End If
If e.DataCol.name = "账户编号" Then Dim fdr As DataRow = DataTables("客户信息").find("账户编号 = \'" & e.newvalue & "\'") If fdr Is Nothing Then e.DataRow("公司名字") = Nothing e.DataRow("业务种类") = Nothing Else e.DataRow("公司名字") = fdr("公司名字") e.DataRow("业务种类") = fdr("业务种类") End If End If
|
-- 作者:大红袍
-- 发布时间:2016/3/23 17:45:00
--
上传foxtable例子测试怎样不行。
|