Visual Basic - CancelUpdate, con AduseClient y datagrids

Life is soft - evento anual de software empresarial
 
Vista:

CancelUpdate, con AduseClient y datagrids

Publicado por Jose (8 intervenciones) el 03/04/2003 20:17:21
Hola, tengo un problema, realizo una conexion con mi base de datos y establezco un recordset de la forma AdUseClient y creo un datagrid en el que muestro los datos, todo va perfecto, incluso tengo unos textbox que utilizo para añadir mas registros (addnew) y hasta aqui todo va perfecto, el problema es que he implementado un boton cancelar(cancelUpdate) y si lo pulso despues del boton de editar datos no hay problema, pero al pulsarlo despues de añadir datos me da error, no puede insertar una fila vacia, pero precisamente, lo que quiero es cancelar la operacion.
Pues bien, si cambio adUseClient por adUseServer me funciona, me cancela la operacion pero no muestra los datos en el datagrid

Esto es lo que hago:
Set rsCursos = New ADODB.Recordset
rsCursos.ActiveConnection = cn
rsCursos.CursorType = adOpenKeyset
rsCursos.LockType = adLockOptimistic
rsCursos.CursorLocation = adUseClient
rsCursos.Open "SELECT * from Cursos"

boton_nuevo()
rscursos.addnew

boton_guardar()
rscursos.update

boton_Cancelar()
rscursos.cancelupdate
'rscursos.cancel tampoco me funciona

Gracias a quien me ayude
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:CancelUpdate, con AduseClient y datagrids

Publicado por Ricardo (10 intervenciones) el 04/04/2003 22:02:30
Puedes hacer esto:
crea un Adodc, y este conectalo a los datos.
crea la conexión del Adodc con la Base de Datos vía código en el Form Load.
De esta manera tu recordset activo sería:
Adodc.recordset en vez de Rscursos
El DataGrid conéctalo al Adodc vía código con:
Set Datagrid.datasource = adodc.recordset
Al momento de querer agregar otro registro, es decir, antes del rscursos.addnew, desconecta el DataGrid, de este modo:
Set DataGrid.Datasource = Nothing,
Luego, al momento de cancelar y/o grabar vuelves a conectarlo con:
Set DataGrid.Datasource = Adodc.recordset.
Ojalá 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

Sos un genio

Publicado por Ramiro Benavides (1 intervención) el 10/08/2004 06:09:47
Estimado Ricardo
Yo tambien tenia ese problema y no me anime a poner alguna consulta porque, coincidia conque el grid tenia problema.

pero TU diste en el clavo

Gracias Viejo desde Peru
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