jbwzCodeGen

 Principal Novedades Utilidades Código Enlaces Access Acerca de mí

     
 
Principal
Arriba

 

 

 

 

 

 

 

 

 

 

 

 

 

 

AddIn CodeGen Nueva versión Instalación Descarga

jbwzCodeGen

Descargar jbwzCodeGen10.zip

Complemento para generar código de recordsets.

A la hora de escribir el código que maneje un recordset, siempre me ha resultado muy pesado andar copiando el nombre de la tabla o consulta y el de cada uno de los campos, además, la mayor parte de los errores venían de escribir mal esto o de utilizar equivocadamente el tipo de los campos, así que he creado un complemento que lo haga por mí. En vez de funcionar en el editor de VB, funciona en el entorno de Access; de esa manera tenemos disponibles los nombres de las tablas y consultas y sus campos y podemos seleccionarlos desde cuadros combinados; al momento se va generando código en un cuadro de texto que sólo tenemos que copiar y pegar en el VBE.

No lo hace todo-todo, pero sí lo más elemental, de manera que tenemos un esqueleto al que podemos hacer los retoques necesarios, con la tranquilidad de que los nombres de los campos estarán bien puestos.

He cambiado la primera versión por otra nueva que corrige errores y que incorpora nuevas funcionalidades. Todavía tengo en la cabeza unas cuantas cosas más que ir incorporando a las nuevas versiones, de manera que, al menos las próximas, serán todas betas pues me entretendré más en añadir cosas que en corregir fallos. ¿Porqué lo hago así? Primero, porque me resulta más entretenido crear que corregir y segundo, y más importante,  porque prefiero que un clic de ratón me ahorre escribir veinte líneas de código aunque tenga que corregir una a mano a que sólo me añada dos de manera impecable.

Se trata de un complemento que se instala entre los complementos de  Access de manera que, una vez instalado, podremos llamarles desde Herramientas->Complementos->Generar código Recorsdsets. Instrucciones de instalación

 

 

jbwzCodeGen10.mda Novedades de la nueva versión 1.0.1

Descargar jbwzCodeGen10.zip

He realizado varias modificaciones y le he añadido  nuevas funcionalidades que creo que merece la pena comentar.

Texto SQL de la consulta a String de VBA

Ahora, si el origen del recordset es una consulta, he añadido la posibilidad de pasar el texto SQL de ésta a una variable de texto dentro del procedimiento generado automáticamente. Es interesante si queremos "retocarlo", por ejemplo, para tomar valores o añadirle criterios a partir de alguna variable, pero, ya que cuesta tan poco hacerlo, incluso serviría para documentar mejor nuestro procedimiento, sabiendo exactamente el texto SQL de la consulta que estamos invocando.

Parámetros en consulta

La más interesante es que, con unos clics de ratón, podemos añadirle parámetros como criterios en la cláusula WHERE al origen del recordset para restringir el número de registros devueltos. Es más fácil que hacerlo en el diseño de la consulta y, además, también generamos automáticamente el código para dar valor a esos parámetros.

Como explica Juan M. Afán de Ribera en su artículo Consulta con parámetros, el uso de parámetros es una muy buena alternativa para evitar los problemas de formateo de los campos cuando construimos expresiones de criterio para filtrar una consulta.

Como los parámetros admiten expresiones sin formatear correctamente, son ideales para "filtrar" a partir de los valores que introduzcamos en controles de texto de un formulario. Por eso, cuando usamos parámetros en nuestro generador, le he añadido la posibilidad de que todas las variables que se le pasan sean del tipo Variant, para facilitar el uso de valores introducidos por el usuario.

Para facilitar aún más que el generador construya automáticamente el código para filtrar un origen de registros, al añadir cada parámetro he puesto la posibilidad de "considerar los valores nulos" ( :- | no sabía qué nombre darle), de manera que, eligiendo esta opción, a cada (Parametro1 = Mivariable) se añade un OR (MiVariable is null). De esta manera, conseguimos que, si tenemos varios cuadros de texto por los que "filtrar", sólo se considerarán aquellos que no tengan valor nulo.

He puesto varias veces "filtrar" entre comillas, porque no se trata de filtrar el recordset, sino de filtrar los datos que nos devuelve la consulta origen de éste. Para filtrar el recordset, deberíamos usar Filter y para eso no nos valdría usar parámetros... Estoy ya empezando con una futura versión que sí utilizará Filter y se valdrá de BuildCriteria()

Recordset como origen de un formulario o informe

Hay veces que resulta interesante asignar directamente el recordset de un formulario o informe en lugar de usar directamente un recordsource, por ejemplo para restringir los datos o para disponer de algunos eventos de ADO que suplan a los del formulario.

Esta última parte no me acaba de gustar cómo ha quedado y espero críticas y comentarios para modificarla en la nueva versión

 

 

jbwzCodeGen Instalación

Descargar jbwzCodeGen10.zip

Instalación

Se trata de un complemento que se instala entre los complementos de  Access de manera que, una vez instalado, podremos llamarles desde Herramientas->Complementos->Generar código Recorsdsets.

Debo agradecer a mi amigo McPegasus las indicaciones para construir nuestros propios complementos de Access en http://www.mcpegasus.net/content/complementos.htm y también las instrucciones (en http://www.mcpegasus.net/complementos/AcwzMcSqlVba/AcwzMcSqlVba.htm ) acerca de la instalación y la ruta en la que, dependiendo de la versión, debemos copiar el complemento para que sea fácilmente encontrado por Access y que copio y pego aquí directamente:

Instrucciones de instalación:

Bajar el archivo .zip comprimido en WinZip, descomprimir en la ruta donde deban instalarse los Addins y que cambia según la versión de Access.

Al finalizar la descompresión,

Abrir una aplicación de Access y luego Herramientas | Complementos | Administrador de complemento, activar jbwzCodeGen: Generador de procedimientos para el manejo de recordsets y luego Instalar.

A partir de este momento ya es funcional desde Herramientas | Complementos | Generar código Recorsdsets.

Access 2003/XP

jbwzCodeGen10.zip

Ruta de descompresión (sustituir los * por el nombre de usuario de tu equipo)

C:\Documents and Settings\******\Datos de programa\Microsoft\AddIns