Access - DETENER CONSULTA al cancelar formulario de datos

 
Vista:

DETENER CONSULTA al cancelar formulario de datos

Publicado por Roberto (14 intervenciones) el 10/05/2006 13:07:55
Hola a todos! A ver si alguien sabe como hacer lo siguiente:

Tengo un Informe basado en una consulta.

Al ejecutar el informe se lanza un formulario para pedir datos que serán los criterios de la consulta.

Este informede solicitud de datos tiene un boton ACEPTAR y otro CANCELAR.

Si meto los datos y le doy a aceptar ningún problema, realiza la consulta, muestra el informe y listo.

El problema es si el usuario decide abortar la acción del informe y por ello en el formulario de petición de datos pulsa sobre CANCELAR.

Al botón cancelar le he asociado una macro que me cierra el formulario, sin guardar los datos. Y la acción me la hace correctamente.

El problema es que la consulta en la que está basado el informe que habíamos ejecutado sigue activa y entonces, como no ha recibido datos del formulario, pues ella misma lanza un cuadro de diálogo que pide dichos datos.

Entiendo que quizás, en la macro asociada al boton cerrar, debiera cancelar el informe lanzado y la consulta en la que está basada.... PERO NO SÉ COMO HACERLO!

Existe en el diseño de macros la opción CANCELAR EVENTO, y en su explicación dice que cancela el evnto que lanzó la macro... entiendo que entonces cancela el informe.... pero la consulta sigue activa... que puedo hacer?

Muchas gracias!!!! Seguro que es una tontería......
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:DETENER CONSULTA al cancelar formulario de dato

Publicado por 2pl (773 intervenciones) el 10/05/2006 17:14:59
Lo logico es abrir un formulario con los datos que le vas a pasar a la consulta y no al reves.
Yo utilizo un formulario para ejecutar unas consultas y dos informes
En este formulario solo selecciono el año que se lo paso a dos consultas en las que estan basadas los informes.

--------------------- Botón aceptar ----------------------------------------------------
Private Sub BtnAceptar_Click()
On Error Resume Next
If IsNull(Me![MESANNO]) Then
MsgBox "Introduzca mes y año", vbCritical, "Parámetros de selección"
Else
Me.Visible = False
End If
DoCmd.SetWarnings False
DoCmd.OpenQuery ("cargos a nomina")
DoCmd.OpenQuery ("Cargos de una fecha a nómina")
DoCmd.OpenReport INFORME, acViewPreview
If Not IsNull(INFORME2) Then
Dim ejecutafuncion As String
ejecutafuncion = CARGOSERRONEOS(MESANNO)
DoCmd.OpenReport INFORME2, acViewPreview
End If
DoCmd.SetWarnings True
End Sub
--------- botón cancelar-------------------------------------------------------------------
Private Sub BtnCancelar_Click()

DoCmd.Close

End Sub
--------------- cuando abro el formulario, le pongo el titulo del informe
Private Sub Form_Open(Cancel As Integer)
Me.Caption = INFORME
End Sub
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:DETENER CONSULTA al cancelar formulario de dato

Publicado por Pepe (766 intervenciones) el 12/05/2006 09:34:06
La recomendación de Roberto es la correcta, pero ya que lo tienes así, lo que puedes hacer es lo siguiente:

A la macro que tienes asociada al botón de cancelar, añadele estas dos acciones:

Acción: Cerrar
Tipo de objeto: Consulta
Nombre objeto: "el nombre de la consulta que utilizas"
--------------------------------------------------------------------------------
Acción: Cerrar
Tipo de objeto: Informe
Nombre objeto: "el nombre del informe que utilizas"
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