Ver Mensaje Individual
  #4  
Antiguo 20-04-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Reputación: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Estás seguro(a) de que el error dice "error de invalid variant type conversion"? ¿No dirá más exactamente algo como

EVariantTypecastError in module ......
Could not convert variant of type (Null) into type (String)
?

Aunque según creo recordar el estandar SQL indica que una cadena vacía (0 caracteres) no es lo mismo que Null, en DBase, por las pruebas que acabo de hacer, le da lo mismo, la vé como Null, incluso si la cadena sólo tiene espacios en blancos.

El problema es que al acceder al campo tal como lo haces: Tabla['campo'] no se hace correctamente la conversión. Se puede corregir el problema accediendo al campo con Tabla.FieldByName('campo').AsString o bien, como te indica jachguate verificando que no sea Null. Otra forma es poniendo la variable global NullStrictConvert en false y NullAsStringValue = '' para qe todas las conversiones de variants null a cadenas las haga en automático a una cadena vacía.

// Saludos
Responder Con Cita