Visual Basic - Mover al primer registro

Life is soft - evento anual de software empresarial
 
Vista:

Mover al primer registro

Publicado por Luis Romero (21 intervenciones) el 29/09/2001 17:44:27
Que tal gente, tengo el siguiente problema.....estoy trabajando con ADO.
Defino un recordset de la siguiente forma:
Private WithEvents MySnap As ADODB.Recordset
Luego lo creo:
Set MySnap = New ADODB.Recordset
Luego lo abro a través de la siguiente consulta:
MySnap.Open "SELECT * FROM [Tabla Articulos] WHERE Detalle='*" & txtCampo(1) & "*'", cnn, adOpenDynamic, adLockOptimistic
Muy bien, todo barbaro, el problema está cuando quiero añadir los registros del recordset a un List (por ejemplo).
Cuando quiero moverme al primer registro para empezar a asignar uno por uno hasta el final (MySnap.MoveFirst) me aparece el siguiente error:
"ERROR 3001 EN TIEMPO DE EJECUCION: EL VALOR DE BOF O EOF ES TRUE,LA OPERACION SOLICITADA REQUIERE UN REGISTRO ACTUAL"
Alguna sugerencia????
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:Mover al primer registro

Publicado por Jose (16 intervenciones) el 01/10/2001 14:52:58
Primero: Cuando tu haces un open de una tabla el se posiciona en el primer registro, es decir no tienes que colocar MoveFirst.
Segundo: Si aparece ese error quizas el recordset no tiene nada, es decir la consulta no arroja ningun resultado o en la base de datos no existen registros que cumplan con ese SELECT...
Te recomiendo que cargues en una variable lo que contiene el recordset
Por ejemplo:
a = MySnap(0) \'Esto carga el primer registro, del primer campo de la consulta en la variable a
Si la variable a no contiene nada es porque el recordset no tiene nada tampoco, entonces el problema es del SELECT...
Otra acotacion cuando la consulta no arroja ningun registro los valores del recordset EOF(End Of File) y BOF (Beging Of File) son true ambos
Exito!!!
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:Mover al primer registro

Publicado por Ana Maria (72 intervenciones) el 27/06/2005 17:43:29
Y porque si me voy a la tabla en acces veo el contenido, y en este caso hay 13 registros????

Es que ami me ocurre lo mismo

Gracias
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:Mover al primer registro

Publicado por Bismarck (18 intervenciones) el 27/06/2005 23:24:55
Ana Maria solo tienes que refrescar tu conección ADODB antes de hacer cualquier cosa.

Si estas utilizando el control de MS seria Adodc1.refresh y ya no te da ese error
Saludos
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