Somos Expertos Access. Contacto atravez de Skype Skype logo expertos_7

Maximizando el reúso de código: escribiendo automatizaciones en tiempo de diseño

Esta es la segunda parte de “Maximizando el reúso de código”. La parte uno  se enfocó en  asignar más de un manejador de eventos al mismo evento de un objeto o  compartir el mismo manejador de eventos para diferentes objetos. Ahora hablaremos de cómo podemos escribir automatizaciones en tiempo de diseño para ayudarnos a ahorrar tiempo a la hora de programar.

Si le encanta escribir, deténgase no continúe leyendo esto.

Algunas veces recibimos una base de datos de otra persona y nos damos cuenta que necesitamos hacer mucho trabajo para optimizarla. Para comenzar, supongamos que queremos agregar KeyNavigator -mencionando en  la parte uno -a 100 formularios continuos repartidos en la base de datos de Access. Recuerde que le mostramos como podíamos reducir los requerimientos de configuración en cada formulario con solo 4 líneas de código, pero 400 líneas de código siguen siendo mucho por escribir.

¿Para qué escribir cuando podemos hacer que VBA lo haga por nosotros?

Verifique antes de ejecutar el código que tenga la referencia de “Microsoft Visual Basic para Aplicaciones Extensible 5.3”. Solo la necesita mientras se ejecuta el código, puede removerla después.

Utilizando el objeto Module, podemos escribir un procedimiento desde cero en un módulo para optimizar el trabajo por nosotros. Es típico tener un módulo principal agregado a nuestro proyecto – quizás llamado “zzScrathPad” así que la lista lo organiza al final de manera ascendente. También preferimos hacer todos los procedimientos privados, porque la intensión no es usarlo en tiempo de ejecución. La única manera de ejecutarlo es desde el editor de VBA, el cual es el apropiado para nuestro propósito.

Como necesitamos agregar 4 líneas de código para todos los formularios continuos, necesitamos configurar un ciclo que los recorra todos. Para reducir los errores asociados con los múltiples formularios que están abierto (ej.. usted no puede abrir un formulario en modo diseño cuando ya está abierto como subformulario de otro formulario), cerraremos todo los objetos y trabajaremos solo con uno a la vez, además, es posible que no tengamos un módulo para cada formulario, tenemos que asegurarnos de hacer uno.

Ahora tenemos el formulario correcto y su módulo adquirido, existen otras cosas que tenemos que tomar en cuenta. ¿Qué pasa si un formulario ya tiene un manejador de eventos creado? No queremos código duplicado ni con errores porque no compilará. Así que necesitamos examinar el módulo para determinar si hay un manejador de eventos y editarlo o agregar uno nuevo de una manera apropiada.

Ahora tenemos 4 líneas agregadas automáticamente en todos nuestros formularios. Como el código también verifica si existen esas 4 líneas, lo podemos ejecutar una y otras vez si agregamos más formularios continuos y solo le agrega la 4 líneas de código si el formulario no las tiene. Esto es muy útil cuando usted posee 100 formularios en un archivo de Access que no existen en otro.

Obviamente, usted tendrá que adaptar el código a sus necesidades. Crear un conjunto de rutinas para actualizar una base de datos vieja y adaptarla con sus nuevas librerías y objetos ahora es bien sencillo. ¡Feliz automatización!

Publicado en Access Help, VBA

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

 

Quienes Somos

ExpertosMicrosoftAccess.com es un servicio de la empresa IT Impact, Inc., una compañía de programación y servicios para empresas en Latino América. Ofrecemos servicios en .Net, SQL Server y Microsoft Access. Muchos de nuestros desarrolladores han obtenido el galardón de Access MVP, un título proveído por Microsoft a aquellos que han hecho aportes a la comunidad y que han demostrado tener conocimientos superiores del producto.

Nuestro Equipo

  • Le ayudamos a "Descubrir el poder de sus datos™" con reportes y sistemas de Access excepcionales .
  • Creamos soluciones de bases de datos personalizadas utilizando Microsoft Access y / o SQL Server.
  • Nuestros consultores ganaron sus estrellas en las empresas de servicios y/o manufactura antes de convertirse en programadores.

Blogs anteriores