Configurar botón guardar en formulario

Tengo dos tablas relacionadas llamadas PEDIDO y DETALLEPEDIDO

Tengo un formulario PEDIDO con el subformulario DETALLEPEDIDO.

Este formulario PEDIDO tiene un botón llamado GUARDAR.

El problema es que cuando registro información en el formulario y cierro el formulario SIN DARLE al botón GUARDAR; igual se guarda la información en las tablas.

Quiero que solo se guarde esta información al darle al botón GUARDAR.

Respuesta
1

¿Qué pasa si el usuario vuelve a grabar en el registro activo?, será eliminado

¿Qué pasa si el usuario presiona las teclas ALT F4?. Queda guardado el registro

Estos son problemas con los formularios dependientes, por lo regular utilizo formularios independientes donde puedo controlar todo.

Complementaría controlando que no abandone el formulario con las teclas ALT F4. Para lo cual en propiedades del formulario, Eventos, Tecla de vista previa colocamos y en evento del formulario "Al bajar una tecla" incluimos este código.

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
   If (Shift = 4 And KeyCode = vbKeyF4) Then
      KeyCode = 0
      MsgBox "ALT F4 está desactivado", vbInformation, "Cuidado"
   End If
End Sub

Con esto nos aseguramos que no cierre y salga de Access.

1 respuesta más de otro experto

Respuesta
2

Access, si no le dices nada en contra, entiende que lo que se escribe es para guardar. Por lo que dices, da la impresión de que cierras el formulario con el botón de la aspa. Para evitar ese botón, en las propiedades del formulario-Formato-Botón Cerrar ponle no. Así, ya no lo mostrará. Y en el botón guardar, en sus propiedades-eventos-al hacer clic puedes poner algo como

Dim respuesta As Byte
respuesta = MsgBox("¿ Quiere guardar el registro, sí o no?", vbYesNo + vbQuestion, "La culpa a otro")
If respuesta = vbYes Then
DoCmd.RunCommand acCmdSaveRecord
ElseIf respuesta = vbNo Then
DoCmd.RunCommand acCmdDeleteRecord
End If
DoCmd. Close

Asi, cuando lo pulses, te preguntará si quieres guardarlo. Si le dices si lo hace, si le dices no, no lo guarda, En ambos casos luego se cierra.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas