Hola,
Esto es un problema grave, no se si os habrá ocurrido a alguno de vosotros.
A veces tengo el problema que la clase OleDbDataReader es inteligente y lo
único que hace es parecer inutil...
Veamos a ver si alguien encontró alguna solución o cual es la razón por la
que me da este fallo...
Tengo una columna en un archivo Excel de NIFs, hay NIFs españoles 000000000X
y número de identificación extranjeros ya pueden ser 12, o 89, o 17567 o
08786 vamos números sin letras.
Empezó a darme el error en un excel sin cabecera, me conectaba a el
diciendole en la opcion HDR que no tenía, y entonces conseguía leer solo los
números, con los NIFs españoles, me devolvía "" y no podía hacer un
GetString(0) porque saltaba la excepción de Cast no válido.
Ahora bien, pensé que era porque el amigo inteligente OleDbDataReader se los
tomaba todos como doubles, o enteros, así las strings no las, podía recoger,
no se porque... pues bien, añadí una cabecera, y con la opción de HDR = YES,
me seguía dando el error, y dije "Fijate seguro que se quia por la primera
fila, y con HDR yes la primera fila es un número.." pues puse HDR a NO y
luego probe a controlar que esa fila me la saltase.
Bien, aleluya pensé cuando me leía los números... está perfecto, hasta que
pasados 6 registros leyendo bien los números y pasandolos a String, no se
porque razón eñ valor que ahora devuelve con los números es DBNULL. y es
imposible hacerle un cast de cualquier tipo... ni tna siquiera acepta un
GetDouble(0) o cualquier otro Get numerico...
Me gustaría que alguien me aclarase cual es mi error, si hago alguno, o si
esto es cierto, no creo que sea problema de código, pero si no sabéis a que
se debe pedidmelo... lo procuraré colgar...
Gracias y Feliz Año Nuevo
Rubén
Leer las respuestas