Como hacer un formulario que ejecute consultas access

Tengo 3 consultas que hacen la anulación de un documento lo que quiero es que en un mini formulario este un cuadro de texto o cuadro combinado para añadir el documento a anular que al darle a un botón se ejecuten las consultas sin que me pidan el criterio ya que seria el que ponga en en cuadro de texto o combinado

2 respuestas

Respuesta

Supongo que esta pregunta se corresponde con las anteriores ya que todo versa sobre tres consultas etc.

Si se hacen preguntas por separado, las respuestas pueden no adaptarse a lo que se necesita, desde la distancia se desconoce el entorno real y se pueden considerar independientes y sin conexión.

A lo concreto:
Si de lo que se trata es de ejecutar el borrado de unos datos, en lugar de crear un formulario para solicitar un dato etc. etc, lo plantearía así:

.- Una vez seleccionado el dato de referencia (el que solicitan las consultas) y dado que parecen 'consultas de acción' (ejecutan su función sin devolver resultados a diferencia de las de selección) bastase con un botón o incluso un dobleclick en el dato.

Sin formularios, sin cuadro de texto al que copiar manualmente el dato de referencia, sin botón para llamara a la macro que ejecutase las consultas...

A lo sumo (dependiendo del entorno), exigiría la confirmación del borrado y si fuera el caso (la existencia de una bitácora) añadiría en ella quien, como y cuando se efectuó ese borrado.

Analiza si este método puede ser aplicable a ese entorno para lograr lo que se necesita.

Respuesta

Al no saber para que sirven las consultas, ni como están construidas es difícil decir algo, pero, personalmente, creo que no las necesitas. Mira, por ejemplo, vamos a suponer que tienes una tabla AAA donde se guarda el numero de documento, en el campo NumDoc. En un formulario puedes poner un combinado, al que para el ejemplo le llamaremos Eliminar y que su origen de la fila es el campo NumDoc de la tabla AAA. En las propiedades de ese combinado, en el evento Después de actualizar, puedes crear un procedimiento de evento y poner

docmd.setwarnings false

docmd.runsql"delete * from AAA where numdoc=" & me.eliminar & ""

Me explico, al seleccionar un NumDoc del combinado te elimina ese registro de la tabla. Si lo que hay que hacer es marcarlo como anulado ( y suponiendo que en la tabla tienes un campo Eliminado Sí/No) podrías poner la instrucción como

docmd.setwarnings false

docmd.runsql"update AAA set Eliminado=-1 where numdoc=" & me.eliminar & ""

A esto le puedes añadir que confirme la acción, etc, ya que hay muchas formas de hacerlo.

Lo de setwarnings es para que no aparezca la ventanita de "Va a eliminar(actualizar) un registro...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas