Control para validar Número Seguridad Social España en Visual Basic
Te muestro el código para validar el NASS (Número de afiliación a la
Seguridad Social) en Visual Basic .NET para Windows Form, si quieres
puedes descargarte el archivo con el control terminado que incluye
además otro para validar un DNI.
La cadena que se valida está conpuesta de doce caracteres, "aabbbbbbbbcc", donde los dos primeros ("aa") son el indicativo provincial, los ocho siguientes ("bbbbbbbb") indican la cuenta de cotización de la persona, y los dos últimos ("cc") son los dígitos de control.
Private Sub ValidarNass()
dim strCodigo as String = Me.TextBox1.Text
'Dos primeros dígitos de la cadena "aabbbbbbbbcc" en strCodigo
Dim a As Long = CInt(strCodigo.Text.Substring(0, 2))
'Ultimos dos dígitos de la cadena "aabbbbbbbbcc" en strCodigo
Dim c As Long = CInt(strCodigo.Text.Substring(10, 2))
'Digitos restantes por extraer de la cadena "aabbbbbbbbcc" en strCodigo
Dim b As Long = CInt(strCodigo.Text.Substring(2, 8))
Dim d As Long = Nothing
If b < 10000000 Then
d = b + a * 10000000
Else
d = CLng(strCodigo.Text.Substring(0, 2) & strCodigo.Text.Substring(2, 8))
End If
Dim dc As Long = d Mod 97
If dc = c Then
'Es correcto
Me.TextBox1.BackColor = Drawing.Color.PaleGreen
Else
'es incorrecto
Me.TextBox1.BackColor = Drawing.Color.MistyRose
End If
End Sub