SQL - Digito Verificador

 
Vista:

Digito Verificador

Publicado por Markos (3 intervenciones) el 10/11/2004 15:39:57
Hola Amigos, espero ke se encuentren bien.

Les cuento mi problema, aka en Chile (mi pais) se utiliza un codigo para identificar en forma unica a las personas, este recive el nombre de Rut. El Rut consta de n cantidad de digitos ma uno llamado "DIGITO VERIFICADOR" (DV) el cual es separado del resto por un guion (-), por ejemplo: 14.136.893-1.

El DV es el resultado de una formula aplicada a los demas digitos (esto sin la participacion de los puntos (.) ni del guion (-).

La idea es realizar esta formula en un procedimiento SQL, lo malo es ke no tengo mucha idea de como hacerlo. Es por esto ke te contacto para ver la posibilidad de ke puedas guiarme en lo ke respecta a la transformacion del siguiente codigo, el cual esta en VB.Net (Esta funcion realiza la verificacion del DV correctamente, pero no se como traspasarla a codigo SQL):
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Digito Verificador (Continuacion)

Publicado por Marko (3 intervenciones) el 10/11/2004 15:40:52
Codigo: Este codigo resibe el siguiente parametro 14136893 el cual corresponde al Rut 14.136.893-1, devolviendo en "Modulo" el DV, ke en este caso sera un 1.

Function Modulo_11(ByVal Rut As String) As String
Dim Arreglo(8) As Integer
Dim Resultado As Integer = 0, I As Integer
Dim Array_Rut(8) As String
For I = Rut.Length + 1 To 9
Rut = "0" + Rut
Next
Arreglo(0) = 4
Arreglo(1) = 3
Arreglo(2) = 2
Arreglo(3) = 7
Arreglo(4) = 6
Arreglo(5) = 5
Arreglo(6) = 4
Arreglo(7) = 3
Arreglo(8) = 2
For I = 0 To 8
Array_Rut(I) = Rut.Chars(I)
Resultado = Resultado + (CInt(Array_Rut(I)) * Arreglo(I))
Next
Resultado = 11 - (Resultado Mod 11)
Select Case Resultado
Case 10 : Modulo = "K"
Case 11 : Modulo = "0"
Case Else
Modulo = CStr(Resultado)
End Select
Return Modulo
End Function

Espero haber sido claro en la explicacion del problema, ojala puedan ayudarme.
De ante mano te agradesco vuestra ayuda, deseandoles bienestar me despido atte. Markos.

PD. Cualkier duda referente a la explicacion solo hazmela llegar.

Chau
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Digito Verificador (Continuacion)

Publicado por Isaías Islas (5072 intervenciones) el 11/11/2004 00:05:46
Hola Marcos

Ya te envie una funcion para SQL 2000, espero que tenga exito.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Digito Verificador (Continuacion)

Publicado por Markos (3 intervenciones) el 11/11/2004 15:43:18
Muy agradecido por tu ayuda Isaías, gracias de verdad.

Chau Markos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar