error 94 en tiempo de ejecución VB 6.0 usando ADO
Publicado por javier (13 intervenciones) el 07/05/2014 11:33:02
buenas a todos foreros
He estado buscando en varias páginas sobre este error, aun no conseguí resolverlo, por eso escribo esto, a ver si algún alma caritativa puede responderme :D, mi programa es bastante sencillo, consta de dos cuadros de texto, dos listas y cuatro botones, primero describiré visualmente la incidencia y posteriormente os dejo el código, vamos con la descripción visual:
Cuando inicia el programa sale el formulario con sus dos cuadros de texto, dos listas y sus respectivos botones siguiente y anterior y dos botones de búsquedas, la funcionalidad de esto es recorrer mi base de datos y que en los cuadros de texto salgan los campos conforme vamos avanzando, el botón de siguiente y anterior funcionan (es decir, recorre los campos) pero me produce error 94 en tiempo de ejecución siempre al llegar a un campo (sospecho que incluye algún valor nulo), a parte tengo un botón que realiza esta consulta:"select * from PROVEEDORES where PROVEEDOR like '%" & Text1.Text & "%'" y me añade los campos en una lista, este error es 94 también, pero solo se produce por ejemplo si mi búsqueda tiene solo una letra, es decir si busco "a" me da error pero si busco "ac", no me produce error de ningún tipo y el resultado de la consulta es correcto.
Ahora os escribo parte del código, pongo un botón, una lista, un cuadro de texto. El programa funciona, así que omito la conexión con la BD,el rs y el cierre de ambos, os subrayo donde esta el error:
Private Sub Comsiguiente_Click()
Dim varnull As String
varnull = Text2.Text
If IsNull(varnull) Then
Text2.Text = ""
End If
rs.MoveNext
If rs.EOF Then
rs.MoveFirst
End If
Text1.Text = rs.Fields("PROVEEDOR")
Text2.Text = rs.Fields("ARTICULOS QUE COMERCIALIZA")
End Sub
Private Sub Combuscartodos_Click()
rs.Close
rs.Open "select * from PROVEEDORES where PROVEEDOR like '%" & Text1.Text & "%'", db, adOpenDynamic, adLockOptimistic
List1.Clear
List2.Clear
If Not (rs.EOF And rs.BOF) Then
Do Until (rs.EOF Or rs.BOF)
List2.AddItem (rs.Fields("ARTICULOS QUE COMERCIALIZA"))
List1.AddItem (rs.Fields("PROVEEDOR"))
rs.MoveNext
Loop
Else
Text1.Text = "No se encontró registro"
List1.Clear
End If
rs.Close
rs.Open "select * from PROVEEDORES", db, adOpenDynamic, adLockOptimistic
End Sub
Espero haber realizado bien la pregunta y alguno de ustedes pueda responderme, muchas gracias a todos por vuestro tiempo
He estado buscando en varias páginas sobre este error, aun no conseguí resolverlo, por eso escribo esto, a ver si algún alma caritativa puede responderme :D, mi programa es bastante sencillo, consta de dos cuadros de texto, dos listas y cuatro botones, primero describiré visualmente la incidencia y posteriormente os dejo el código, vamos con la descripción visual:
Cuando inicia el programa sale el formulario con sus dos cuadros de texto, dos listas y sus respectivos botones siguiente y anterior y dos botones de búsquedas, la funcionalidad de esto es recorrer mi base de datos y que en los cuadros de texto salgan los campos conforme vamos avanzando, el botón de siguiente y anterior funcionan (es decir, recorre los campos) pero me produce error 94 en tiempo de ejecución siempre al llegar a un campo (sospecho que incluye algún valor nulo), a parte tengo un botón que realiza esta consulta:"select * from PROVEEDORES where PROVEEDOR like '%" & Text1.Text & "%'" y me añade los campos en una lista, este error es 94 también, pero solo se produce por ejemplo si mi búsqueda tiene solo una letra, es decir si busco "a" me da error pero si busco "ac", no me produce error de ningún tipo y el resultado de la consulta es correcto.
Ahora os escribo parte del código, pongo un botón, una lista, un cuadro de texto. El programa funciona, así que omito la conexión con la BD,el rs y el cierre de ambos, os subrayo donde esta el error:
Private Sub Comsiguiente_Click()
Dim varnull As String
varnull = Text2.Text
If IsNull(varnull) Then
Text2.Text = ""
End If
rs.MoveNext
If rs.EOF Then
rs.MoveFirst
End If
Text1.Text = rs.Fields("PROVEEDOR")
Text2.Text = rs.Fields("ARTICULOS QUE COMERCIALIZA")
End Sub
Private Sub Combuscartodos_Click()
rs.Close
rs.Open "select * from PROVEEDORES where PROVEEDOR like '%" & Text1.Text & "%'", db, adOpenDynamic, adLockOptimistic
List1.Clear
List2.Clear
If Not (rs.EOF And rs.BOF) Then
Do Until (rs.EOF Or rs.BOF)
List2.AddItem (rs.Fields("ARTICULOS QUE COMERCIALIZA"))
List1.AddItem (rs.Fields("PROVEEDOR"))
rs.MoveNext
Loop
Else
Text1.Text = "No se encontró registro"
List1.Clear
End If
rs.Close
rs.Open "select * from PROVEEDORES", db, adOpenDynamic, adLockOptimistic
End Sub
Espero haber realizado bien la pregunta y alguno de ustedes pueda responderme, muchas gracias a todos por vuestro tiempo
Valora esta pregunta


0