Visual Basic - Campos MEMO usando RDO

Life is soft - evento anual de software empresarial
 
Vista:

Campos MEMO usando RDO

Publicado por Diego Campillo (17 intervenciones) el 14/09/2001 14:25:17
Hola a todos,
estoy creando una aplicación en Visual Basic 6.0 usando RDO, y al recuperar un campo memo, independientemente de que tenga valor o no me lo reconoce como nulo, con el pertinente error en tiempo de ejecución, el 94.
Este el código que uso para recuperar el campo Notas de mi base de datos:
If IsNull(rsViv!notas) = True Then
txtNotas = ""
Else
txtNotas = rsViv!notas
End If
En este código cuando el campo tiene un valor Nulo se mete por el Then, en cambio cuando contiene texto, muy a pesar mio, se sigue metiendo por el Then, y no por el Else como debería ser.
El motor de base de datos que uso es Access y SQL Server, por que dependiendo del cliente se le cambia el DSN de conexión y se le especifica una u otra. El tipo de datos en Access es MEMO y en SQL Server 7.0 es ntext o text.

Gracias por vuestra ayuda.
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:Campos MEMO usando RDO

Publicado por alberto (278 intervenciones) el 14/09/2001 14:51:21
¿Estas Seguro de eso?
En principio yo tuve un problema similar pero el problema no era ese, sino que cuando consultaba un campo memo con IsNull(rsViv!notas), o con cualquier expresión la evaluación erra correcta pero automaticamente el campo perdia su valor con lo que en la siguiente evaluación el valor que tenía rsViv!notas era nulo. y el resto del código no se ejecutaba correctamente.
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:Campos MEMO usando RDO

Publicado por Diego Campillo (17 intervenciones) el 14/09/2001 14:56:34
Gracias Alberto por tu colaboración, pero si estoy seguro de lo que digo. En cualquie caso me gustaría saber como solucionastes tu problema por si me puediese valer a mi con lo que me pasa.

Si se te ocurre algo dimelo, no tengo ni idea de lo que esta pasando, y sólo tengo problemas con el campo memo, el resto de campos funcionan perfectamente.

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:Campos MEMO usando RDO

Publicado por alberto (278 intervenciones) el 15/09/2001 14:26:00
Como el problema era que al hacer la evaluación en IsNull el campo perdía su valor y al intentar ponerlo en el textbox producía un error la solución fue:
Texto.Text = RD!Campo & ""
Que si RD!Campo es Null funciona bién ya que el operador & hace un Casting y convierte Null a ""
Otra solución es asignar el campo a una variable Variant y trabajar con esa variable.

En el otro mensaje te hice el comentario porque la sintaxis es correcta y debería evaluar como tu esperas, pero si antes de llegar a las sentencias en cuestión evaluas el valor de el campo, al llegar a esa sentencia el campo habría perdido su valor, comprueba eso ya que de ser así la solución que te propongo deberías usarla antes de esa primera evaluación del campo.
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:Campos MEMO usando RDO

Publicado por Diego Campillo (17 intervenciones) el 17/09/2001 10:30:44
Muchas gracias Alberto, acabo de probar lo que me comentas y funciona perfectamente.

Te debo una cerveza.
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