REPETICIONES.
En
esta base tenemos un ejemplo, para mostrar varias veces el mismo registro en un
informe.
Se
puede usar, por ejemplo, para imprimir varias etiquetas de un mismo articulo,
para imprimir varias veces la misma dirección, etc.
Tenemos
la tabla Productos, que es copia reducida de la tabla del mismo nombre de la
base Neptuno.
Esta
tabla tiene un campo id, el nombre del producto, y otros dos campos con
información del producto, en este caso, cantidad por producto y precio por
unidad.
Tenemos
una tabla auxiliar, con un solo campo numérico, cuyos valores han de ser
correlativos desde el uno hasta el que deseemos, siempre que sea mayor o igual
que el numero máximo de repeticiones que queramos obtener.
Tenemos
otra tabla, llamada TablaOrigen, en la que indicamos el producto deseado, el
numero que queremos de etiquetas, y si queremos imprimir o no estas etiquetas.
Una
vez que tenemos esta ultima tabla a nuestro gusto, ya podemos imprimir el
informe.
El
informe esta basado en la consulta llamada Consulta1, que es la que genera las
repeticiones.
En
esta consulta, ponemos primero las tablas Productos y TablaOrigen, relacionadas
por el campo id, de forma que de cada producto que tengamos en la TablaOrigen,
podamos obtener los datos deseados de la tabla Productos, en este caso,
NombreProducto, Cantidad Por Unidad, y PrecioUnidad. También hemos puesto el
campo imprimir?, con criterio de selección =-1, de forma que solo aparecerán
los registros que hemos indicado que SI queremos imprimir.
Lo
explicado en el párrafo anterior, se puede comprobar en la consulta llamada
ConsultaParcial1, que no se usa en la base, y que solo sirve para esta
explicación. En esta consulta, se puede apreciar también, como los campos que
hemos seleccionado de la tabla Productos, solo aparecen para aquellos productos
que están en la tabla TablaOrigen, y que además están marcados como SI en el
campo imprimir. Nótese también, que cada registro solo aparece una vez.
La
repetición se produce al introducir en la consulta, la tabla auxiliar y no
relacionarla con ninguna de las otras. Al tener esto, Access relaciona todos
los registros de la tabla auxiliar, con todos los registros que teníamos
anteriormente en la consulta, esto se puede observar en la consulta
ConsultaParcial2.
Por
ultimo, si en el campo repeticiones de la Consulta1, ponemos como criterio, que
ha de ser igual o menor que el numero_etiquetas, que anteriormente indicamos en
la tabla TablaOrigen, tenemos los resultados deseados.