以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  数据格式化问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=87424)

--  作者:鲁吉
--  发布时间:2016/7/11 13:57:00
--  数据格式化问题
身份证读卡器读取的日期格式为:YYYYMMDD(如20160711),怎么让它直接变成2016年7月11日?没有存文本文档。
--  作者:大红袍
--  发布时间:2016/7/11 14:14:00
--  

dim str as string = "20160711"

Dim d As Date = new Date(str.substring(0,4), str.SubString(4,2), str.SubString(6,2))

msgbox(d)


--  作者:鲁吉
--  发布时间:2016/7/11 17:15:00
--  

 Dim s As String =(System.Text.ASCIIEncoding.Unicode.GetString(pucCHMsg))
    If s.Length > 0 Then
        \'分段截取字符串并赋给窗口控件
        Dim r As Row = Tables("农民工实名制信息表").AddNew
        r("姓名") = s.SubString(0,14).Replace(".","-")
        r("性别") = s.SubString(15,1).Replace(".","-")
        r("民族") = s.SubString(16,2).Replace(".","-")
        r("出生日期") =  s.SubString(18,8).Replace(".","-")
        r("家庭住址") = s.SubString(26,35).Replace(".","-")
        r("身份证号") = s.SubString(61,18).Replace(".","-")
        r("发证机关") = s.SubString(79,14).Replace(".","-")
        r("签发日期") = s.SubString(94,8).Replace(".","-")
        r("有效日期") = s.SubString(102,8).Replace(".","-")
end if

yi  就是这段代码,除了日项外都正常了,日期一直是:20160711格式,不知道怎么写了。

[此贴子已经被作者于2016/7/11 17:22:54编辑过]

--  作者:鲁吉
--  发布时间:2016/7/11 18:35:00
--  
这部分解决了,就差照片了
--  作者:大红袍
--  发布时间:2016/7/12 0:35:00
--  

读卡后,在项目里会有一个 pic.wlt 的文件吧?然后直接解码就行了啊

 

全局代码

 

<DllImport("WltRS.dll", CallingConvention := CallingConvention.StdCall)> _
Private Shared Function GetBmp(pucPHMsg As String, intf As Integer) As Integer
End Function

 

调用

 

GetBmp(ApplicationPath & "zp.wlt", 2)

 

然后就会生成 zp.bmp


--  作者:鲁吉
--  发布时间:2016/7/13 17:44:00
--  

解码也实现了(zp.bmp),但不能把照片文件加入到数据表,在表事件的DrawCell中加入如下代码:

If e.Col.Name = "照片" Then
    Dim s As String = "E:\\baidudownload\\农民要综合管理系统\\images\\zp.bmp"
    e.Graphics.DrawImage(getImage(s),e.X,e.Y,e.Width,e.Height)
End If

 

出现运行错误提示:

 

.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2016.6.26.1
错误所在事件:表,农民工实名制信息表,DrawCell
详细错误信息:
调用的目标发生了异常。
值不能为空。
参数名: image

在帮助中看了很长时间也没有找到解决办法,请指教!!


--  作者:大红袍
--  发布时间:2016/7/13 18:09:00
--  

 读取到数据后,把图片拷贝到某目录,即可。

 

FileSys.CopyFile(ApplicationPath & "zp.bmp", ProjectPath & "\\Attachments\\" & r("身份证号码") & ".bmp",True) \'照片复制到Attachments目录
r("照片") = r("身份证号码") & ".bmp"


--  作者:鲁吉
--  发布时间:2016/7/13 18:23:00
--  
这个做了,但表照片列中没有照片文件
--  作者:大红袍
--  发布时间:2016/7/13 18:31:00
--  

 照片列,改成图片列。

 

 只要执行了7楼的代码,就肯定能拷贝文件并显示文件啊。


--  作者:鲁吉
--  发布时间:2016/7/13 23:52:00
--  
5楼的代码是错的