Sunteți pe pagina 1din 55

CURSO AVANZADO ACCESS-2007

DISEO DE APLICACIONES
Instructor: Lic. Eduardo E. Roldn lvarez

INTRODUCCIN
Desde que la primera versin comercial de ms-access vio la luz en julio de 1992, esta importante
herramienta includa en el paquete de profesional de office de Microsoft, ha indo poco a poco
ganando terreno dentro de las aplicaciones ofimticas utilizadas en las empresas actualmente,
inclusive llegando a desplazar en muchos casos a Microsoft Excel como herramienta de trabajo.
La razn de este cambio se basa fundamentalmente en tres caractersticas propias de este singular
gestor de base de datos:
Primero. MS-ACCESS proporciona un ambiente muy cmodo y ameno para almacenar datos
bajo un esquema de base de datos relacional, esto debido principalmente a su naturaleza grfica,
auxiliada por un excepcional enfoque de programacin asistida por computador, orientada
exclusivamente al usuario no programador.
Segundo. Diferente a lo que sucede en MS-EXCEL, este aplicativo proporciona una capacidad
de almacenamiento casi ilimitado de datos, en una forma ordenada de la cual se puede recuperar
la informacin con sencillas instrucciones SQL (Structured Query Language). Recordemos que
una hoja electrnica en la actualidad puede almacenar poco ms de 1 milln de registros, y
cuando esto sucede su manejo se vuelve muy engorroso. MS-ACCESS en cambio puede
almacenar en una sola base muchsimo ms de esta cantidad, vindose limitada casi
exclusivamente por el espacio disponible del disco duro del computador.
Tercero. Como aplicativo, MS-ACCESS no slo puede almacenar datos, debidamente
parametrizados y ordenados, sino tambin servir de soporte para realizar verdaderas aplicaciones
funcionales de facturacin, pagos, control de inventarios, etc. Las posibilidades solamente se
ven limitadas por la genialidad y la necesidad del usuario 1. Es esta caracterstica la que ms nos
interesa para el presente curso. En efecto hoy da, muchas organizaciones pblicas y privadas
estn volviendo los ojos hacia este aplicativo y ya hemos visto como por ejemplo Tributacin
Directa, desarroll su publicitada aplicacin EDDI 7, sobre una plataforma Access.
El objetivo primordial del presente curso es en primer lugar proveer a los estudiantes una visin
ms profunda del uso de MS-ACCESS de Microsoft, como una herramienta de desarrollo de
software de base de datos, que les permita disear pequeas aplicaciones funcionales para
sistematizar su trabajo como contadores, auditores, o empresarios, sin necesidad de hacer fuertes
inversiones en costosos paquetes de software, y por otro lado que al desarrollar su conocimiento
en ellos puedan eventualmente desarrollar un pensamiento crtico sobre el diseo y las
1

El autor empez desarrollando desde el ao 1990 de manera autodidacta, pequeas aplicaciones de bases de
datos, primero en DBASE III PLUS, luego en FOXPRO, cuando en 1998 recibi un curso de sistemas de informacin
en la Universidad, conoci el uso de ms-access y fue amor a primera vista, hasta la fecha.

necesidades de los sistemas gestores de bases de datos, que les ayude en un futuro cercano a
participar ms efectivamente en gestin de datos de las empresas en que laboren.
En este sentido, este curso da por sentado que el estudiante ya adquiri los conocimientos
fundamentales de desarrollo de un proyecto Access bsico, tales como el diseo de tablas, diseo
de relaciones, formularios, e informes. De no ser as es conveniente que el mismo se remita a los
textos sugeridos en el programa de curso, en especial a mi manual de curso de ms-access 2007
bsico.

LECCION 1
EL MODELO INICIAL DE UNA FACTURA

CASO 1. DISEANDO UNA FACTURA


Cuando observamos una factura comercial tpica, como la que se muestra en la figura siguiente,
podemos observar que ella est compuesta por tres reas definidas: El encabezado, dnde se
incluyen los datos primarios, los datos de la empresa, la fecha, el tipo de factura (contado, o
crdito), el nombre del cliente, forma de pago, entre otros, el detalle que seala una lista de los
artculos que se adquirieron, su cdigo, precio unitario, y total por lnea, y el pie, que
normalmente indica el subtotal, descuento comercial, monto de impuesto de ventas, total a pagar
y firma de recibido.

COMERCIAL LA FAMA S.A.


De todo en Librera y Suministros de Oficina.
Tel/fax. 257-20-07
Cd. Jurid. 3-101-0235467

CONTADO
FACTURA No.

6579

FECHA:
VENDEDOR:

Paga con: Efectivo

CLIENTE:

Tarjeta No.

CODIGO
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

DESCRIPCION

PRECIO
UNIDAD

CANTIDAD

02
03
04
05
02
02
03
04
05
06
01
01
01
02
03
SUB-TOTAL
DESCUENTO
IMP. VENTAS (13%)

RECIBIDO CONFORME

TOTAL A PAGAR

TOTAL ()

Lo interesante de este formulario tan comn en nuestros das es que su formato bsico se
mantiene para muchos otros documentos que utilizamos para recoger y procesar informacin en
las empresas, tales como cheques, rdenes de compra, colillas de compra de todo tipo,
requisiciones, etc. Ahora bien el problema de disear una base de datos en MS-ACCESS que
almacene la informacin de este tipo de formularios, es un poco ms complejo de lo que
pareciera, como lo vamos a detallar seguidamente.
Para iniciar vamos a tomar como ejemplo la base llamada CASO_1_FACTURA, la cual le fue
enviada dentro del material necesario para este curso. En la misma tenemos la conformacin
bsica de las tablas que debe contener una factura tpica para que pueda ser utilizada por MSACCESS 2007 a saber:
TABLA CLIENTES
Esta tabla almacena los datos relativos a los clientes de la empresa, en los cuales hemos colocado
algunos nombres de clientes ficticios para comenzar, su estructura es como se muestra a
continuacin.

PROPIEDADES DE LOS CAMPOS


Una de las fortalezas de las tablas definidas a travs de MS-ACCESS es el hecho de que
podemos incluir en cada campo algunas propiedades que permiten filtrar los datos que se
incluirn en ellas, veamos ahora algunas de las propiedades para la tabla CLIENTES, y las otras
tablas que conforman nuestra base de datos.
CAMPO LLAVE
Como podemos apreciar su campo clave es COD_CLIENTE (cdigo de cliente), el cual es
autonmerico, este tipo de campos numricos se autorrellenan en un consecutivo, lo cual permite
que el usuario no tenga que asignar un cdigo manualmente a un cliente determinado, se utiliza
tanto para este tipo de registros, como para consecutivos de facturas, recibos, rdenes etc.
PROPIEDAD REQUERIDO
Esta propiedad hace que sea necesario digitar alguna informacin dentro el campo, es decir que
el campo en cuestin no pueda quedar en blanco. Para la tabla CLIENTES, es necesario que los
campos NOM_CLIENTE, CED_JURIDICA y TELEFONO tengan la propiedad requerido S.
PROPIEDAD VALOR PREDETERMINADO.
Es un valor por defecto que el sistema ofrece al usuario y que puede ser cambiado por este. En
nuestro caso el valor por defecto del campo PLAZO, ser 0 das.
PROPIEDAD REGLA DE VALIDACION Y TEXTO DE VALIDACIN
La regla de validacin obliga a que se cumpla alguna condicin especial en los campos, y el
texto de validacin es un aviso que se activa cuando la regla de validacin se incumple. En el
caso de la tabla CLIENTES, el PLAZO debe estar entre 0 y 30 das, indicando que el plazo
mnimo y mximo de plazo de crdito.
En las tablas sucesivas se indican las propiedades especiales de algunos campos a fin de hacer
ms rpida la explicacin, el campo clave se resalta en negrita.

TABLA ENCABEZADO_FACT
Esta tabla incluir los datos relativos al encabezado de la factura, como se indic anteriormente.

NOMBRE CAMPO
NO_FACTURA
FECHA
TIPO_FACT
IMPTO_VTA

DESCTO

PROPIEDAD
Tamao autonumrico

EXPLICACIN
Incrementa el nmero en una
unidad automticamente
Valor predeterminado:
Toma la fecha del computador
= fecha()
directamente
Regla de Validacin: CONT La factura puede ser de
OR CRED
CONTADO O CRDITO
Tamao: Simple
Es un nmero en forma
Fomato: Porcentaje
porcentual entre 0% y 13%
Validacin: entre 0 y 0.13
Tamao: Simple
Es un nmero en forma
Fomato: Porcentaje
porcentual entre 0% y 10%
Validacin: entre 0 y 0.10

TABLA DETALLE_FACT
La misma incluye los datos relativos a los productos que el cliente va a adquirir y sus respectivas
cantidades y precios.

NOMBRE CAMPO
ID_REGISTRO

PROPIEDAD
Tamao autonumrico

CANTIDAD

Tamao: Entero
Formato: Estndar
Lugares decimales: 0
Validacin:>0
Tamao: simple
Lugares decimales: 2
Validacin:>0
Tamao: simple
Lugares decimales: 2
Validacin:>=0
Tamao: simple
Lugares decimales: 2
Validacin:>=0
Tamao: simple
Lugares decimales: 2
Validacin:>0

PRECIO_UNIT

DESCUENTO

IMPUESTO

TOTAL_LINEA

EXPLICACIN
Incrementa el nmero en una
unidad automticamente
Es un nmero entero mayor
estricto que cero. En formato
estndar.
Es un nmero simple mayor
estricto que cero que admite 2
decimales
Es un nmero simple mayor o
igual que cero que admite 2
decimales
Es un nmero simple mayor o
igual que cero que admite 2
decimales
Es un nmero simple mayor
estricto que cero que admite 2
decimales

TABLA PRODUCTOS
Almacena la informacin de los productos que ofrece la empresa, cdigo, nombre, precio costo y
de venta unitarios.

NOMBRE CAMPO
COD_PRODUCTO

PROPIEDAD
Mscara entrada: 00000
Requerido: S

NOM_PRODUCTO

Tamao: 50
Requerido: S

PRECIO_COSTO

Tamao: simple
Lugares decimales: 2
Validacin:>0
Tamao: simple
Lugares decimales: 2
Validacin:>0

PRECIO_UNIT

EXPLICACIN
Es un texto de 5 dgitos
numricos que deben digitarse
obligatoriamente.
Es un texto de 50 caracteres
mximo que debe ser digitado
obligatoriamente.
Es un nmero simple mayor
estricto que cero que admite 2
decimales
Es un nmero simple mayor
estricto que cero que admite 2
decimales

ESTABLECIMIENTO DE RELACIONES
Como se mencion en el curso anterior la estructura de relacines es la razn de ser de una base
de datos relacional, ya que ella permite que todas las tablas includas en ellas funcionen como
una sola unidad lgica, tanto para el ingreso de datos, como para su posterior recuperacin
mediante consultas.
Para el caso de nuestra base de datos la misma debe quedar como se muestra a continuacin.

Importante. Segn lo establece el modelo ENTIDAD-RELACIN, una pareja de tablas puede


relacionarse entre s siempre que se cumplan las siguientes condiciones:
1. Deben compartir un campo comn entre ellas
2. El campo compartido debe tener la misma estructura, es decir si un campo de una de las
tablas es texto y tiene una longitud de 2 dgitos, el campo de llegada en la otra tabla debe
igualmente ser de tipo texto y tener 2 dgitos. Igualmente un campo numrico entero,
solamente se relacionar con un campo similar.
3. Si la relacin se verifica de un campo clave a otro que no es clave se obtendr una
relacin cuya cardinalidad es de uno a muchos; este tipo de cardinalidad es la ms
comn en este tipo de bases de datos. Por otra parte, si la relacin se verifica de un
campo clave a otro que tambin es campo clave, la relacin ser de uno a uno, este tipo
de relaciones es rara pero muy til en algunos casos.

4. No se restringe el uso de nombres de campo iguales para diferentes tablas, pero para
efecto de no tener problemas futuros, es conveniente que los campos que se relacionan
tengan nombres ligeramente diferentes en ambas tablas, an y cuando se refieran a la
misma informacin.
5. No olvide al establecer las relaciones en cada pareja de tablas exigir integridad
referencial.
Una vez que hemos establecido las diferentes tablas y relaciones necesarias para nuestra base de
datos, ya podemos proceder a desarrollar adecuadamente nuestra aplicacin de facturas.

LECCIN 2.
EL DISEO DEL FORMULARIO DE LA FACTURA

CREACIN DE FORMULARIOS BASADOS EN CONSULTAS.


En el curso anterior aprendimos a crear formularios con base en tablas, sin embargo una forma
ms eficiente de crear formularios de ingreso y consulta de datos, es hacerlo mediante
formularios basados en consultas. Esto por cuanto una consulta puede incluir campos de
mltiples tablas, as como los llamado campos derivados o calculados, que permiten hacer
clculos entre la informacin numrica o de fechas incluidas en las diferentes tablas.
La tcnica es sencilla, primero se disean las consultas y luego los formularios se desarrollan
sobre ellas mediante el asistente para formularios.
Consulta para el Encabezado CSLT_ENCABEZADO
Para la consulta encabezado vamos a ir a la ficha Crear grupo Otros y hacemos click en el cono
llamado Diseo de consulta, extrayendo para ella las tablas llamadas CLIENTES, y
ENCABEZADO_FACT. En dicha consulta seleccionaremos los siguientes campos:
CAMPOS

TABLA

NO_FACTURA
ORDEN_COMPRA
FECHA
ID_CLIENTE
NOM_CLIENTE
IMP_VTA
DESCTO

ENCABEZADO_FACT
ENCABEZADO_FACT
ENCABEZADO_FACT
ENCABEZADO_FACT
CLIENTES
ENCABEZADO_FACT
ENCABEZADO_FACT

La consulta as diseada debe quedar como se muestra a continuacin:

Observe que en la misma el nombre del cliente se toma de la tabla CLIENTES, haciendo de esta
una consulta de mltiples tablas.
Una vez hecho esto salve la consulta con el nombre CSLT_ENCABEZADO.
Consulta para el Detalle de la factura CSLT_DETALLE_FACT
Ahora procederemos a realizar la consulta que servir de base para el detalle de la factura. Para
tal efecto, seleccionaremos los siguientes campos:
CAMPOS

TABLA

ID_FACTURA
ID_PRODUCTO
NOM_PRODUCTO
CANTIDAD
PRECIO_VENTA
TOTAL

DETALLE_FACT
DETALLE_FACT
PRODUCTOS
DETALLE_FACT
PRODUCTOS
[CANTIDAD]*[PRECIO_VENTA] Campo derivado

Note que el ltimo campo es un campo derivado, el cual se calcula de la multiplicacin de los
campos CANTIDAD y PRECIO_VENTA.
La consulta as creada deber mostrarse como se indica seguidamente:

Ahora salve la consulta con el nombre CSLT_DETALLE_FACT

Ahora ya tenemos las dos consultas que servirn de base a nuestro formulario de registro de
facturas, lo nico que debemos hacer es combinarlas en un solo formulario ambas, para esto vaya
a la ficha crear, grupo formularios, y active el asistente de formularios en el cono llamado ms
formularios, luego seleccione para el formulario primero la consulta CSLT_ENCABEZADO, y
todos sus campos, y seguidamente, sin salirse del cuadro de dilogo la consulta
CSLT_DETALLE_FACT, y todos sus campos, tal como se muestra a continuacin:

Importante: debe seleccionar primero la consulta de encabezado y luego las de detalle, en ese
orden.
Haga click en siguiente, ahora el asistente le muestra lo que se conoce con el nombre de un subformulario, es decir una estructura de formulario en el cual el encabezado de la factura y el
detalle forman una sola unidad lgica, y se muestran ambos.

Haga click en siguiente y elija la opcin tabular, esta va a ser la presentacin por defecto del subformulario compuesto por la consulta CSLT_DETALLE_FACT.

Haga click en siguiente y escoja un fondo que le guste para su formulario, luego le indicaremos
como puede agregar fondos ms personalizados.

Haga click en siguiente y observe que ambos formularios se muestran en el orden requerido,
presione finalizar, y listo ya tenemos un formulario que podemos utilizar ms eficientemente
para registrar una factura en nuestro sistema. Ahora procederemos a personalizarlo tanto como
sea posible con ayuda de lo aprendido en el curso inicial de Access, para esto siga atentamente la
indicaciones que su instructor le dar. 2

En este punto el instructor asume que usted ya conoce de Access en el curso bsico por lo que est atento a las
indicaciones que le dar, y realcelas de forma gil y oportuna, si tiene duda puede consultar el manual del curso
bsico de MS-ACCESS 2007, facilitado en el primer curso, CASO II, pgina 17.

Tarea para los estudiantes


Luego de personalizar el formulario de captura de datos, el instructor pedir a los estudiantes que
procedan a crear un formulario para la tabla CLIENTES y la tabla PRODUCTOS, estos
formularios sern de utilidad ms adelante.

LECCION 3.
CREACIN DE CAMPOS CALCULADOS Y OTROS OBJETOS EN FORMULARIOS

Introduccin de cuadros de texto independiente.


Nuestra pantalla de captura de datos ya casi est terminada sin embargo le hacen falta algunos
elementos importantes, por ejemplo el subtotal de la misma, el descuento, el monto del impuesto
sobre la venta a pagar y el total a pagar.
Un cuadro de texto independiente es un objeto de formulario que permite calcular y mostrar
cantidades resultantes de los campos numrico o de fecha que intervienen en dicho formularios,
como tales los mismos no se almacenan en las tablas de datos, pero sirven para mostrar los
resultados de las transformaciones de los datos.
Seguidamente vaya al formulario CSLT_ENCABEZADO_FACT y bralo en vista diseo
El mismo se mostrar as:

Al estar vinculados ampos formularios es como si los tuviera en diseo a los dos. Vaya al
formulario interno y cree un pie aproximadamente el tamao de dos cuadrculas.
Ahora introduzca en l un cuadro de texto independiente, tomndolo de la barra de controles y
ubicndolo exactamente en lnea con el total de la factura. Su etiqueta se llamar SUBTOTAL, y
el contenido del campo ser =SUMA(TOTAL) 3 tal como se muestra a continuacin:

La funcin =SUMA(Nombre de campo), es una funcin de MS-ACCESS que al igual de la sumatoria de Excel
sumariza el campo que se indica entre el parntesis.

Incluya dos cuadros otro cuadro de texto adicional que se llamar DESCUENTO, el contenido
de este campo debe realizarse con ayuda del generador de expresiones de ACCESS, de la
siguiente forma:

Esta es una operacin compleja por lo que siga las indicaciones de su instructor cuidadosamente,
el contenido final del campo debe leerse:
=[SUBTOTAL]*[Formularios]![CSLT_ENCABEZADO]![DESCTO] .
El formulario ahora se mostrar as:

Ahora trate usted de crear los campos que faltan, para el impuesto de ventas, y el total a pagar.
Para el impuesto de ventas el generador de expresiones mostrar:
=([SUBTOTAL] - [DESCUENTO] )* Formularios![CSLT_ENCABEZADO]![IMPTO_VTA]

Y para el total a pagar deber indicar:


=[SUBTOTAL]-[DESCUENTO]+[IMPUESTO]

Luego vaya a la vista formulario, e introduzca al menos 3 facturas de su invencin, para que
compruebe los clculos del formulario.

LECCION 4.
CONSULTAS DE ACTUALIZACIN, Y BORRADO DE DATOS

En el curso anterior utilizamos el lenguaje de consulta SQL, a fin de recuperar datos de las bases
de datos de forma fcil, a travs del asistente para consultas del ms-access 2007. En esta leccin
utilizaremos el asistente para crear una serie de consultas cuyo fin no es recuperar datos, sino
ms bien modificar los registros de las tablas, estas consultas permiten actualizar, o borrar
registrar registros sujetos a determinadas condiciones. Seguidamente vamos a ver algunos usos
interesantes de este tipo de consultas.
Consultas de actualizacin de campos. La proposicin UPDATE.
Una vez que hemos registrado la informacin de las facturas anteriores, debemos de actualizar
los datos de la tabla DETALLE_FACT correspondientes a los campos: PRECIO_UNIT,
DESCUENTO, IMPUESTO Y TOTAL_LINEA. La razn de esto es que los precios unitarios
de los artculos irn cambiando con el tiempo, pero la tabla DETALLE_FACT debe de mantener
el histrico de los precios con que fueron vendidos los artculos as como el descuento que se
ofreci, el impuesto pagado, y lo pagado por el cliente. Para hacer esto necesitamos realizar
posterior al registro varias consultas de actualizacin de dichos campos, estas consultas
diferentes a las que hemos hecho antes, son capaces de variar los contenidos de los campos en
los registros de la tabla, veamos cada una de ellas en detalle.
En este momento la tabla DETALLE_FACT muestra que los nicos datos que se han
almacenado con respecto a las facturas son el ID_FACTURA, ID_PRODUCTO y la
CANTIDAD, pero los dems campos como el precio unitario de venta, el descuento, el impuesto
pagado y total por lnea no han recibido an datos.

Para corregir esto debemos crear una consulta de actualizacin de datos para la tabla, se debe
crear una consulta de actualizacin para cada uno de los campos faltantes; es decir una para el
campo PRECIO_UNIT, otra para el DESCUENTO, otra para el IMPUESTO y finalmente otra
para el campo TOTAL_LINEA.
Consulta ACT_PRECIO_UNIT
Para crear una consulta de actualizacin debemos primero que todo posicionarnos en la ficha
Crear, hacer click en el grupo otros y seleccionar el grupo diseo de consultas, luego agrega las
tablas DETALLE_FACT y PRODUCTOS, hecho esto le indicamos a MS-ACCESS que
deseamos hacer una consulta de actualizacin haciendo click en la opcin Actualizar, del grupo
tipo de consulta. Luego seleccionamos el campo que deseamos actualizar en este caso el campo
PRECIO_UNIT que lo actualizaremos al valor del PRECIO_VENTA mostrado en la tabla
PRODUCTOS siempre y cuando el campo PRECIO_UNIT sea nulo, y el
ID_PRODUCTO=COD_PRODUCTO. La consulta se mostrar as:

Observe que el cono de esta consulta es diferente a los vistos hasta ahora, indicando que es una
consulta de actualizacin (UPDATE).
Explicacin: Para entender mejor esta consulta vamos a invocar la presentacin SQL, del
asistente haciendo click en el grupo resultados

UPDATE PRODUCTOS INNER JOIN DETALLE_FACT ON


PRODUCTOS.COD_PRODUCTO = DETALLE_FACT.ID_PRODUCTO
SET DETALLE_FACT.PRECIO_UNIT = [PRECIO_VENTA]
WHERE (((DETALLE_FACT.PRECIO_UNIT) Is Null) AND
((DETALLE_FACT.ID_PRODUCTO)=[COD_PRODUCTO]));
La consulta de actualizacin creada actualiza la tabla DETALLE FACT manteniendo la
integridad relacional INNER JOIN con la tabla PRODUCTOS, indicando que el campo
PRECIO_UNIT debe ser igual al campo PRECIO_VENTA (de la tabla productos), siempre y
cuando (WHERE) el campo PRECIO_UNIT sea nulo; esto es para no actualizar valores que ya
hallan sido actualizados, y que el campo ID_PRODUCTO sea igual al campo
COD_PRODUCTO (de la tabla productos)
Una vez realizada la consulta anterior slvela con el nombre ACT_PRECIO_UNIT y ejectela.
El asistente mostrar un aviso indicando que va a realizar una consulta de actualizacin 4

Al activar una consulta de actualizacin no se genera ninguna respuesta visual en la pantalla,


solamente en la tabla que es actualizada. Luego de ejecutar la consulta abrimos la tabla
DETALLE_FACT, y podremos ver el campo PRECIO_UNIT debidamente actualizado.

En todas las consultas de modificacin de registros: actualizacin, borrado, insercin y creacin, el asistente
mostrar un cuadro de aviso antes de ejecutarlas, si desea que la actualizacin se ejecute sin avisar vaya al Botn
de office, opciones de Access. Avanzadas y desactive con checks de Confirmar.

Vamos ahora a realizar las consultas de actualizacin del descuento, del impuesto y del total a
pagar se mostrarn de la siguiente forma.
ACT_DESCUENTO

Observe que para esta consulta y la del impuesto necesitamos adems la tabla
ENCABEZADO_FACT, ya que ella contiene el porcentaje de descuento y el de impuesto
aplicado a cada factura, tambin debe hacerse coincidir el ID_FACTURA con el campo
NO_FACTURA de la tabla ENCABEZADO_FACT.
Consulta ACT_IMPUESTO

ACT_TOTAL_LINEA
Esta consulta solo requiere de la tabla DETALLE FACT, ya que los valores para el campo
TOTAL_LINEA se derivan fcilmente de los otros campos de acuerdo a la siguiente frmula:
(CANTIDAD*PRECIO_UNIT)-DESCUENTO+IMPUESTO

Vaya desarrollndolas de una en una con ayuda del instructor.


Diseo de macroinstrucciones
Como sera muy tedioso y poco eficiente tener que ejecutar una a una cada actualizacin cada
vez que se registre una factura, debemos idear una forma en que todas se ejecuten al mismo
tiempo, para esto utilizaremos de las llamadas macros de MS-ACCESS. La macros en Access
son mucho ms sencillas de disear que en MS-EXCEL, y permiten automatizar proceso
manuales a travs de los formularios.
Para crear una macro nicamente debemos ir a la ficha Crear, grupo otros, y hacer click en el
cono llamado Macro.
Una vez en ella seleccionamos secuencialmente, las acciones que deseamos que la misma
ejecute, existen varias acciones que podemos ejecutar con este objeto, para nuestro caso las
acciones sern las mismas Abrir consultas, por ejemplo si queremos que la macro abra la
consulta ACT_PRECIO_UNIT, Seleccionamos la accin y en su argumento le indicamos el

nombre de la consulta y as sucesivamente para las cuatro consultas de actualizacin. Al final la


macro se mostrar as:

Luego la podemos salvar con el nombre ACTUALIZA_DATOS. Si hacemos click en ejecutar


veremos como ella rellena por nosotros los campos faltantes de la tabla DETALLE_FACT.
Creacin de eventos en un formulario
Un envento es el resultado o consecuencia de una accin especfica del usuario, en nuestro caso
como queremos que la actualizacin de los datos se realice de una forma automtica al inclur la
factura debemos programar el evento para el momento en que hacemos click en el botn de
Agregar nueva factura del formulario de registro de factura (formulario
CSLT_ENCABEZADO), para esto vamos a abrir dicho formulario en vista diseo, y luego no
dirigiremos al botn indicado, abriendo sus propiedades, nos posicionamos en la ficha llamada
eventos. La pantalla se mostrar as:

Ya en esta ficha, seleccionamos en la propiedad Al salir, la macro ACTUALIZA_DATOS.


Esto har que cuando hagamos click en el botn se ejecute automticamente la macro indicada y
se muestre la pantalla lista para agregar una nueva factura. Luego sencillamente salvamos el
formulario y lo activamos en vista formulario.
Consultas de eliminacin o borrado de datos. La proposicin DELETE.
Otro tipo de consulta de modificacin de datos es la llamada consulta de eliminacin de
registros, asistida por la proposicin DELETE. Similar a la anterior vamos a crear una consulta
de eliminacin que nos ayude a eliminar una factura en particular.
Hacemos click en la ficha Crear y seleccionamos el cono diseo de consulta del grupo otros,
luego seleccionamos la tabla ENCABEZADO_FACT, y cerramos el cuadro de dilogo.
Posteriormente, hacemos click en el cono Eliminar, y hacemos doble click en el campo
NO_FACTURA, el criterio de bsqueda de esta consulta es una variable que va a solicitar el
nmero de factura a borrar, elegida por el usuario, para esto debemos escribirla as:
=[Digite factura a borrar:]
Observe que esto es muy similar a cuando definimos un campo derivado en las consultas
anteriores. La consulta final debe mostrarse as.

Salve ahora la consulta con el nombre CSLT_BORRAR_FACT, y actvela indicando un nmero


de factura que desee borrar.
Importante: Tenga cuidado! Si en el diseo no seala un criterio en particular la consulta
borrar todos los registros de facturas.
Mediante este tipo de consulta, usted podr eliminar registros de tablas, sujetos a diversos
criterios que pueden ser numricos, de fecha, de texto, etc. El cono asignado a este tipo de
consulta es diferente a los anteriores.

LECCION 5.
INFORMES BASADOS EN CONSULTAS Y MEN PRINCIPAL

INFORMES BASADOS EN CONSULTAS


As como es posible realizar formularios ms eficientes con base en consultas, esta tcnica
tambin es posible utilizarla para crear informes ms complejos y tiles; uno de ellos es sin duda
el ms necesario en el caso de una aplicacin de facturas, es decir la impresin de la factura
misma.
CONSULTA RPT_FACTURA.
Para la consulta encabezado del informe vamos a ir a la ficha Crear grupo Otros y hacemos
click en el cono llamado Diseo de consulta, extrayendo para ella las tablas llamadas
CLIENTES, y ENCABEZADO_FACT. En dicha consulta seleccionaremos los siguientes
campos:
CAMPOS

TABLA

NO_FACTURA
ORDEN_COMPRA
FECHA
ID_CLIENTE
NOM_CLIENTE
TELEFONO
PLAZO
DIRECCION
IMP_VTA
DESCTO

ENCABEZADO_FACT
ENCABEZADO_FACT
ENCABEZADO_FACT
ENCABEZADO_FACT
CLIENTES
CLIENTES
CLIENTES
CLIENTES5
ENCABEZADO_FACT
ENCABEZADO_FACT

En esta consulta debe incluirse un Criterio similar a como se realiz anteriormente cuanto se
diseo la consulta de borrado, para este caso el criterio debe indicar:
=[Digite factura a imprimir:]
Una vez hecha la consulta gurdela con el nombre RPT_FACTURA 6 La consulta as diseada
debe quedar como se muestra a continuacin:

Note que en este caso seleccionamos tres campos adicionales de la tabla CLIENTES con el fin de que los
cobradores puedan tener informacin adicional para localizar al cliente para cobro.
6

Es usual que los informes tambin sean llamados reportes, que es la traduccin de la palabra report en
ingls, de ah que se utilice el prefijo RPT para esta consulta.

CONSULTA RPT_DETALLE_FACTURA
Ahora procederemos a realizar la consulta que servir de base para el detalle de la factura. Para
tal efecto, seleccionaremos los siguientes campos:
CAMPOS

TABLA

ID_FACTURA
ID_PRODUCTO
NOM_PRODUCTO
CANTIDAD
PRECIO_UNIT
DESCUENTO
TOTAL_LINEA

DETALLE_FACT
DETALLE_FACT
PRODUCTOS
DETALLE_FACT
DETALLE_FACT
DETALLE_FACT
DETALLE_FACT 7

Guarde la consulta con el nombre RPT_DETALLE FACTURA

En este caso se toman todos los campos de la tabla DETALLE_FACT, que ya fueron actualizados por las consultas
de actualizacin vistas anteriormente.

CREACION DEL INFORME DE FACTURA


Una vez creadas las dos consultas anteriores ya podemos desarrollar el informe que nos permitir
imprimir la factura. Para esto seleccionamos la ficha Crear, y en el grupo Informes, hacemos
click en el Asistente para informes, seleccionamos primero la consulta RPT_FACTURA, y
todos sus campos, de esta manera:

Luego en la misma pantalla elegimos la consulta RPT_DETALLE_FACT y todos sus campos


similar a como lo hicimos cuando creamos el formulario de la factura al inicio del curso.

Luego hacemos click en siguiente, la pantalla ahora muestra la conformacin del informe bsico,
con su encabezado y detalle:

Hacemos click en siguiente, en esta pantalla el asistente nos permite algn tipo de agrupamiento
que nos ser ms til adelante, por el momento ignoraremos la opcin volviendo a hacer click en
siguiente.

Al igual que el caso anterior se nos permite ordenar el informe por algn tipo de campo, sin
embargo al tratarse de una factura, esto no es relevante, en las opciones de resumen se nos
presentan tambin algunas opciones importantes, hagamos click en ella, y vamos a seleccionar
las casillas de verificacin correspondientes al DESCUENTO, IMPUESTO, y TOTAL_LINEA,
al hacer esto el informe sumarizar estas columnas en el informe final ahorrndonos mucho
trabajo de diseo, en cuanto a estos campos. Hacemos click en Aceptar, y luego en Siguiente.

En la siguiente pantalla se nos solicita el tipo de distribucin que se desea para el informe y su
orientacin. No es tarea fcil elegir la distribucin correcta, por lo general se debe repertir el
proceso varias veces para obtener la mejor distribucin de un informe, por otro lado la
orientacin vertical u horizontal depender de la cantidad de columnas que se desee inclur en un
reporte, para un reporte de muchas columnas es mejor la orientacin horizontal.
En nuestro ejemplo seleccionaremos la distribucin Esquema, y la orientacin Vertical y
hacemos click en siguiente.

En la pantalla siguiente se nos muestra un estilo a aplicar, por motivos de ahorro de tinta de las
impresoras es conveniente que todo informe contenga a lo sumo dos colores de tintas, o bien un
impresin bsica en blanco y negro.

Hacemos click en siguiente. Al igual que en casos anteriores ms-access sugiere el nombre de la
primera consulta para el informe, sin embargo esto no quiere decir que no podamos asignar un
nombre diferente. Hagamos click en Finalizar
La presentacin final de la factura deber mostrarse de la siguiente forma:

Y al igual que en el caso del formulario podemos darle nuestro toque personal en la vista
diseo, para que al final se muestre as:

Ahora a modo de prctica disee un informe de ventas que contenga, el nmero de factura, la
fecha, el descuento total, el impuesto total, y el total a pagar, de todas las facturas emitidas en un
perodo determinado.

LECCION 6.
EL PANEL DE CONTROL Y LA SEGURIDAD EN MS-ACCESS

1. El panel de control.
A este punto ya hemos completado la casi totalidad de los pasos que indicamos al inicio del
curso y hemos diseado los cuatro tipos fundamentales de objetos que conforman nuestra base de
datos, a saber:
1.
2.
3.
4.
5.

Tablas
Formularios
Consultas
Informes
Macros

Ahora bien nuestra base, si bien se encuentra bastante avanzada, dista mucho de proveer una
utilidad y seguridad propia para uso por parte de terceros, ya que debemos disear un mecanismo
a travs del cual el usuario pueda acceder a los formularios, pero sin tener la capacidad de
cambiar su estructura, o modificar su diseo. Para esto debemos primero crear lo que se conoce
como el panel de control de la aplicacin8, el cual procederemos a realizar seguidamente.
Haga click en el grupo Herramientas de base de datos, de la ficha del mismo nombre. En este
grupo seleccione Administrador del panel de control. El asistente indicar que si desea crear el
panel, a lo que respondemos S. El cuadro de dilogo se mostrar como sigue:

Existen muchas formas de crear un men principal, la que estudiaremos aqu es la ms sencilla y til para
aquellas personas que no tienen mucha experiencia en Access.

Antes de seguir adelante es conveniente indicar que para que una consulta o tabla pueda ser
visualizada a travs del panel, debe contar previamente con un formulario o un informe, ya que
el panel har referencia nicamente a estos dos tipos de objetos. Otro aspecto importante es que
en cada panel se pueden inclur slo 8 opciones, por lo que si requiere de ms opciones debe
necesariamente crear paneles vinculados.
El panel mostrado es el panel por defecto de ms-access 2007, este ser nuestro men de
arranque. Hagamos click en modificar, e inmediatamente en nueva:

Como primer botn estableceremos uno llamado Registro de facturas, cuya accin ser abrir
el formulario en modo Agregar , el formulario CSLT_ENCABEZADO de esta forma:

Luego hacemos click en Aceptar la pantalla se mostrar as:

Seguidamente procederemos a repetir los pasos anteriores a fin de inclur los siguientes botones:
Texto
Registo de Clientes

Imprimir factura

Comando
Abrir el formulario en modo
agregar.
Abrir el formulario en modo
edicin.
Abrir el informe.

Salir de la aplicacin

Abrir el informe

Inclur productos

Formulario
CLIENTES
PRODUCTOS
RPT_FACTURA

Una vez terminado el panel de control debe mostrarse as:

Finalmente procedemos a hacer click en Cerrar, con lo que se formarn 2 objetos adicionales:
1. Una tabla llamada Switchboard Items.
2. Un formulario llamado Panel de control.

Este ltimo al activarlo directamente mostrar el panel de la siguiente forma:

Ahora podemos darnos a la tarea de modificar dicho panel al igual que lo hemos hecho con los
formularios anteriores, en la vista diseo. Estando en esta vista haga click derecho y selecciones
Encabezado y pie de formulario. En el rea del encabezado inserte una etiqueta utilizando el
cuadro de controles, de la ficha diseo que diga Sistema de planillas, modifquela a su gusto.
En el pie de formulario inserte un botn de comando de la categora Aplicacin que permita
Salir de la aplicacin
Importante. El panel de control es un formulario especial que incluye varios procedimientos de
macro, relacionados con la etiqueta que muestra al inicio, no borre esta etiqueta si no desea
que aparezca en a vista inicial nicamente mrquela y cambie su propiedad Visible 9

Para esto siga las indicaciones de su instructor.

Incorporacin de elementos de seguridad.


Como hemos visto es posible crear un men de acceso que gue al usuario en la aplicacin, el
mismo tiene dos propsitos fundamentales:
1. Establecer un formulario integrado a partir del cual el usuario pueda tener un acceso
ordenado y controlado a los objetos del sistema.
2. Servir de mecanismo de control, para que el usuario no accese partes sensibles del
sistema como por ejemplo la estructura, o tablas de datos o consultas.
Sin embargo esto por s slo no garantiza que el usuario no sienta la humana tentacin de
accesar otros elementos del sistema para lo cual debemos inhibir hasta donde sea posible este
deseo.
Primeramente cambiaremos la configuracin inicial bsica de ms-access, haciendo click en el
botn de office ubicado en la esquina superior izquierda de la pantalla.
Siempre en esta pantalla hacemos click en Opciones de Access, y luego en Base de datos actual,
en la opcin Mostrar formulario elegiremos el formulario Panel de Control que recin hemos
creado, esto har que cuando accesemos nuestra base este formulario sea activado por defecto.
Luego elegiremos Ventanas superpuestas, en la opcin opciones de ventana de documentos y
eliminaremos el check, de las opciones de permitir cambios en el diseo de tablas, Mostrar el
panel de exploracin y permitir el uso de menes. Las modificaciones deben mostrarse as.

Seguidamente, nos posicionaremos en la opcin Centro de confianza, y haremos click en


Configuracin del centro de confianza

Una vez en ella hacemos click en Configuracin de macros, y elegimos habilitar todas las
macros:

Finalmente hacemos click en aceptar, y luego cerramos la base de datos completamente y la


volvemos a abrir a fin de que nuestros cambios se reflejen en ella as:

Note que ahora ya no es posible accesar al panel de exploracin ni cambiar nada del diseo
original, y el panel de control se muestra automticamente a entrar a la base de datos.

Establecimiento de un password general de acceso 10


Finalmente estableceremos un password general para nuestra base. Para esto debemos cerrar
completamente nuestra base, haciendo click en el botn de salida del panel de control; luego
debemos abrir ms-acces, sin abrir la base, y ubicar el subdirectorio donde la misma se encuentra.
Seguidamente marcamos la base (sin abrirla) y seleccionaremos la opcin de abrir en modo
exclusivo ubicada en la esquina inferior derecha del cuadro de dilogo respectivo; manteniendo
oprimida la tecla Shift al hacerlo:

Al mantener oprimida dicha tecla notar que todas las especificaciones anteriores fueron
ignoradas.
Ahora vaya a la ficha Herramientas de la base de datos, y seleccione el cono de establecer
contrasea para la base de datos y defina su password. 11

10

Ms-access provee muchas otras opciones para su seguridad, como por ejemplo la definicin de perfiles y grupos
de usuarios, y encriptacin de la base, sin embargo estos elementos no forman parte del contenido del presente
curso.
11
Asegrese de no olvidar su clave para no tener inconvenientes serios que lo lleven incluso a perder todo su
trabajo.

S-ar putea să vă placă și