PARA MANUEL VALLEJOS

dradana2003
18 de Septiembre del 2005
vallejos estoy como te he comentado realizando mi promera aplicacion contra un servidor MYSQL y tengo el siguiente problema

he realizado un formulario para que el usuario filtre el criterio que le va a solicitar al servidor y a medida que el usuario va declarando sus intereses se va construyendo la cadena o la consulta que despues yo se la paso a un ado simepre de recuperacion de datos
eso trabaja bien.

El problema es que el recordset devuelto se lo paso a otro formulario para que el usuario realize las moodificaciones y estas se las paso directamente al servidor por el metodo execut de la conexion.

El recordset que tengo en la menoria se queda con los datos iniciales cargados es decir aqui no ves los cambio y estos ciertamentes se realizaron.

aplique un ado.refresh y realmente me refresca los valores del recordset, pero me pone el cursor en el primer registro del recorset, como podria actualizar el recorset , sin que me meta el cursor en el principio nuevamente.

cuando esto sucede el cliente tiene la sansación de que hay mas registros porqwue si habian 10 y el modifico el 9, el cursor se le pone en el principio otra vez, tiene que recorresr nuevamente 10 registros para llegar al final,

no se si me supe explicar .pero esa es la dificultad

Saludos

mvallejos
18 de Septiembre del 2005
Antes de hacer el refresh, debes tomar en una variable auxiliar, el valor del campo identificatorio de ese registro, después del refresh, utilizas el método Find del recordset para volver a posicionarte en donde estabas. Por ejemplo

IdCliente = Adodc1.Recordset!IdCliente
<proceso que me mencionaste>
Adodc1.Refresh
' Pisicionarme en donde estaba
Adodc1.Recordset.Find "IdCliente = " & IdCliente

Prueba con eso

Saludos