时间:2022-07-27 01:02:09
【摘 要】组织机构代码证的办理工作对所采集信息的准确性有严格的要求。而办证系统对于数据的有效性没有审核措施。本文拟通过利用EXCEL对代码数据常见问题进行检查。
【关键词】组织机构代码 数据 验证
1 组织机构代码证简介
组织机构代码是对中华人民共和国境内依法注册、依法登记的机关、企业、事业单位、社会团体及其他组织颁发的全国范围内唯一的、始终不变的法定标识。可以理解为单位的身份证号码。
1989年我国建立组织机构代码统一制度以来,河南省已对55万余个组织机构赋予了统一代码。目前,代码已广泛应用于财政、税务、银行、公安、统计、外汇、人事、劳动保障、质监等近二十多个部门,在社会和经济事务管理领域中发挥了重要作用。对建立社会主义市经济体制和推动社会进步具有十分重要的意义。
2 代码证信息采集过程中存在的问题
在目前代码证信息采集过程中,主要依靠人工对办证单位提供的原始资料进行核对,并将信息录入代码办证系统。但这种方式存在一种弊端,那就是人工检查方式费时、费力,且易出错。笔者在工作中将代码数据自动导入EXCEL,利用EXCEL强大的数据审核功能,按限定的条件对数据进行检查,并将结果显示出来。这样一来,将人员从繁杂的检查工作中解放出来,起到了事半功倍的作用。
3 应用实例
代码办证系统采用SQL数据库,安装完成后自动生成名为code2db的数据源,并指向c:\\code\\code.db数据库。
设将导入的办证日期、作废日期、身份证号、电话号码在EXCEL中对C、D、E、F列,本例对第3行数据进行检查。
3.1 对证书有效的验证(要求不大于四年)
公式:=IF((D3-C3)>1460,“不正确”,“正确”)
3.2 对电话号码的验证
公式:=IF(OR(LEN(F3)=11,(AND(LEN(F3)=13,MID(F3,1,4)=“0379”))),“正确”,“不正确或分机”)
注:对手机和固定电话长度进行验证,且对固话区号验证。
3.3 对身份证号码进行分析,分别得出出生日期、性别、年龄,并对18位身份证号校验位进行验证
3.3.1 从身份证号得出出生日期
公式:=IF(LEN(E3)=15,“19”&MID(E3,7,2)&“年”&MID(E3,9,2)&“月”&MID(E3,11,2)&“日”,MID(E3,7,4)&“年”&MID(E3,11,2)&“月”&MID(E3,13,2)&“日”)
3.3.2 从身份证号得出性别
公式:=IF(MOD(IF(LEN(E3)=15,MID(E3,15,1),MID(E3,17,1)),2)=1,“男”,“女”)
3.3.3从身份证号得出年龄
公式:=IF(E2<>“”,DATEDIF(TEXT((LEN(E2)=15)*19&MID(E2,7,6+(LEN(E2)=18)*2),“#-00-00”),TODAY(),“y”),)
3.3.4对18位身份证号检验位的验证
该功能的实现需自定义一个函数SFZJY。
Public Function SFZJY(sfz)
On Error Resume Next
Dim s1, s2, jym
s1 = “ 7 910 5 8 4 2 1 6 3 7 910 5 8 4 2”
s2 = “10X98765432”
If Len(sfz) <> 15 And Len(sfz) <> 18 Then
SFZJY = “身份证长度不对”
'测试15位身份证的信息
ElseIf Len(sfz) = 15 And Val(Mid(sfz, 9, 2)) > 12 Then
SFZJY = “出生月份错误!”
ElseIf Len(sfz) = 15 And Val(Mid(sfz, 11, 2)) > 31 Then
SFZJY = “出生日子错误!”
ElseIf Len(sfz) = 15 Then
SFZJY = “ ”
'测试18位身份证的信息
ElseIf Len(sfz) = 18 And Val(Mid(sfz, 11, 2)) > 12 Then
SFZJY = “出生月份错误!”
ElseIf Len(sfz) = 18 And Val(Mid(sfz, 13, 2)) > 31 Then
SFZJY = “出生日子错误!”
Else
newid = Left(sfz, 17)
jym = 0
For i = 1 To 17
jym = jym + Val(Mid(s1, i * 2 - 1, 2)) * Val(Mid(newid, i, 1))
Next i
If Mid(s2, jym Mod 11 + 1, 1) <> Mid(sfz, 18, 1) Then
SFZJY = “校验位错,应为:” & Mid(s2, jym Mod 11 + 1, 1)
Else
SFZJY = “正确”
End If
End If
End Function
4 应用成果
该软件在2008年7月10日举办的河南省代码业务管理提高班上进行讲解演示,并在全省100多个基层办证点应用,取得了良好效果。
(作者单位:河南洛阳市质量技术监督局)