Visual Basic - NUEVO

Life is soft - evento anual de software empresarial
 
Vista:

NUEVO

Publicado por SELDA (48 intervenciones) el 18/07/2007 21:21:55
Hola de nuevo a todos, tengo esta duda, tengo el siguiente codigo, para enviar un dato a un cuadro de texto, muy amablemente nuevo me ayudo y si funciona, pero cuando quiero poner otro campo que no sea no_ensamble me marca un error, es el siguiente : USO NO VALIDO DEL NULL ...
que es lo que tengo mal ??? o que es lo que estoy omitiendo ?

Private Sub Texto29_GotFocus()
Dim sql As Database
Dim tabla As Recordset
Dim strSQL As String
Dim strPalabrabuscada As String

strPalabrabuscada = Texto25

Set sql = DBEngine.OpenDatabase("E:\PROYECTO.mdb")
strSQL = "SELECT * FROM Tubular where Tubular.no_ensamble like '*" & strPalabrabuscada & "*'"
Set tabla = sql.OpenRecordset(strSQL, dbOpenDynaset)
Texto29.Text = tabla!DESCR
End Sub
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

Utiliza IsNull( )

Publicado por Pepe Polainas (14 intervenciones) el 18/07/2007 21:56:42
Lo que sucede es que el campo DESCR no tiene un valor correcto, sino NULO.
Para evitar este error podrías usar la función IsNull() de VB, más o menos así:

If Not IsNull( tabla!DESCR ) Then
Texto29.Text = tabla!DESCR
Else
Texto29.Text = ""
En If
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:Utiliza IsNull( )

Publicado por SELDA (48 intervenciones) el 18/07/2007 22:01:02
sip pero lo que quiero es mostrar el campo DESCR, que se supone esta en el recordset o no ???? ...

GRACIAS POR SU AYUDA
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:Utiliza IsNull( )

Publicado por Pepe Polainas (14 intervenciones) el 18/07/2007 22:05:18
Sí, el campo está en el recordset, pero no contiene algo, su contenido es nulo; por eso sucede el error que te dá.
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

Otra forma

Publicado por Pepe Polainas (14 intervenciones) el 18/07/2007 22:07:32
Si no quieres usar IsNull( ) intenta de esta otra manera:

Texto29.Text = tabla!DESCR & ""
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:Otra forma

Publicado por miguel (13 intervenciones) el 18/07/2007 22:50:03
Si el dato que buscas no contiene nada, puedes asignarle un "blanco" tal como te indica Pepe Polainas o de esta otra forma:

Texto29.Text = IIf(IsNull(TURECORDSET.Fields("TUCAMPO")), "", (TURECORDSET("TUCAMPO")))

Espero te sirva
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:Utiliza IsNull( )

Publicado por ivan el temible (11 intervenciones) el 18/07/2007 22:54:43
andá, ahora resulta que el nuevo se llama pepe polainas.
de lo que se entera uno aqui...
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

¿Quién te dijo eso?

Publicado por Pepe Polainas (14 intervenciones) el 18/07/2007 23:04:03
¿Y de dónde sacaste semejante barbaridad, "ivan el temible"?
Pero, bueno, por mi parte mejor aquí muere la polémica, puedes creer lo que gustes.
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:¿Quién te dijo eso?

Publicado por Nuevo el original (1 intervención) el 18/07/2007 23:12:06
lo "sacó" desde el principio porque la pregunta era para NUEVO y vos le contestais
quien te manda meterte en donde no te llaman
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