AYUDA CON CÓDIGO

04/07/2003 - 17:09 por Juanfra | Informe spam
Hola Grupo,
Tengo el siguiente código, que detecta si se ha hecho algun cambio en el
formulario.Si elijo la opcion Si (quiero que se ejecute una consulta de
actualizacion de datos" y si elijo No (pasa de los cambios y lo deja igual)
Pues bien si elijo Si, me graba los datos que he cambiado en el form (si
tengo un subform NO) pero nop me ejecuta la consulta que quiero que haga.

Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim stDocName As String
Dim strMsg As String
strMsg = "SE HA CAMBIADO ALGUN REGISTRO"
strMsg = strMsg & "Quiere grabar los cambios?"
strMsg = strMsg & "Pulse SI para grabar o No para deshacer los cambios."
If MsgBox(strMsg, vbQuestion + vbYesNo, "Grabar Registro?") = vbYes Then

stDocName = "qryAñadeTotalesPresupuestos"
'**quitamos los avisos
DoCmd.SetWarnings (False)
'**efectuamos la consulta de actualizacion
DoCmd.OpenQuery stDocName, acNormal, acEdit
'**volvemos a establecer los avisos
DoCmd.SetWarnings True

Else
DoCmd.RunCommand acCmdUndo
End If

End Sub

Alguien puede decirme pq no ejecuta la "qryAñadeTotalesPresupuestos" y
porque si efectuo cambios en el Subformulario que tengo no detecta que se ha
cambiado nada y no me lanza el aviso que se han modificado los datos.
Gracias
Juanfran
 

Leer las respuestas

#1 Rosa Sanjuan
05/07/2003 - 03:49 | Informe spam
Si el cambio en el formulario se ha hecho mediante una macro
o codigo de VBA, el evento BeforeUpdate no se activa.

Saludos
Rosa

"Juanfra" escribió en el mensaje news:
Hola Grupo,
Tengo el siguiente código, que detecta si se ha hecho algun cambio en el
formulario.Si elijo la opcion Si (quiero que se ejecute una consulta de
actualizacion de datos" y si elijo No (pasa de los cambios y lo deja igual)
Pues bien si elijo Si, me graba los datos que he cambiado en el form (si
tengo un subform NO) pero nop me ejecuta la consulta que quiero que haga.

Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim stDocName As String
Dim strMsg As String
strMsg = "SE HA CAMBIADO ALGUN REGISTRO"
strMsg = strMsg & "Quiere grabar los cambios?"
strMsg = strMsg & "Pulse SI para grabar o No para deshacer los cambios."
If MsgBox(strMsg, vbQuestion + vbYesNo, "Grabar Registro?") = vbYes Then

stDocName = "qryAñadeTotalesPresupuestos"
'**quitamos los avisos
DoCmd.SetWarnings (False)
'**efectuamos la consulta de actualizacion
DoCmd.OpenQuery stDocName, acNormal, acEdit
'**volvemos a establecer los avisos
DoCmd.SetWarnings True

Else
DoCmd.RunCommand acCmdUndo
End If

End Sub

Alguien puede decirme pq no ejecuta la "qryAñadeTotalesPresupuestos" y
porque si efectuo cambios en el Subformulario que tengo no detecta que se ha
cambiado nada y no me lanza el aviso que se han modificado los datos.
Gracias
Juanfran


Preguntas similares