以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [原创]表达式列用身份证列取性别  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=84311)

--  作者:刘林
--  发布时间:2016/4/28 10:02:00
--  [原创]表达式列用身份证列取性别
请问表中加个性别列(表达式列)取身份证列的性别如何写表达式?
--  作者:大红袍
--  发布时间:2016/4/28 10:10:00
--  
iif(len(第一列) >= 17, iif(convert(substring(第一列, 17, 1),\'System.Int64\') % 2 = 1, \'男\', \'女\'), null)
--  作者:刘林
--  发布时间:2016/4/28 10:25:00
--  
谢谢!太实用了,高手,我另有一个问题请教一下,用身份证号做为相片的文件名,批量将相片导入到相片字段,一个按键搞定。
--  作者:大红袍
--  发布时间:2016/4/28 10:30:00
--  

1、你相片的文件名是 身份证.jpg 这样?

 

2、那你直接写dataDataColChanged事件,控制图片列的内容就行。

 

If e.DataCol.Name = "身份证" Then
    If e.NewValue = Nothing Then
        e.DataRow("图片") = Nothing
    Else
        e.DataRow("图片") = e.newvalue & ".jpg"
    End If
   
End If

3、不会做,上传具体实例


--  作者:老鼠
--  发布时间:2017/5/20
--  
学习正,请问@大红袍:iif(len(第一列) >= 17, iif(convert(substring(第一列, 17, 1),\'System.Int64\') % 2 = 1, \'男\', \'女\'), null) 这个公式能解释下吗?
--  作者:有点蓝
--  发布时间:2017/5/20 8:27:00
--  

len(第一列) >= 17  -- 身份证长度是否大于17位

convert(substring(第一列, 17, 1),\'System.Int64\') % 2 = 1 -- 判断第17位数字是否是奇数,奇数为男,偶数为女