Foxtable(狐表)用户栏目专家坐堂 → [求助]


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

主题:[求助]

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


加好友 发短信
等级:婴狐 帖子:4 积分:126 威望:0 精华:0 注册:2013/3/14 10:21:00
[求助]  发帖心情 Post By:2016/11/17 16:50:00 [只看该作者]

自己做了一个通过身份证识别年龄、性别和出生日期的程序,可是每次执行以后,再次打开foxtable,出生年月里的日期总是空的,其他两项年龄和性别是在的,必须用“重置列”的命令才可以再次计算出生日期。请专家看一下我的程序,哪里可以改进,谢谢!

If e .DataCol . Name = "身份证号码" Then '如果更改的是身份证号码列
    If e .DataRow . IsNull( "身份证号码" ) Then '身份证号码是否为空
        e .DataRow ( "出生年月" ) = Nothing '如果为空,则清除出生日期
        e .DataRow ( "性别") = Nothing
    Else
        If ValidPIN (e.DataRow("身份证号码")) = True '校验身份证号码且正确
            e .DataRow ( "出生年月" ) = ReadBirthday ( e. DataRow ("身份证号码" ))
            '从身份证号码列中提取出生日期
            e .DataRow ( "性别") = ReadSex (e .DataRow ( "身份证号码" ))
            '从身份证号码中提取性别
            Dim t As TimeSpan = today - CDate(e.DataRow ("出生年月")) '计算年龄
            e.DataRow ("年龄") = Math.Round(t.TotalDays / 365.2422,2)
        Else
            MessageBox.Show("身份证号码错误,请核实","提示") '提示消息框'
            e.DataRow( "身份证号码" ) = Nothing
        End If
    End If
End If



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


加好友 发短信
等级:超级版主 帖子:110450 积分:562116 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/17 17:59:00 [只看该作者]

出生年月是表达式列来的吧,改为数据列

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


加好友 发短信
等级:婴狐 帖子:4 积分:126 威望:0 精华:0 注册:2013/3/14 10:21:00
佩服  发帖心情 Post By:2016/11/18 10:24:00 [只看该作者]

佩服!

 回到顶部