ASP - captura selectiva

 
Vista:

captura selectiva

Publicado por visinc (11 intervenciones) el 23/07/2001 10:20:31
hola a todos/as, tengo un problemilla con una pagina que estoy haciendo. El caso es que tengo que leer de una base de datos un campo dni que logicamente consta de un numero y al final una letra, el problema es que no todos los usuarios introdujeron su letro por lo que es preciso despreciarla. Mi pregunta es como puedo hacer para almacenar en una variable el valor del campo dni suprimiendo la letra si la hubiera.
Muchas gracias.
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
sin imagen de perfil

RE:captura selectiva

Publicado por David Grimaldi (125 intervenciones) el 23/07/2001 11:46:41
Podrías haber puesto separados los campos número y letra de DNI. Si no puedes cambiar esto puedes crear un programa que acceda a la BD y mediante SQL o con el mismo programa quite el último caracter del campo DNI si este caracter es una letra. Lo malo es que te hayan metido letras delante (si ponen un NIF) o que hayan puesto un guión antes de la letra (p.e. 12345678-A). Entonces deberías comprobar los carácteres y si no son númericos, quitarlos. En VB sería así:

Pongamos que los datos de la conexión ADO esten en 'conex' y hayas declarado un recordset que llamaremos rst, la tabla a cambiar la llamaré

rst.open "SELECT DNI FROM TABLA",conex,adOpenDynamic,adLockOptimistic,adcmdtext
do while not rst.eof
i=1
do while i<=len(rst!DNI)
if not(isnumeric(mid(rst!DNI,i,1) then
rst!DNI=left(rst!DNI,i-1) & mid(rst!DNI,i+1)
rst.update
else
i=i+1
end if
loop
rst.movenext
loop
rst.close

Lo malo de esto que si tu tabla de la BD tiene muchos registros será un poco lento. De todas maneras espero que te sirva.

Un saludo:
David Grimaldi
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