Unidad 14. Las macros (III)


14.5. El flujo del programa

Como cualquier programa, una macro tiene un flujo que determina cómo se van a ejecutar las diferentes acciones que contiene.

Hemos dicho que, en principio, las acciones se ejecutan de forma secuencial, una tras otra y en el orden en que se han ido colocando. Pero esto no es siempre así. En ocasiones puede interesarnos que el programa fuya de una forma diferente, que ejecute una acción sólo si cumple una determinada condición. Puede interesarnos dividir las acciones en bloques o crear una determinada jerarquía.

Access 2010 nos permite realizar todas estas acciones de forma mucho más sencilla e intuitiva que en anteriores versiones. Si nos fijamos en el panel derecho Catálogo de acciones, encontraremos un apartado denominado Flujo de programas. En él encontraremos las opciones necesarias para estructurar la macro según nuestras necesidades. Flujo de programas

Para introducir un elemento sólo deberemos hacer doble clic sobre él. Se insertará en la pantalla principal que contiene las acciones y podremos modificarlo desde allí.

- Los comentarios son texto aclarativo que no se ejecuta. Son como notas del diseñador/programador para documentar lo que va realizando y hacer más legible la macro. Aparece un recuadro para escribir el texto, tal cual y cuando finalizamos vemos que se ha englobado entre unas etiquetas /* Así */ y se ha coloreado verde para resaltarlo. Comentario de macro

- El grupo tampoco se ejecuta, es una forma de englobar en un bloque un conjunto de acciones, de forma que quede mejor estructurado.

- La opción Si permite que se ejecuten determinadas acciones únicamente si cumplen la condición especificada.

- Y la submacro es un conjunto de acciones que no entran en el flujo ejecución directamente, sino que se han de activar de forma explícita mediante las acciones EjecutarMacro o AlOcurrirError.

14.6. Acciones condicionadas

Videotutorial Flash Videotutorial YouTube

Vamos a profundizar un poco en la opción condicinal SI del flujo del programa.

Cuando introducimos una condición haciendo doble clic sobre la opción en el Catálogo de acciones, se introduce en la página principal como si se tratase de una acción más, con la salvedad de que nos permite establecer una condición de forma manual o mediante el Generador de expresiones (desde el botón en forma de varita).

Agregar condición

Si esta condición resulta cierta, Entonces se efectuará la acción que indiquemos a continuación.

Podemos utilizar Agregar Si no para indicar las acciones que queremos que se ejecuten en caso de que la acción no se cumpla.

También podemos introducir otra condición, que ejecutará unas acciones distintas, pulsando Agregar O si.

Con estas simples herramientas podemos crear condiciones de lo más complejas.

La ventaja principal de la nueva interfaz para crear macros es la legibilidad del código, que queda perfectamente estructurado y es sencillo de interpretar a simple vista.

Macro condicional

Para sacar el máximo partido a las acciones condicionadas lo único que hay que tener claro es qué condición queremos ejecutar y qué efectos queremos que tenga. Para ello es recomendable hacer un análisis previo con el fin de tener bien claras las ideas antes de empezar.

Un ejemplo de condición simple sería [Formularios]![Cursos]![Código Curso] = 4 que únicamente desencadenaría las acciones si el código de curso es igual a 4.

Pero también podemos utilizar una expresión más compleja, por ejemplo:

  • [Formularios]![Cursos]![Fecha Inicio] Entre #2-Mar-2006# Y #9-Nov-2010# para indicar si la fecha se encuentra en un intervalo.
  • EsNulo([Formularios]![Cursos]![nºhoras]) para realizar la acción si no hay nada guardado en el campo nºhoras.

O incluso unir varias condiciones utilizando los operadores Y y O como vimos en el tema de consultas.

Para entender mejor las condiciones te recomendamos que realices el Ejercicio Crear macro condicional.

En los casos en los que utilicemos macros con condicionales nos será muy útil el uso de la acción DetenerMacro, en el siguiente Ejercicio de Condiciones avanzadas verás por qué.


Octubre-2010
Pág. 14.3

Atrás  Inicio  Adelante




Curso de Access 2013
.