以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]想做个读取身份证号信息的表  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=11522)

--  作者:yjk1023
--  发布时间:2011/8/1 10:14:00
--  [求助]想做个读取身份证号信息的表

想做个读取身份证号中的性别、出生日期的表,我看帮助中有ReadSex及ReadBirthDay函数,可是我在数据表中设置表达式列的时候不让用,提示ReadSex及ReadBirthDay未定义函数,怎么回事啊?

 

在线求高手解决

注,我用的是试用版


--  作者:blackzhu
--  发布时间:2011/8/1 10:37:00
--  
这个只能用代码,不能用表达式的.
--  作者:yjk1023
--  发布时间:2011/8/1 11:00:00
--  

代码如何做?能给说下步骤吗?


--  作者:狐狸爸爸
--  发布时间:2011/8/1 11:25:00
--  

这个要用代码的,参考:

http://www.foxtable.net/help/topics/0625.htm

 

不过作为初学者,还是按顺序看帮助吧。

 

这是例子:

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目148.rar


--  作者:yjk1023
--  发布时间:2011/8/1 11:33:00
--  

谢了,学习了


--  作者:yjk1023
--  发布时间:2011/8/1 16:12:00
--  

学习总结

1、了解了表属性中datacolchanged事件

2、会简单的写代码了

3、在datacolchanged事件中加了2个功能,实现了年龄和照片的自动输入

4、代码上传,请高手检查、改进

 

If e.DataCol.Name = "身份证号码" Then \'如果更改的是身份证号码列
    If e.DataRow.IsNull("身份证号码") Then \'身份证号码是否为空
        e.DataRow("出生日期") = Nothing \'如果为空,则清除出生日期
        e.DataRow("性别") = Nothing
        e.DataRow("年龄") = Nothing
    Else
        \'否则从身份证号码列中提取出生日期
        e.DataRow("出生日期") = ReadBirthday(e.DataRow("身份证号码"))
        e.DataRow("性别") = ReadSex(e.DataRow("身份证号码"))
         e.DataRow("年龄") = Date.Today.year - ReadBirthday(e.DataRow("身份证号码")).year
    End If
End If
If e.DataCol.name ="姓名" Then
    If e.DataRow.Isnull("姓名") Then
     e.DataRow("照片") = Nothing
    Else
    e.DataRow("照片") = e.DataRow("姓名")+"."+"JPG"
   End If
End If


--  作者:狐狸爸爸
--  发布时间:2011/8/1 16:19:00
--  

不要急,先看两遍使用指南,看三遍开发指南的编程基础和foxtable编程。


--  作者:vker8588
--  发布时间:2011/8/1 18:50:00
--  
学习