免费下载应用软件、交流使用经验。

软件下载 经验交流 软件开发 专题论述 请君留言 网站介绍 休闲时光 返回主页
 
身份证15位自动转换成18位的函数

作者:本人     来源:本站

    最近在《梅子论坛》中看到多个身份证号码15位自动转换为18位的程序,复制下来并略加修改,形成了下面的程序。调用这个函数可以很方便地自动将15位的身份证号码转换为18位。

PARAMETERS cSFZ15
cSFZ15 = ALLTRIM(cSFZ15)
IF LEN(cSFZ15)<>15 AND LENC(cSFZ15)<>15
    RETURN "不是15位身位证号码!"
ENDIF 
    IF NOT CHRTRAN(cSFZ15,"1234567890","")==""
        RETURN "含有非数字,不是身位证号码!"
    ENDIF
    cSFZ17 = STUFF(cSFZ15,7,0,'19')
    cBy17='7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2'
    cCheck='10X98765432'
    nCheck=0
    FOR nCnt=1 TO 17
        nCheck=nCheck+VAL(SUBSTR(cSFZ17,nCnt,1))*VAL(GETWORDNUM(cBy17,nCnt,','))
    NEXT
    RETURN cSFZ17+SUBSTR(cCheck,nCheck%11+1,1)
ENDIF

注:

发表日期:2009-2-22     修改日期:

备案序号:赣ICP备05002359号

建议使用1024*768分辩率浏览 ☆版权所有 摘抄或转载须得到书面许可☆ Hujiajun ©1999,2016
E-Mail: hu-jj@21cn.com