Você está na página 1de 85

1 1. .

1 1 I In nt tr ro od du uc cc ci i n n
La creacin de un sistema de software que incluya una Base de Datos (por ejemplo, un
sistema de control escolar, de inventarios, de facturacin o de nminas) es una actividad
que se encuentra incluida dentro de la disciplina de ingeniera conocida como Ingeniera de
Software. Esta disciplina proporciona mtodos generales que se utilizan como gua para el
proceso de creacin o modificacin de tales sistemas, adems de que plantea que un
sistema, sin importar su tipo, debe contar con atributos tales como mantenibilidad,
confiabilidad, eficiencia y usabilidad (Sommerville, 2000).
Dado que los sistemas se crean para ser utilizados en
organizaciones humanas y stas son diferentes entre s, un
sistema exitoso ser aquel que mejor se adapte a las
necesidades especficas de la organizacin para la cual fue
creado, lo cual implica que los sistemas creados para
organizaciones diferentes diferirn uno del otro, aunque
se trate de sistemas del mismo tipo (es decir, un sistema
de control de inventarios creado para una empresa A ser
diferente a un sistema de control de inventarios creado
para una empresa B).
As, el xito en la creacin de un sistema es un proceso complejo que se fundamenta en la
percepcin, el juicio y la creatividad de su desarrollador, razn por la cual la utilizacin de
herramientas automatizadas para la creacin de sistemas implica una ayuda para algunas
actividades del proceso, pero no sustituye el ingenio y la experiencia humanos.
An cuando lo anterior presupone que no existe
un proceso estndar para la creacin de un
sistema, existen mtodos que definen las
actividades fundamentales comunes a ello. La utilizacin de un mtodo presenta la ventaja
de estandarizar las actividades, facilitar su automatizacin y reducir los tiempos de creacin
y capacitacin relativos al sistema.
Dentro de la ingeniera de software, a estos mtodos se les conoce como modelos de
desarrollo de software e incluyen, por ejemplo, al modelo de cascada y al modelo de
Objetivos especficos
Comprender los conceptos bsicos asociados a las Bases de Datos.
Analizar los componentes bsicos de un Sistema de Base de Datos.
Disear un Sistema de Base de Datos.
Utilizar el programa Microsoft Access XP como herramienta para la creacin de un
Sistema de Base de Datos.



desarrollo evolutivo, los cuales se explicarn ms adelante en forma muy breve debido a
que rebasan los lmites del presente documento.
Aunque con algunas diferencias, en general podemos afirmar que todos los modelos de
desarrollo de sistemas de software incluyen 4 actividades imprescindibles:
Anlisis. Aqu se identifica lo que se espera del sistema y las restricciones asociadas a
ste.
Diseo. Esta etapa incluye desde la creacin de una imagen mental de la estructura y
funcionamiento del sistema (diseo conceptual), hasta su traslado a diseos ms
detallados describiendo la configuracin del sistema.
Implementacin y Prueba. Aqu se construye el sistema con la ayuda de herramientas
automatizadas, siempre tomando en cuenta que el producto debe cumplir con las
especificaciones descritas en las etapas anteriores; se incluyen tambin todas las
actividades necesarias para asegurar que el sistema realmente cumple con el propsito
para lo cual fue creado.
Evolucin y Mantenimiento. En esta etapa se incluyen las actividades relacionadas con
el mantenimiento del sistema considerando que, debido a que las organizaciones
humanas cambian con el paso del tiempo (es decir, evolucionan), todos los sistemas
sern objeto de modificaciones.
Utilizando la creacin de un sistema de facturacin como ejemplo prctico, en este captulo
explicaremos las tres primeras actividades del proceso de elaboracin de un Sistema de
Base de Datos.
Antes de proceder a crear nuestro Sistema de Base de Datos, sin embargo, definiremos
algunos conceptos bsicos, as como el modelo de proceso (mtodo) que utilizaremos y las
fases relacionadas con la planeacin de un proyecto como ste (lo cual incluye definir y
organizar nuestras actividades como creadores del sistema).
1 1. .2 2 C Co on nc ce ep pt to os s b b s si ic co os s
Hasta ahora hemos mencionado sistemas que incluyen una Base de Datos, pero no hemos
definido qu es un dato?, qu es una Base de Datos?, cules son las herramientas
automatizadas que podemos utilizar para crear una Base de Datos?
Hansen (1998) define los
siguientes conceptos:
Dato: Es un hecho aislado; no
constituye informacin
mientras no se relacione con
otra cosa (por ejemplo, 6 de
febrero de 1985 es un dato).
Informacin: Est constituida
por datos organizados o
resumidos (por ejemplo, una
grfica es un resumen visual
de datos, por lo que
proporciona informacin). La

El futuro es hoy
Arte dentro de las PC

Cansados del gris del gabinete del CPU y de lo convencional de su diseo,
miles de artistas y entusiastas de todo el mundo decidieron darle un soplo de
aire fresco. Esta nueva forma de expresin, conocida como Casemodding,
consiste en alterar el exterior de las PCs para hacerlas ms personales. Se
trata no slo de modificar su forma, sino tambin de adaptar los componentes
a objetos impensados, como una mquina de hacer caf, por ejemplo (Y
pensar que no hace mucho, los fanticos de Apple pusieron el grito en el cielo
cuando un fantico de las computadoras anunci que haba modificado una
Mac, insertndole partes de una PC!).
http://www.ciudad.com.ar/ar/portales/tecnologia/nota
/0,1357,50485,00.asp


fecha 6 de febrero de 1985 se convierte en informacin al asociarse con el da de
nacimiento de una persona.
Base de Datos (BD): Es una coleccin de datos interrelacionados que pueden ser
utilizados por uno o ms programas de aplicacin.
Sistema de Informacin: Es un sistema automatizado
que organiza datos para producir informacin.
Sistema de Base de Datos: Est compuesto por una
Base de Datos, un sistema de gestin de Bases de Datos, el
hardware y el personal apropiados. Estos ltimos pueden
dividirse en: el programador (quien crea programas de
aplicacin que utilizan la base de datos), el usuario final
(quien accesa la base de datos por medio de programas de
aplicacin) y, por ltimo, el administrador de la base de
datos (quien se encarga del control general del Sistema de
Base de Datos).
Sistema de Gestin de Bases de Datos (DBMS, por sus siglas en ingls): Es un sistema
computacional que facilita la gestin (administracin) de Bases de Datos (por ejemplo,
Access, Dbase, Oracle, Informix, SQL Server, etc.).
En general, las bases de datos permiten el almacenamiento de grandes volmenes de
informacin, de tal manera que su creacin, actualizacin y consulta faciliten la toma de
decisiones dentro de las organizaciones.
Modelos de procesos
Como ya se mencion, podemos utilizar diversos modelos (mtodos) para la creacin de un
Sistema de Base de Datos. Cada modelo representa al proceso de creacin desde una
perspectiva particular, por lo que slo provee informacin parcial acerca de ese proceso.
Estos modelos implican procesos generales para el desarrollo de un sistema. Sommerville
(2000) define los modelos ms conocidos como sigue:
Modelo de cascada. Toma las actividades fundamentales del proceso de desarrollo de
software y las representa como fases separadas del proceso que incluyen el anlisis del
sistema, el diseo del sistema, la implementacin y pruebas de unidad la integracin y
prueba del sistema y la operacin y mantenimiento del mismo. (Ver figura 1.1).



Desarrollo evolutivo. Este enfoque entrelaza las actividades de anlisis, diseo e
implementacin: se desarrolla rpidamente un primer sistema a partir de
especificaciones abstractas y despus se refina con la ayuda del cliente, para producir
un sistema que satisfaga sus necesidades.
Desarrollo formal de sistemas. Este enfoque se basa en la produccin de una
especificacin matemtica formal del sistema y en la transformacin de esta
especificacin, utilizando mtodos matemticos, para construir un programa. La
verificacin de los componentes del sistema se lleva a cabo haciendo argumentos
matemticos acordes a su especificacin.
Desarrollo basado en la reutilizacin. Este enfoque se basa en la existencia de un
nmero significante de componentes reutilizables. El proceso de desarrollo del sistema
se enfoca en integrar estos componentes en el sistema ms que en desarrollarlos desde
cero.
Modelo adoptado
Para el desarrollo de nuestro sistema, utilizaremos el Modelo de Cascada (Ver figura 1.1),
en el cual es posible identificar 5 fases iterativas que Sommerville describe como:
Anlisis del sistema (Definicin de
requerimientos). A travs de entrevistas con el
usuario o cliente, aqu definimos en forma
general los servicios, restricciones y metas del
sistema. Es decir, aqu definimos lo que los
usuarios quieren que haga el sistema.
Diseo del sistema. La fase anterior sirve
como base para que, posteriormente,
determinemos las caractersticas del sistema
en forma detallada: sus elementos
fundamentales, sus relaciones y los procesos
incluidos.
Figura 1.1 Modelo de Cascada



El futuro es hoy
DVD de papel.

Dos empresas japonesas, Sony y Toppan, decidieron lanzar un nuevo
producto: un DVD compuesto en su mayora con papel, de manera
que se puede cortar o romper para evitar el robo de informacin. El
invento almacena hasta dos horas de video de alta definicin en sus
25 GB de informacin y, adems, permite abaratar los costos de
produccin de los discos. Slo resta saber si las empresas tendrn
conciencia ecolgica y reciclarn el papel con el que est fabricado
este nuevo DVD.
http://www.ciudad.com.ar/ar/portales/tecnologia
Implementacin y prueba de unidad. Esta etapa se refiere a la construccin del sistema.
Normalmente, tanto el diseo como la construccin se realizan primero por partes
(unidades), cuyo funcionamiento deber de ser verificado antes de incluirlo en la
versin final del sistema.
Integracin y prueba del sistema. Una vez revisadas y aprobadas por separado, las
unidades individuales se integran y prueban como un sistema completo; con ello nos
aseguramos de que el sistema funciona correctamente y cumple con los deseos del
cliente.
Operacin y mantenimiento. El sistema se instala y se pone en uso prctico. El
mantenimiento implica corregir errores no descubiertos en las etapas anteriores,
mejorar la implementacin de las unidades del sistema y readaptar los servicios del
sistema una vez que se descubren nuevos requerimientos.
Planeacin del proyecto
La administracin efectiva de un proyecto depende de planear completamente su progreso.
El administrador del proyecto debe anticiparse a los problemas que podran surgir, as como
preparar soluciones tentativas a esos problemas. El plan preparado al inicio del proyecto,
debe utilizarse como un conductor para el mismo, por lo que debe ser el mejor posible de
acuerdo con la informacin disponible y debe evolucionar conforme el proyecto progrese y
la informacin disponible mejore. Las metas globales del negocio son un factor importante
que debe considerarse cuando se formula el plan del proyecto.
Qu se incluye en el Plan de Proyecto? Aqu se deben identificar los recursos disponibles
y las actividades necesarias para la consecucin del proyecto, adems de la divisin y
calendarizacin del trabajo. En algunas ocasiones, el plan del proyecto es un nico
documento que incluye todos los diferentes tipos de planes creados para la organizacin
(planes de calidad, de mantenimiento, de desarrollo del personal, etc.), en otras, el plan slo
se refiere al proceso de desarrollo de un aspecto especfico (un sistema de facturacin para
la organizacin, por ejemplo).
El plan que se describe aqu tiene que ver con el ltimo tipo de plan mencionado. Los
detalles de este plan varan dependiendo del tipo de proyecto y de la
organizacin. Sin embargo, muchos planes incluyen las siguientes
secciones:
Introduccin. Describe
brevemente los objetivos del
proyecto y expone las
restricciones que afectan el
proyecto (fecha de entrega
requerida, personal disponible,
presupuesto global, etc.).
Organizacin del proyecto.
Describe la forma en que el
equipo de desarrollo est
organizado, la gente
involucrada y sus tareas en el
equipo.


Anlisis de riesgo. Describe los posibles riesgos del proyecto, la probabilidad de que
surjan estos riesgos y las estrategias de reduccin de riesgos propuestas.
Requerimientos de recursos de hardware y software. Describe el hardware y la ayuda
de software requerida para llevar a cabo el desarrollo. Si es necesario comprar
hardware, se deben incluir los estimados de los precios y las fechas de entrega.
Divisin del trabajo. Describe la divisin del proyecto en actividades e identifica los
eventos crticos (hitos) y productos a entregar asociados con cada actividad.
Programa del proyecto. Describe las dependencias entre actividades, el tiempo
estimado requerido para alcanzar cada hito y la asignacin de la gente a las actividades.
Mecanismos de supervisin e informe. Describe la administracin de informes y cundo
deben producirse, as como los mecanismos de supervisin del proyecto a utilizar.
El plan del proyecto debe revisarse regularmente durante el proyecto. Algunas partes, como
el calendario del proyecto, cambiarn frecuentemente; otras sern ms estables. Asimismo,
debe utilizarse una organizacin del documento que permita reemplazar fcilmente las
secciones modificadas.
Para nuestro ejemplo, supondremos que la empresa ficticia Universal S.A. de C.V. desea
automatizar su facturacin, por lo que solicita se le desarrolle un sistema automatizado que
contemple, entre otras cosas, lo siguiente:
Al momento de facturar el sistema debe permitir, por ejemplo, que se seleccionen o
agreguen datos relacionados con el nombre del cliente, el artculo vendido, etc.
El sistema debe emitir, adems de las facturas, informes de concentrados de la
facturacin, de tal forma que los interesados puedan seleccionar un periodo y analizar
el monto total facturado y el monto del IVA acumulado.
Para mayor seguridad, el sistema debe contar con una contrasea para poder accesar a
l.
El sistema debe ser amigable, por lo que deber de presentar pantallas de captura y de
consulta de fcil acceso. Lo anterior tambin implica que el Sistema de Gestin de
Bases de Datos debe ser el ms fcil de usar o el ms conocido para el usuario.
Con base en lo anterior te mostramos el plan de proyecto para nuestro sistema de
facturacin.
Plan de proyecto para el sistema de facturacin
Proyecto
Sistema para la emisin de facturas de la empresa Universal, S.A. de C.V.
Introduccin
La empresa Universal, S.A. de C.V. es una empresa cuyo giro comercial consiste en la
comercializacin de equipo y accesorios de cmputo. El manejo administrativo de los
productos que comercializa conlleva un esfuerzo considerable de parte de la administracin
de la empresa, al tener que elaborar las facturas de forma manual.
Debido a lo anterior, la empresa Universal, S.A. de C.V, ha decidido computarizar su
proceso de Facturacin, que le permita elaborar las facturas con una mayor precisin y
agilice dicho proceso.



El futuro es hoy
Computadora desechable.

Cypak., empresa dedicada a desarrollar tecnologas a bajo costo, cre la
computadora desechable, que consiste en una caja de cartn con sensores y
chips capaces de recolectar, procesar e intercambiar informacin encriptada,
gracias a un mdulo electrnico basado en un pequeo chip y sensores
integrados en un envase de cartn, con apenas 32 kilobytes de memoria. Es
posible guardarlas en un bolsillo y se espera tengan un costo de un dlar por
unidad. Posteriormente, se lo podr conectar a una computadora para
intercambiar toda la informacin en forma segura.

http://www.ciudad.com.ar/ar/portales/tecnologia/nota
/0,1357,50464,00.asp
Objetivos del proyecto:
El objetivo de este proyecto es construir un programa de cmputo (software) para la
emisin de facturas de la empresa Universal, S.A. de C.V., el cual se denominara:
Sistema de Facturacin
Algunas caractersticas principales del Sistema:
El sistema debe ser amigable para el usuario.
Debe permitir la introduccin y actualizacin de datos por medio de formularios o
ventanas, haciendo uso del teclado y ratn.
Debe incluir en cada formulario botones de accin que permitan guardar, generar nueva
factura, imprimirla y cerrar el formulario.
El sistema debe permitir que al momento de facturar se seleccione o agregue el nombre
del cliente.
El sistema debe permitir que al momento de facturar se seleccione o agregue los datos
de los artculos.
Caractersticas adicionales del Sistema
De operacin:
El sistema operar bajo ambiente Windows en un entorno provisto de una interfaz
agradable para operar y aprender fcilmente.
De seguridad:
Deber mantener un estricto control que no permita el acceso a usuarios no
autorizado.
De Hardware:
El sistema deber poder ejecutarse sin problemas en equipos con procesador
Pentium 800 Mhz. o superior a partir de 128 MB de memoria RAM en un ambiente
grfico y espacio de 20 MB disponible en disco duro.
De Usabilidad:
El sistema deber poder usarse con facilidad por personal no especializado.
Metodologa
La metodologa incluye seis fases:
1 fase. Determinacin de los
requerimientos de informacin.
En esta fase se proceder a
recopilar la informacin del
dominio de la aplicacin y la
informacin administrativa
concerniente al proyecto
2 fase. Diseo conceptual del
Programa.
Con base en los requerimientos
de informacin y en los
procesos administrativos


contemplados en la primera fase, se realizar un diseo conceptual del Programa a
desarrollar.
3 fase. Desarrollo o construccin del sistema:
Esta fase corresponde a la construccin del programa en la que se realizar la construccin
y las pruebas de unidad del sistema, en concordancia con el diseo realizado, lo cual
quedar claramente sealado en la documentacin asociada.
4 fase. Pruebas de integracin y ajustes del sistema.
Se integrarn todas y cada una de las pantallas del sistema, ya integrado se realizaran las
pruebas y ajustes en caso necesario.
5 fase. Implantacin de prueba del programa y capacitacin.
La versin anterior se instalar en la empresa para que se utilice de manera parcial y
paralela a la operacin normal.
6 fase. Evaluacin final y ajustes.
Con base en los resultados de la fase anterior se proceder a realizar los ajustes necesarios
al programa para presentar su versin final, la cual ser liberada como la versin 1.0 del
sistema.
Trminos y condiciones
Para poder llevar a buen trmino el presente proyecto se requiere contar con los siguientes
recursos, que debern ser proporcionados por el Cliente:
Designar una persona por parte de la Empresa, para que participe en la Coordinacin
del anlisis, diseo, desarrollo, pruebas, implantacin y liberacin del programa.
Para el desarrollo del proyecto, el Cliente asignar un equipo de cmputo consistente en
PC e impresora.
Al trmino de la implantacin del sistema, se otorgar al Cliente:
Una gua rpida del sistema.
Un manual de usuario.
Un disco compacto con el sistema de Facturacin en su totalidad.
Estimacin de tiempos y costos del programa
El tiempo previsto para la realizacin total del proyecto es de 11 semanas de acuerdo al
cronograma de actividades, dicho sistema tendr u costo de $ 6,950.00 como se muestra a
continuacin.



Cronograma de actividades


Actividad 1.1
Utiliza el plan presentado anteriormente como gua para crear el plan de proyecto de tu
propio Sistema de Facturacin, que incluya:
1. Ttulo
2. Introduccin
3. Objetivos
4. Funciones generales del sistema
5. Productos esperados
6. Fases del proyecto (metodologa)
7. Recursos necesarios




8. Cronograma de actividades.


1 1. .3 3 A An n l li is si is s d de el l s si is st te em ma a ( (F Fa as se e 1 1) )
Ahora hemos definido todos los conceptos necesarios y las consideraciones previas a la
creacin de nuestra aplicacin, por lo que procederemos a la definicin de requerimientos,
por ser esta la primera fase en la creacin de cualquier sistema.
Como mencionamos antes, el proceso inicia cuando el usuario (nuestro cliente) define lo
que quiere que haga el sistema. Esto implica que realizaremos dos tipos de anlisis: un
anlisis interno, referente a las caractersticas que deber de tener nuestro sistema a fin de
cubrir las necesidades especficas del usuario; y un anlisis externo, referente a la posible
interaccin de nuestro sistema con algn otro sistema ya existente. A este anlisis tambin
se le conoce como Anlisis de requerimientos.
Una vez que hemos definido lo que espera el usuario del sistema (lo cual se logra a travs
de entrevistas o encuestas aplicadas a los usuarios, revisando y analizando informacin
sobre el tema, analizando otros sistemas similares, etc.), es necesario que identifiquemos
los datos que debern incluirse en nuestra Base.
Para nuestro ejemplo, analizaremos los datos bsicos de una factura que incluyen: datos de
la empresa, del cliente, del vendedor, del tipo de pago, de los artculos vendidos y de la
factura, los cuales te mostramos en la figura 1.2. Con base en dicho anlisis, podemos
definir que los datos que deber incluir nuestro Sistema son:
Datos de la empresa. Observa en que en el encabezado de la factura se muestran el
logotipo de la empresa y sus datos generales, tales como nombre, direccin y RFC.
Estos datos aparecen en todas las facturas de una empresa y vienen impresos de
antemano en los formatos de factura (recuerda que las facturas son comprobantes
utilizados para efectos fiscales, por lo que la mayora de las empresas no estn
autorizadas por la SHCP para imprimir sus propios formatos). Para nuestro ejemplo,
utilizaremos estos datos en los encabezados de los informes que se explicarn ms
adelante.
Datos de la factura. Con el fin de realizar un mejor control de las facturas emitidas,
todas las facturas cuentan con un nmero que las identifica (folio), su fecha de emisin
y la cdula fiscal de la empresa. Adems, en una factura es posible especificar las
condiciones generales aplicables a la venta realizada (condiciones de venta). Esta
ltima informacin generalmente se coloca en el pie de la Factura y viene impresa en
los formatos para facturacin utilizados por la mayora de las empresas.
Datos del cliente. Entre los datos del cliente aqu incluidos figuran su nombre, RFC,
direccin, telfono y, en algunos casos, una clave de identificacin.


Datos del tipo de pago. Dado que la empresa maneja diversas formas de pago (contado,
crdito, etc.), las facturas debern de indicarlo.

Datos del vendedor. Es recomendable que incluyan datos relacionados con el vendedor,
por ejemplo, para atender posibles aclaraciones o calcular el monto de su comisin por
las ventas realizadas. Dichos datos pueden ser su nombre y su clave de identificacin.
Datos de los artculos. Toda factura debe incluir datos de los artculos vendido, tales
como: su clave, descripcin, unidad de medida, precio unitario y cantidad vendida.
Clculos. Finalmente, la factura debe incluir el clculo del importe parcial y total de la
venta, as como el IVA aplicable. Estos datos debern de ser almacenados en el sistema
para que la empresa pueda llevar el control de sus ingresos y de los impuestos que
deber pagar a la Secretara de Hacienda.
En la figura 1.2 tambin puedes observar que una Factura puede contener otros datos tales
como conducto y transporte para la entrega, nmero de pedido, etc. Sin embargo, estos
datos no sern considerados dentro de nuestro Sistema de facturacin con el fin de
simplificar el ejemplo.

Actividad 1.2
Figura 1.2 Estructura de una Factura


Con base en lo aprendido en esta seccin,
1. Realiza un anlisis general de los datos que incluir la Base que crears para tu Sistema
de Facturacin.


1 1. .4 4. . D Di is se e o o d de el l s si is st te em ma a ( (F Fa as se e 2 2) )
En esta etapa, iniciaremos el diseo de la estructura de la Base de Datos. Al diagrama que
muestra dicha estructura se le llama Modelo de datos y en ste se definen los datos con los
que trabajar nuestro sistema, sus caractersticas y las relaciones existentes entre ellos.
Asimismo, en esta fase definiremos el Modelo entidad-relacin, que no es ms que una
descripcin verbal de los componentes de la Base de Datos. Finalmente, incluiremos aqu el
diseo de las ventanas o pantallas de captura, de los informes que proporcionar nuestro
sistema y de los mens y las opciones que posibilitarn un manejo sencillo del sistema.
Diseo del Modelo de datos
Como primer punto, es necesario definir cules
son los objetos o Entidades que integran la
Base de Datos y los datos que contiene cada
uno de ellos (dado que estos datos constituyen
las caractersticas de las entidades, tambin son
llamados Atributos).
En la Tabla No. 1.1, te mostramos las
entidades de la Base de Datos para nuestro
ejemplo del Sistema de Facturacin y sus
atributos correspondientes.
Como puedes observar, estas entidades y sus
respectivos atributos corresponden a los datos
identificados en la factura de la figura 1.2.
Observa tambin que no hemos incluido los
datos de la empresa en esta tabla. Esto se debe
a que dichos datos sern los mismos para todas
las facturas y, o bien sern incluidos como
rtulos en los informes que proporcionar
nuestro sistema, o bien vendrn impresos en
los formatos donde se imprimirn las facturas, por lo que no se incluirn dentro de los datos
que sern acumulados en nuestra Base.
Lo anterior debe ser representado en el diagrama que se conoce como Modelo de Datos.
Este diagrama inicia definiendo la entidad principal (en este caso, la factura). Esta se coloca
en el centro del diagrama y a su alrededor se aaden las entidades que se relacionan con
ella y sus atributos.
As, iniciamos la construccin de nuestro
diagrama definiendo la relacin Factura-
FACTURA CLIENTE
n 1
Figura 1.3


Cliente, tal y como se muestra en la figura 1.3.
Observa que en la figura anterior hemos aadido una n al lado de la entidad Factura y un
1 al lado de la entidad Cliente. A esto se le conoce como cardinalidad de la relacin e
indica cuntas instancias de una entidad se relacionan con una instancia de la otra entidad
(una instancia es una fila de datos en una tabla); es decir, indica si para cada fila de datos
en una tabla habr una o ms filas relacionadas en la otra tabla.
Cmo se colocan estos nmeros? La cardinalidad de una relacin se coloca del lado de la
entidad que se menciona al final; es decir, cuando definimos la cardinalidad de una entidad
A respecto de una entidad B, el smbolo que indica la cardinalidad se anotar al lado de B.
Por ejemplo, para nuestro sistema de facturacin, sabemos que una Factura va a contener
los datos de 1 solo Cliente (una factura nunca contendr los datos de ms de un cliente), por
lo que se coloca un 1 al lado de la entidad Cliente. As, la cardinalidad Factura-Cliente
queda como se muestra en la figura 1.3a.
Asimismo, sabemos que un Cliente puede
aparecer en una o en varias Facturas, por lo
que se coloca un 1 y una n al lado de la
entidad Factura (observa la figura 1.3b).
Sin embargo, cuando tenemos una
cardinalidad 1,n como en el caso anterior,
siempre anotamos la cardinalidad ms alta:
en este caso, borramos el 1 y dejamos
solamente n al lado de la entidad Factura. La
cardinalidad Cliente-Factura queda como
muestra la figura 1.3c.
Finalmente, si juntamos las dos
cardinalidades anteriores, la relacin
Factura-Cliente quedara como se muestra
en la figura 1.3d y se interpreta de la
siguiente manera: Por cada fila de la tabla
Factura, habr una fila relacionada en la
tabla Cliente; mientras que, por cada fila en
la tabla Cliente, habr una o varias filas relacionadas en la tabla Factura.

Siguiendo con la construccin de nuestro modelo, ahora aadimos la entidad Tipopago y
Figura 1.3d
FACTURA CLIENTE
n 1
Figura 1.3a
FACTURA CLIENTE
1
FACTURA CLIENTE
1,n
Figura 1.3b
FACTURA CLIENTE
n
Figura 1.3c
FACTURA CLIENTE
n 1
TIPOPAGO
n
Figura 1.4b La cardinalidad anterior se describe solamente como n.
Figura 1.4c Una Factura puede contener un solo Tipopago.
FACTURA CLIENTE
n 1
TIPOPAGO
n 1
FACTURA CLIENTE
n 1
TIPOPAGO
1,n
Figura 1.4a Un Tipopago puede aparecer en una o varias Facturas.


repetimos el procedimiento anterior tal como se muestra en la secuencia de las figuras 1.4a,
1.4b y 1.4c.
Adems de lo anterior, sabemos que cada Factura deber de estar asociada a un vendedor,
por lo que es necesario modelar la relacin Factura-Vendedor, cuya cardinalidad te
mostramos en las figuras 1.5a, 1.5b y 1.5c.

Finalmente, sabemos que en cada venta pueden venderse uno o ms artculos, y que un
artculo puede venderse constantemente, mientras que otro artculo puede no venderse; lo
anterior implica que una Factura podr contener los datos de uno o ms artculos distintos y
tambin significa que, adems, cada artculo especfico podr aparecer en varias facturas o
en ninguna. Todo esto nos lleva a la necesidad de modelar la relacin Factura-Artculo,
cuya cardinalidad quedara como se muestra en las figuras 1.6a, 1.6b y 1.6c
CLIENTE
n 1
TIPOPAGO
n 1
VENDEDOR
FACTURA


1,n
Figura 1.5a Un Vendedor puede aparecer en una o varias Facturas.
CLIENTE
n 1
TIPOPAGO
n 1
VENDEDOR
FACTURA


n

Figura 1.5b. La cardinalidad anterior se expresa como n.
CLIENTE
n 1
TIPOPAGO
n 1
VENDEDOR
FACTURA
1

n

Figura 1.5c. Una Factura puede contener un solo Vendedor.





Una vez completado el ejercicio anterior, el modelo de datos para el sistema de facturacin
debe quedar como te mostramos en la figura 1.7. Observa que existen diferentes relaciones
entre las entidades; dichas relaciones pueden ser: de 1 a 1 (11), de 1 a varios (1n), de
varios a varios (nn).
CLIENTE
n 1
TIPOPAGO
n 1
VENDEDOR
1

n
n

1,n
ARTCULO
FACTURA
Figura 1.6b. La cardinalidad anterior queda como n. Asimismo, una Factura
puede contener uno o varios Artculos
CLIENTE
n 1
TIPOPAGO
n 1
VENDEDOR
1

n
n

n
ARTCULO
FACTURA
Figura 1.6c. La cardinalidad anterior queda como n.
CLIENTE
n 1
TIPOPAGO
n 1
VENDEDOR
1

n
1,n

ARTCULO
FACTURA
Figura 1.6a. Un Artculo puede aparecer en una o varias Facturas



Observacin:
Algunos autores sustituyen n por .
Notars adems que, para nuestro ejemplo, las entidades Factura y Artculo tienen una
relacin nn. Siempre que esto ocurra, lo indicaremos en el diagrama con un rombo
dibujado sobre la lnea slida que indica la relacin entre el Artculo y la Factura; a estos
rombos les llamaremos uniones. Todas las uniones dentro del modelo de datos indican la
generacin de una tabla. Algunos autores sealan las uniones con un rectngulo que
encierra las entidades, lo cual te mostramos en la figura 1.8.

Observars que cuando usamos uniones, la cardinalidad de las relaciones se expresa
diferente. En este caso, las n cercanas a la unin hacen referencia a cantidades de artculos
o facturas, por lo que al decir que la cardinalidad Factura-Unin ser de 1n, estamos
diciendo que una factura especfica podr contener uno o varios artculos diferentes,
mientras que al decir que la cardinalidad Unin-Factura ser de n1, estamos indicando
que uno o varios artculos podrn aparecer en una factura.
1
FACTURA CLIENTE
TIPOPAGO
ARTICULO
VENDEDOR
n
n
n
n
1
1
n
Figura 1.7 Modelo de Datos
FACTURA
ARTICULO
FACTURA
ARTICULO
UNION
FACTURA-
ARTCULO
n

n
1

n



n
FACTURA
ARTICULO
n



Figura 1.8. Uso de las uniones en el Modelo de datos.


El mismo razonamiento se sigue para expresar la cardinalidad Artculo-Unin como 1n
(un artculo podr aparecer en una o varias facturas), y la cardinalidad Unin-Artculo como
n1 (una o varias facturas pueden contener un artculo especfico).
Despus realizar lo anterior, aadimos los atributos asociados a cada entidad (los que
definimos en la Tabla 1.1). Nuestro modelo de datos queda como te mostramos en la figura
1.9.
Observaciones:
Para homogeneizar la notacin de entidades y atributos, as como la representacin de sus
interrelaciones dentro del modelo de datos, nosotros hacemos lo siguiente:
Cuando una entidad tiene atributos que se definen una sola vez, por ejemplo: el nombre
del cliente, su direccin, etc., la llamamos catlogo (haciendo una analoga, por
ejemplo, con el catlogo de clientes que cada empresa conserva en papel); en caso
contrario, la conocemos como tabla.
Escribimos el nombre de cada entidad en mayscula y singular, encerrado dentro de un
rectngulo.
Escribimos el nombre de cada atributo con la primera letra en mayscula y el resto en
minscula, encerrado dentro de un rectngulo con orillas redondeadas.
Colocamos los atributos alrededor de la entidad correspondiente, unidos a ella por una
lnea slida (continua).
Representamos la relacin entre entidades con una lnea slida que une los rectngulos.
Figura 1.9. Modelo de Datos



El modelo presentado en la figura 1.9, sin embargo, no incluye la situacin siguiente:
imagina que hace tres meses creamos una factura con nuestro sistema. En este caso, el
sistema guard la factura con el precio de venta y el porcentaje de IVA vigentes hace tres
meses. Qu pasara si el da de hoy modificamos nuestros precios y, debido a ello,
actualizamos el catlogo de productos?
El sistema automticamente actualizara el precio contenido en todas las facturas
incluyendo la que hicimos hace tres meses, lo cual sera un error, pues en la fase de anlisis
mencionamos que los clculos de las facturas (el importe parcial y total de la venta, as
como el IVA aplicable) deban de estar almacenados en el sistema para que la empresa
pudiera llevar el control de sus ingresos y de los impuestos que deba pagar a la Secretara
de Hacienda.
Dado que nuestro sistema debe de evitar que se modifiquen los datos de las facturas
almacenadas cada vez que se realice una actualizacin en los datos de los artculos (al
aumentar o disminuir los precios, por ejemplo), debemos aadir al modelo otros atributos
que deben almacenarse, tales como la cantidad, el precio y el porcentaje de IVA que tenan
los artculos en el momento en que se cre cada factura.
Como estos atributos se refieren a la relacin existente entre las entidades Factura y
Artculo, se asocian a la unin existente entre ellos. As, el modelo de datos para nuestro
sistema quedar como se muestra en la figura 1.10.
Figura 1.10. Modelo de Datos para el Sistema de Facturacin (Terminado)




Diseo del Modelo Entidad-Relacin
Una vez que hemos creado nuestro modelo de datos, y antes de disear la estructura de la
base, debemos disear el modelo entidad-relacin, que no es ms que la descripcin verbal
de las entidades y sus atributos.
Para realizar dicha descripcin se utiliza la siguiente notacin general:
Nombredelaentidad (atributo 1, atributo 2, atributo n)
Adems, a todas las entidades les agregaremos un atributo especial conocido como
Identificador al cual nosotros, para estandarizar, llamaremos Clave principal o ID. En la
notacin anterior, la clave principal de la entidad se coloca antes de sus atributos, quedando
de la siguiente forma:
Nombredelaentidad (ID, atributo 1, atributo 2, atributo n)
Cuando se trata de una entidad que tiene una relacin n1 (como ocurre con la entidad
Factura de nuestro sistema, que es la que tiene la cardinalidad n), sta debe contener las
claves principales de las entidades del lado 1 con las cuales est relacionada. A dicha clave
le llamaremos Clave externa o Id (observa el uso de una letra minscula para distinguirla
de la clave principal). La notacin que utilizaremos para esta clave externa es
IdNombredelaentidad y, en este caso, quedara como sigue:
Nombredelaentidad (ID, atributo 1, atributo 2, atributo n, IdNombredelaentidad)
Las uniones utilizarn como clave principal al conjunto
formado por las claves externas de las tablas
relacionadas.
De acuerdo con lo anterior, para nuestro sistema de
facturacin el modelo entidad-relacin quedara como
sigue:
catCliente (ID, Rfc, Nombre, Direccin, Ciudad, Estado,
Telfono, Cp)
Clave Principal: ID
catVendedor (ID, Nombre, PorComision)
Clave Principal: ID
catTipoPago (ID, TipoPago)
Clave Principal: ID
catArticulo (ID, Clave, Descripcion, UnidadMed, PrecUnitArt, PorIvaArt)
Clave Principal: ID
tabFactura (ID, Folio, Fecha, IdCliente, IdVendedor, IdTipoPago)
Clave Principal: ID
Claves Externas:



IdCliente (Referencia a ID en la tabla catCliente)
IdVendedor (Referencia a ID en la tabla catVendedor)
IdTipoPago (Referencia a ID en la tabla catTipoPago)
unionArticuloFacturado (IdFactura, IdArticulo, Cantidad, PrecUnitFac, PorIvaFac)
En este caso, la clave se compone por dos claves externas:
IdFactura (Referencia a ID en la tabla tabFactura)
IdArticulo (Referencia a ID en la tabla catArticulo)


Actividad 1.3
Realiza las siguientes actividades:
1. Elabora el Modelo de Datos de tu sistema de facturacin, mostrando la cardinalidad de
las relaciones entre las entidades.
2. Completa tu Modelo de Datos aadiendo los atributos correspondientes a cada entidad.
3. Elabora el Modelo Entidad-Relacin de tu sistema de facturacin.



1 1. .5 5 D Di is se e o o d de e l la a e es st tr ru uc ct tu ur ra a d de e l la a b ba as se e d de e d da at to os s
Para llevar a cabo el diseo de la estructura de nuestra base de datos, es necesario que
seleccionemos el programa que se encargar de la gestin de misma. Para nuestro sistema
de facturacin utilizaremos Microsoft Access XP como Sistema de Gestin de Bases de
Datos, debido a que es una herramienta de desarrollo de base de datos fcil de usar pero al
mismo tiempo de funcionalidades muy completas.
Caractersticas de Microsoft Access XP
Microsoft Access puede ser til para todo tipo de proyectos, desde
el mantenimiento de una simple lista con informacin hasta la
implementacin de una compleja herramienta de contabilidad o
gestin. Por supuesto, el resultado final depender de la calidad de
la informacin que introduzcas en la base de datos desarrollada y de
la organizacin de la misma.
Microsoft Access XP destaca, entre otras cosas, por la facilidad que brinda para recolectar
informacin de fuentes diversas con fines de almacenamiento, bsqueda y recuperacin;
adems, forma parte del conjunto de programas contenidos en Microsoft Office XP, el cual
es de uso comn en nuestro pas.



Con Microsoft Access XP, t puedes crear tu propia pantalla de captura personalizada e
incorporar informacin a la base por medio de la Vista Hoja de Datos o; adems, puedes
crear informes para reunir y recuperar informacin, y presentarla de un modo atractivo.

Tipos de campos en Access y sus propiedades
En Access, cada entidad implica la existencia de una tabla (sin hacer distinciones entre
catlogos, uniones o tablas, ya que realizamos dichas distinciones solamente para
propsitos de conceptualizacin de la base); adems, cada atributo implica un campo o
columna de datos con
caractersticas bien definidas.
La siguiente lista, tomada de la
ayuda de Access, resume la
utilizacin y el tamao de
almacenamiento de todos los
diferentes tipos de campos para
almacenar datos que estn
disponibles en este programa:
Texto: Se utiliza para almacenar
texto o combinaciones de texto
y nmeros, como direcciones, o
para nmeros que no requieren
clculo, como nmeros de
telfono, nmeros de pieza o
cdigos postales. Almacena
hasta 255 caracteres
Memo: Se utiliza para texto de gran longitud y nmeros, como notas o descripciones.
Almacena hasta 65,536 caracteres
Numrico: Se utiliza para los datos que se van a incluir en clculos matemticos,
exceptuando los clculos monetarios (en este caso se utiliza el tipo Moneda). Los
campos numricos pueden ser:
Byte: Almacena nmeros entre 0 y 255. No admite fracciones (tamao de
almacenamiento: 1 byte).
Decimal: Almacena nmeros entre -1028
-1
y 1028
-1
. Permite hasta 28 dgitos
despus del punto decimal (tamao de almacenamiento: 12 bytes).
Entero: Almacena nmeros entre -32,768 y 32,768. No admite fracciones (tamao de
almacenamiento: 2 bytes).
Entero largo: Predeterminado. Almacena nmeros entre -2,147483,648 y
2,147483,648. No admite fracciones (tamao de almacenamiento: 4 bytes).
Entero simple: Almacena nmeros entre -3.402823E38 y -1.401298E-45 para
valores negativos, y entre 1.401298E-45 y 3.402823E38 para valores positivos.
Permite hasta 7 dgitos despus del punto decimal (tamao de almacenamiento: 4
bytes).

El futuro es hoy

La verdura inteligente.

Que no vengan a hablarnos de sandas sin semillas y otras
cosas de ese estilo, porque en Japn los vegetales dieron
un salto ms all y ahora son inteligentes. S, tal como lo
lees. En algunos supermercados de Tokio, las lechugas y
zanahorias llevan etiquetas inteligentes, que permiten
rastrear el origen de la verdura y toda la cadena de
distribucin que la llev hasta el estante de venta. De
hecho, en algunos casos es posible conocer hasta la
identidad del agricultor que las cultiv.
http://www.elperiodista.cl/newtenberg/
1563/article-57398.html


Entero doble: Almacena nmeros entre -1.79769313486231E308 y -
4.94065645841247E-324 para valores negativos y entre 1.79769313486231E308 y
4.94065645841247E para valores positivos. Permite hasta 15 dgitos despus del
punto decimal (tamao de almacenamiento: 8 bytes).
Id. de rplica: Identificador Global nico (GUID). (tamao de almacenamiento: 16
bytes).
Fecha/Hora: Se utiliza para fechas y horas. Se almacena en 8 bytes
Moneda (Currency): Se utiliza para valores de moneda y para evitar el redondeo
durante los clculos. Se almacena en 8 bytes.
Autonumrico: Se utiliza para nmeros secuenciales exclusivos o nmeros aleatorios
que se insertan automticamente cuando se agrega un registro. Se almacena en 4 bytes.
S/No: Se utiliza para datos que pueden ser uno de dos valores posibles, como S/No,
Verdadero/Falso, Activado/Desactivado. Los valores nulos no estn permitidos. Se
almacena en 1 bit.
Objeto OLE: Se utiliza para almacenar objetos tales como documentos de Microsoft
Word, hojas de clculo de Microsoft Excel, imgenes, sonidos u otros datos binarios
(conocidos como objetos OLE) que se crearon en otros programas mediante el
protocolo OLE. Almacena hasta 1 gigabyte (est limitado por el espacio de disco).
Hipervnculo: Se utiliza para hipervnculos. Un hipervnculo puede ser una ruta a un
archivo o una direccin en la web. Almacena hasta 64,000 caracteres.
Campo de bsqueda: El Asistente para bsquedas se utiliza para crear un campo que
permite elegir un valor de otra tabla o de una lista de valores mediante un cuadro
combinado. La eleccin de esta opcin en la lista de tipos de datos inicia un asistente
que realiza la definicin automticamente. Requiere el mismo tamao de
almacenamiento que la clave principal que corresponde al campo de bsqueda,
normalmente 4 bytes.
La siguiente tabla resume las propiedades de los campos de Access ms utilizadas:

Propiedad: Descripcin:
Tamao del
campo
Permite establecer el tamao mximo de los datos almacenados en un campo de tipo
Texto, Numrico o Autonumrico.
Nuevos
valores
Slo se aplica a los campos de tipo Autonumrico y nos permite especificar la forma en
que se incrementan los campos al agregar nuevos registros a una tabla.
Formato
Permite personalizar la forma en que los nmeros, la fecha, la hora y el texto se
muestran e imprimen. Puede utilizar uno de los formatos predefinidos o bien puede
crear un formato personalizado mediante los smbolos de formato.
Ttulo
Se usa para proporcionar informacin til al usuario mediante ttulos sobre los objetos
en distintas vistas: Los ttulos de formularios especifican el texto que aparece en la
barra de ttulo en la vista Formulario; los ttulos de informes especifican el ttulo del
informe en la Vista preliminar; y, finalmente, los ttulos de botones y etiquetas
especifican el texto que aparece en el control.
Indexado
Permite establecer un ndice de un solo campo. Los ndices hacen que las consultas
basadas en los campos indexados sean ms rpidas, y tambin aceleran las operaciones


de ordenacin y agrupacin. Sus valores son:
No.- Sin ndice (Predeterminado).
S (Con duplicados).- El ndice admite valores duplicados.
S (Sin duplicados).- El ndice no admite valores duplicados.
Mscara de
entrada
Sirve para facilitar la entrada de datos y para controlar los valores que los usuarios
pueden introducir en un control de cuadro de texto.
Valor
predetermi-
nado
Especifica texto o una expresin que se introduce automticamente en un control o
campo al crear un nuevo registro. Por ejemplo, si establecemos esta propiedad en un
campo de una tabla (como el campo Fecha de la tabla tabFactura), el control mostrar
la fecha actual del sistema. Esta propiedad no se aplica a los controles de casillas de
verificacin, botones de opcin incluidos en un grupo de opciones, campos con el tipo
de dato autonumrico u Objeto OLE.

Propiedad: Descripcin:
Requerido
Puede utilizarse para especificar si es necesario que exista un valor en un campo. Si el
valor de esta propiedad es S, al introducir datos en un registro deber especificar un
valor en el campo en cualquier control dependiente del mismo; adems, el valor no
podr ser Nulo (por ejemplo, es posible que desees asegurarte de que el campo Nombre
de la tabla catCliente tenga siempre un valor en todos los registros). Esta propiedad no
se aplica a los campos de tipo autonumrico.
Permitir
longitud cero
Permite especificar si una cadena de longitud cero (" ") es una entrada vlida para un
campo de una tabla. Esta propiedad solo se aplica a los campos de tipo Texto, Memo e
Hipervnculo.
Regla y
Texto de
Validacin
Puedes utilizar la propiedad Regla de Validacin con el fin de especificar requisitos
para los datos introducidos en un registro, un campo o un control.
Cuando se introducen datos que infringen el valor de esta propiedad, se puede utiliza la
propiedad Texto de Validacin para especificar el mensaje que se mostrar al usuario.
Estas propiedades no son validas para las casillas de verificacin, botones de opcin o
botones de alternar.
Lugares
decimales
Permite especificar el nmero de lugares decimales que utiliza Microsoft Access para
presentar nmeros. Esta propiedad puede tener los siguientes valores: autonumrico
(los nmeros aparecen en la forma especificada en la propiedad Formato) 0 a 15 (los
dgitos situados a la derecha del separador decimal aparecen con el nmero de lugares
decimales especificado, y los situados a la izquierda del separador aparecen como
especifique el valor de la propiedad Formato).

Estructura de la base de datos
Con base en lo anterior, la estructura de la base de datos para nuestro sistema de facturacin
se define como sigue:

Tabla 01: tabFactura


Campo Tipo Tamao Observaciones
ID Autonumrico 4 Clave principal, Requerido, Indexado, No duplicado
Folio Texto 6 Requerido, Indexado, No duplicado
Fecha Fecha/Hora 8 Requerido
IdCliente Numrico (Largo) 4 Requerido, Campo de bsqueda, indexado
IdTipoPago Numrico (Largo) 4 Campo de bsqueda
IdVendedor Numrico (Largo) 4 Campo de bsqueda





Catlogo 01: catCliente
Campo Tipo Tamao Observaciones
ID Autonumrico 4 Clave principal, Requerido, Indexado, No duplicado
Rfc Texto 13 Con duplicado, Indexado
Nombre Texto 35 Requerido, Indexado, Con duplicado
Direccion Texto 40
Ciudad Texto 15
Estado Texto 4
Telefono Texto 10
Cp Texto 5


Catlogo 02: catTipoPago
Campo Tipo Tamao Observaciones
ID Autonumrico 4 Clave principal, Requerido, Indexado, No duplicado
TipoPago Texto 10 Requerido, No duplicado


Catlogo 03: catVendedor
Campo Tipo Tamao Observaciones
ID Autonumrico 4 Clave principal, Requerido, Indexado, No duplicado
Nombre Texto 35
PorComision Numrico (Entero) 2 Requerido, Con duplicado


Catlogo 04: catArticulo
Campo Tipo Tamao Observaciones
ID Autonumrico 4 Clave principal, Requerido, Indexado, No duplicado
Clave Texto 13 Requerido, Indexado
Descripcin Texto 50 Requerido
UnidadMed Texto 3 Pza, Kg, Cja
PrecUnitArt Moneda 8 Requerido, Con dos decimales
PorIvaArt Numrico (Entero) 2




Unin 01: unionArticuloFacturado
Campo Tipo Tamao Observaciones
IdFactura Numrico (Largo) 4 Clave externa
IdArticulo Numrico (Largo) 4 Calve externa
Cantidad Numrico (Simple) 2 Requerido
PrecUnitFac Moneda 8 Con dos decimales
PorIvaFac Numrico (Entero) 2 Requerido

Diseo de las ventanas de captura
En Access, las ventanas de captura reciben el nombre de Formularios, mientras que los
informes generados a partir de la base de datos se conocen como Reportes. Es
recomendable que antes de crear los formularios y reportes en el sistema de gestin,
primero se realice el diseo en papel. En las figuras 1.11 y 1.11a, puedes observar el diseo
de los formularios para Clientes y para la Facturacin.
Como puedes observar en ambas figuras, es recomendable que tus formularios incluyan, en
el lado izquierdo de la barra de ttulo (parte superior del formulario), un cono que
identifique al sistema al cual pertenece, el nombre del formulario y los botones comunes a
todas las ventanas (en los formularios de las figuras 1.11 y 1.11a solamente incluimos el
botn cerrar, pero si lo deseas puedes aadir los botones minimizar y maximizar).
Es recomendable que tus formularios incluyan un rtulo (conocido como etiqueta) con los
datos de la empresa y el logo de la misma; las etiquetas tambin te pueden servir para
indicar qu dato debe introducirse en cada cuadro de texto (los cuadros de texto son
campos en donde se introducen los datos que contendr la base).
Figura 1.11 Formulario Clientes



Adems, en la parte inferior del formulario puedes incluir los botones de comando (botones
asociados a acciones) y los botones de desplazamiento (que te ayudarn a visualizar los
datos ya incluidos en tu base).
Es recomendable que crees tu propio patrn para disear tus formularios, de tal forma que
alinees y agrupes los elementos comunes (tales como datos de la empresa, botones de
comando, etc.) siempre de la misma forma, para que tus formularios tengan una
presentacin homognea y sean agradables a la vista.
Los formularios para los Vendedores, Artculos y Tipos de pago cuentan con caractersticas
similares al formulario Clientes, por lo que no los describiremos aqu; pero te proponemos
que intentes realizarlos t solo. Hay otro formulario, sin embargo, que disearemos
contigo: el formulario para la emisin de facturas, al cual hemos llamado Facturacin. En
la figura 1.11a te mostramos el diseo de este formulario.


Control de
lista
desplegable
Botn
agregar
Campos
no
editables
Figura 1.11a Formulario Facturacin
Contenedores
o Frames



Observa que el formulario Facturacin conserva la estructura de una factura descrita en la
figura 1.2; asimismo, notars que conservamos las caractersticas asociadas a los
formularios, es decir: en la parte superior incluimos el cono del sistema, el nombre del
formulario y los botones de ventana, mientras que en la parte inferior incluimos los botones
de comando y los botones de desplazamiento.
Notars, sin embargo, que este formulario es diferente al formulario Clientes antes descrito
en dos aspectos:
Incluye controles de lista desplegable (que permiten la seleccin de un elemento de
entre un conjunto de datos almacenados previamente en la base -tal como ocurre con
los datos del vendedor, tipo de pago y nombre del cliente- y ayudan a simplificar la
introduccin de datos) y el botn agregar (el botn con los tres puntos), que te permite
agregar nuevos datos a tu base y asociarlos con los formularios respectivos (lo cual
explicaremos ms adelante).
Incluye campos no editables (campos que aparecen sombreados en la figura y que
indican que no se podr introducir datos directamente en ellos).
Al inicio de este captulo mencionamos como requisito para nuestro sistema que, al
momento de facturar, permitiera que se seleccionaran o agregaran datos relacionados con el
nombre del cliente, el artculo vendido, etc. Esto se logra gracias a los controles de lista
desplegable y a los botones agregar.
Por ejemplo: imagina que ests creando una factura
para un cliente que ya antes haba comprado en la
empresa (cuyos datos, por tanto, ya se encuentran en
tu base); presionando el control de lista desplegable
correspondiente al nombre del Cliente, te aparecer
una lista con el nombre de todos los clientes
incluidos en la base para que selecciones el cliente
correspondiente. Si, por el contrario, es la primera
vez que el cliente compra en la empresa, presionando
el botn agregar se abrir el formulario Clientes,
donde podrs capturar los datos del nuevo cliente.
Adems, dado que los datos de clientes, vendedores, artculos y tipos de pago son
capturados a travs de los formularios correspondientes (y, por tanto, resulta innecesario
capturarlos otra vez con el formulario Facturacin), estos cuadros de texto aparecen como
campos no editables, los cuales funcionan as: Al momento de seleccionar, dentro de la
lista desplegable, el nombre de un cliente ya incluido en la base, el sistema mostrar
automticamente el resto de sus datos (direccin, RFC, etc.) en el campo correspondiente.
En el caso de que se trate de un nuevo cliente, como ya mencionamos, el botn agregar
abrir el formulario Clientes donde se capturarn sus datos y, al cerrar dicho formulario,
regresaremos a Facturacin, donde ahora s podremos seleccionar el nombre del cliente
mediante la lista desplegable (en cuyo caso, por tanto, tambin aparecern
automticamente todos sus datos capturados).
El control de lista desplegable, el botn agregar y los campos no editables funcionan igual
para el caso del tipo de pago, los vendedores y los artculos.


Como puedes observar en la figura 1.11a, el diseo muestra que para facilitar la
visualizacin de los datos del Cliente y de los artculos, stos se agruparn utilizando
marcos conocidos como contenedores o frames (que se explicarn ms adelante).
Finalmente, observars que debajo del diseo del formulario Facturacin hemos incluido
un conjunto de observaciones que nos servirn para recordar algunas de las caractersticas
de la factura que incluiremos en nuestro sistema.

Diseo de reportes
Al inicio del captulo, tambin mencionamos como requisito que nuestro sistema deba de
emitir, adems de las facturas, informes de concentrados de la facturacin (Reportes). Los
reportes son documentos que emitir el sistema y que, por tanto, tambin deben disearse.
La figura 1.12a te muestra el reporte Clientes.

Observa que este reporte incluye un encabezado con los datos de la empresa, un listado con
todos los datos asociados a los clientes y un pie de pgina indicando el nmero de pginas
de que consta el reporte. La estructura es similar para los reportes de Vendedores y
Artculos., por lo que dejaremos que intentes disearlos por tu cuenta.
Existe otro reporte que es necesario disear: el Reporte de Facturas Emitidas (figura
1.12b), que constituye un concentrado de datos asociados a las facturas emitidas por el
sistema.
Este reporte contiene datos bsicos de las facturas emitidas (tales como folio y fecha de
emisin), nombre del cliente y tipo de pago, los clculos de IVA y total facturado incluidos
en las facturas emitidas (datos necesarios para el pago de impuestos) e incorpora clculos
de totales globales facturados. Fjate que debajo del diseo tambin incluimos un conjunto
de observaciones relacionadas.

Figura 1.12a Reporte Clientes
Rtulo de
Encabezado
Datos del
Cliente
Pie de pgina
Ttulo del Reporte
Nombre de las
columnas de
datos
Fecha de Emisin
Logo



Diseo de pneles de control (mens)
Finalmente, abordaremos el diseo de los Pneles de Control o Mens, que son ventanas
que muestran las opciones que proporciona el sistema al usuario. Normalmente, en los
sistemas existe un men principal y uno o varios submens derivados de ste; lo anterior
equivale a decir que al disear los mens en realidad lo que estamos diseando es la
estructura de las opciones o los niveles de opcin que proporciona el sistema. La figura
1.13a muestra la estructura de nuestros mens.

Observa que, segn la estructura propuesta en la figura, del Men Principal podremos
acceder al Men Informes (al cual llamaremos Submen Informes) y de ste, a su vez,
podremos acceder a la opcin Clientes (que se debe asociar, por tanto, al informe Clientes

Figura 1.12b Reporte de Facturas Emitidas
Figura 1.13a Estructura de los mens



de la figura 1.12a); de igual forma, del Men Principal podremos acceder al Submen
Catlogos y de ste, a la opcin Clientes (que se debe asociar al formulario Clientes de la
figura 1.11). El mismo razonamiento se utiliza con las dems opciones de los submens.
A continuacin, en la figura 1.13a te mostramos el diseo del men principal. Observa que
seguimos incluyendo en la parte superior los datos del sistema y los botones de ventana;
adems, incluimos el nombre del men y de los submens asociados.

Finalmente, incluimos el botn Salir, necesario para salir del sistema (en los submens,
este botn es sustituido por el botn Regresar al men principal). Como el diseo de los
submens es similar al que aqu te mostramos, dejaremos que los realices por tu cuenta.

Actividad 1.4
Realiza las siguientes actividades:
1. Elabora el diseo de los formularios Tipo de Pago, Vendedores y Artculos.
2. Elabora el diseo de los reportes Tipo de Pago, Vendedores y Artculos.
3. Elabora el diseo de los submens Informes y Catlogos.


Figura 1.13b


1 1. .5 5 I Im mp pl le em me en nt ta ac ci i n n y y p pr ru ue eb ba as s d de e u un ni id da ad d ( (F Fa as se e 3 3) )
Como ya mencionamos, construiremos nuestro sistema de facturacin utilizando el
programa Microsoft Access, por lo que en esta seccin explicaremos brevemente cmo
iniciar y finalizar Access y pasaremos inmediatamente a su implementacin.
Iniciaremos la construccin del sistema con la elaboracin de nuestras tablas (diseadas
anteriormente), ya que estas son la base del sistema, construiremos las ventanas
(formularios) que nos permitirn agregar datos de una forma agradable al usuario y, al
mismo tiempo, construiremos consultas para aquellos formularios que necesiten datos de
ms de una tabla. Adems describiremos cmo actualizar algunos datos del formulario
principal con la ayuda de macros, cmo agregar botones de comando a dichos formularios,
cmo elaborar informes que requieren de una o dos tablas para su elaboracin y finalmente,
explicaremos como mejorar el diseo de los informes.
Como iniciar Microsoft Access
Para abrir el programa, haz lo siguiente:
1. Haz clic en el botn Inicio de la Barra de tareas.
2. Selecciona la opcin Programas.
3. Haz clic en Microsoft Access. Inmediatamente vers la ventana principal de esta
aplicacin como se muestra en la figura 1.14.
Figura 1.14


Como finalizar Microsoft Access
1. Del men Archivo selecciona la opcin Salir.
Observaciones:
Si existe un acceso directo al programa dentro del escritorio de Windows, podrs
iniciarlo con solo hacer doble clic sobre el icono correspondiente a Access.
Al igual que en todos los programas de Windows, tambin puedes cerrar la aplicacin
por medio del botn superior derecho
Cerrar ventana.
Como crear una base de datos
1. En el panel de tareas, del grupo Nuevo
selecciona la opcin Base de datos en
blanco. Visualizars una ventana
como la que se muestra en la figura
1.15
2. En esta ventana, debes seleccionar la
ubicacin y asignar un nombre para tu
base de datos. Para nuestro ejemplo, el
nombre de la base ser Facturacin.
3. Una vez hecho lo anterior, visualizars
una ventana como la que se muestra en
la figura 1.16, donde podrs observar
que la barra de ttulo presenta el
nombre que asignaste a tu base de
datos y donde adems est
seleccionado, por omisin, en el
men Objetos la opcin Tablas y del
lado derecho la opcin Crear una
tabla en vista Diseo.
Creacin de las tablas en
vista diseo
El primer paso en la construccin de
nuestra base de datos consistir en
desarrollar la estructura de tus tablas,
iniciaremos construyendo los que
denominamos como catlogos, por ser
los ms sencillos ya que no contienen en
su estructura ningn campo que haga referencia a un campo de otra tabla.
Para una mejor comprensin de este proceso, nos basaremos en la creacin de la tabla
catCliente, tal y como se defini en la estructura de datos mencionada de la pgina 24 a la
26 de este mismo captulo; para ello, haz lo siguiente:
1. Del men Objetos selecciona la opcin Tablas.

Figura 1.15
Figura 1.15
Figura 1.16


2. Haz doble clic en la opcin Crear una tabla en vista Diseo.
3. Visualizars una ventana como la que se muestra en la figura 1.17 en la cual debes de
escribir en la columna con el ttulo Nombre del campo el nombre de cada una de las
columnas que contendr la tabla.
4. Selecciona en la columna siguiente, para cada campo o columna el tipo de dato que le
corresponde y define simultneamente en la parte inferior sus propiedades respectivas
(observa que las propiedades asociadas a cada campo varan segn seleccionemos el
tipo de datos).
5. Siguiendo con los datos que contendr la tabla, para introducir el indicador de clave
principal, posicinate en el campo ID y haz clic en el botn Clave principal de la Barra
de herramientas Diseo de tabla.
6. Ahora cierra y guarda tu tabla haciendo clic en el botn Cerrar de la pantalla Vista
Diseo, ten mucho cuidado en utilizar el botn Cerrar Vista Diseo y no el de Cerrar
la Aplicacin. Access te preguntar si deseas guardar los cambios, haz clic en el botn
S y escribe el nombre de la tabla, el cual en este caso es catCliente
Observacin:
En la Barra de herramientas visualizars el botn Vistas con el cual puedes seleccionar
una de las diferentes vistas que ste contiene. Las dos ms utilizadas son Vista Diseo,
que es en la que te encuentras ahora, y la vista Hoja de datos, que te muestra los datos
de las tablas en forma de filas y columnas como en Excel.












Para la tabla catCliente, tu pantalla quedar como se muestra en la figura 1.17, donde
notars que aparece una llave al lado derecho del campo ID, ste es el indicador de que este
campo es la clave principal de la tabla.



Figura 1.17


Actividad 1.5
Realiza lo siguiente:
1. Crea las tablas catArticulo, catTipoPago, catVendedor, de acuerdo con la estructura
definida para las mismas de la pgina 24 a la 26 de este captulo y siguiendo el
procedimiento anterior.
Cuando termines sta actividad, el rea de trabajo de la opcin Tablas quedar como se
muestra en la figura 1.18.


A continuacin explicaremos la creacin de tablas ms complejas a las anteriores, mismas
que contienen campos que hacen referencia a campos de otras tablas; empezaremos por la
creacin de la tabla que denominamos tabFactura y cuya estructura est definida en la
pgina 24 de este captulo.
Para crear la tabla tabFactura realizaremos un procedimiento similar al ya utilizado pero,
dado que los campos IdCliente, IdTipoPago e IdVendedor son claves externas que hacen
referencia a otras tablas y adems se utilizaran en el formulario correspondiente como listas
desplegables, al definir el tipo de datos para estos campos, debers seleccionar la opcin
Asistente para bsqueda, esto te permitir que estos campos funcionen como listas
desplegables de acuerdo al diseo de la ventana que se mostr en la pgina 27.
Campos de Bsqueda
Es importante resaltar que la introduccin de un campo de bsqueda (listas desplegables)
dentro de una tabla implica que se mostrarn en ella los datos de un campo perteneciente a
otra tabla. Lo anterior quiere decir, en nuestro sistema, que dentro de la ventana de captura
de datos facturacin (que elaboraremos ms adelante) se mostrarn los datos contenidos en
los catlogos clientes, vendedores, artculos y tipo de pago, segn la lista desplegable que
se trate; con lo anterior evitaremos el tener que volver a escribir los datos que ya estn en
Figura 1.18


nuestra base (y evitaremos tambin la duplicacin de datos derivada de errores de escritura,
estandarizando los mismos).
Para ello realiza lo siguiente:
1. Del men Objetos selecciona la opcin Tablas.
2. Haz doble clic en la opcin Crear una tabla en vista diseo.
3. Visualizars una ventana como la que se mostr en la figura 1.17; en la columna con el
ttulo Nombre del campo, escribe el nombre de cada una de las columnas que contendr
la tabla.
4. Selecciona en la columna siguiente, para cada campo o columna, el tipo de dato que le
corresponde y define simultneamente en la parte inferior sus propiedades respectivas
(observa que las propiedades asociadas a cada campo varan segn seleccionemos el
tipo de datos).
5. Siguiendo con los datos que contendr la tabla, para introducir el indicador de clave
principal, posicinate en el campo ID y haz clic en el botn Clave principal de la Barra
de herramientas Diseo de tabla.
6. Si observas la figura 1.11a que corresponde al diseo de la ventana de captura de datos
Facturacin y la estructura de la tabla tabFactura de la pgina 24 de este captulo,
podrs observar que cada lista desplegable del formulario se asocia con un campo de
bsqueda en la tabla, de esta forma, tenemos que IdCliente, IdVendedor e IdTipoPago
corresponden a campos de bsqueda. Comenzaremos por crear el campo IdCliente para
ello:
7. Selecciona la opcin Asistente para bsqueda en la columna Tipo de datos. Esto te
permitir crear el campo de bsqueda con la ayuda de un Asistente.
8. Visualizars una ventana como la que se muestra en la figura 1.19, en la cual selecciona
la opcin Deseo que la columna de bsqueda busque los valores en una tabla o
consulta y haz clic en el botn Siguiente.
9. Visualizars otra ventana de la cual selecciona la tabla que utilizars para tu campo de
bsqueda (para este ejemplo es la tabla catCliente) como se muestra en la figura 1.20 y
haz clic en el botn Siguiente.
Figura 1.19
Figura 1.20
Figura 1.21




10. Visualizars otra ventana como la que se muestra en la figura 1.21, en la cual debes
elegir los campos que contienen los valores que se incluirn en el campo de bsqueda.
Para nuestro ejemplo, selecciona el campo ID y el campo Nombre. Una vez realizada la
seleccin, haz clic en el botn Siguiente.
11. Visualizars otra ventana como la que se muestra en la figura 1.22, en la cual
selecciona la opcin Ocultar la columna clave (se recomienda), con el fin de que el
sistema muestre nicamente el nombre del cliente en la lista desplegable, y haz clic en
el botn Siguiente.
12. Finalmente, visualizars otra ventana como la que se muestra en la figura 1.23, de la
cual elige una etiqueta para dicho campo (puedes utilizar la que te proporciona el
asistente por omisin) y haz clic en el botn Finalizar.
13. Guarda la tabla creada con el nombre tabFactura.
Actividad 1.6
Realiza lo siguiente:
1. Agrega los campos IdVendedor e IdTipoPago a la tabla tabFactura, para terminarla.
2. Crea la tabla unionArticuloFacturado, realizando un procedimiento similar al que se
utiliz para crear la tabla tabFactura, pero en este caso el campo IdFactura no es un
campo de bsqueda, mientras que el campo IdArticulo s lo es (en el diseo de la figura
1.11a de la pgina 27 definimos que este campo nos permitira seleccionar la
descripcin de cada uno de los artculos para la elaboracin de nuestra factura).
Nota: Los campos que se tienen que seleccionar para el campo de bsqueda IdTipoPago
son los campos ID y TipoPago; para el campo IdVendedor se tendr que seleccionar los
campos ID y Nombre; y para el campo IdArticulo se seleccionan los campos ID y
Descripcion.





Figura 1.22

Figura 1.23


Relaciones entre las tablas
Ya que terminaste de crear todas las tablas, ahora es el momento de establecer las
relaciones entre ellas basndote en el modelo de datos y en el modelo entidad-relacin, que
explicamos en las pginas 19 y 20 de este libro.
Para ello, haz clic en el botn Relaciones de la Barra de herramientas Base de datos.












Visualizars una pantalla similar a la de la figura 1.24; en ella se muestran las relaciones
existentes entre las tablas del sistema de Facturacin. Estas relaciones fueron creadas
automticamente cuando se elaboraron los campos de bsqueda; sin embargo, no tienen la
cardinalidad que se mencion en el modelo de datos, por lo que no son las correctas. Lo
anterior implica que debemos eliminarlas o volver a definirlas. Para facilitar la tarea,
eliminaremos y volveremos a definir dichas relaciones haciendo lo siguiente:
1. Para eliminar una relacin, haz clic en la lnea que indica la relacin y despus presiona
la tecla Supr o Del. Access te preguntar si realmente deseas eliminar la relacin, a lo
que debes responder S.
2. Reacomoda las tablas en el diagrama de tal forma que te facilite dibujar las nuevas
relaciones; para ello, posicinate en la tabla que quieres mover y arrstrala hasta la
posicin que desees que tenga en tu diagrama.
Figura 1.24


3. Redefine las relaciones seleccionando el campo de la tabla y arrastrndolo a su
correspondiente en la otra tabla (por ejemplo, para nuestro sistema arrastramos el
campo ID de la tabla catCliente hasta su correspondiente IdCliente de la tabla
tabFactura). Visualizars una pantalla como la que se muestra en la figura 1.25,
observa, en la parte inferior de la figura, que la relacin de catCliente a tabFactura es
del tipo uno a varios. Antes de presionar el botn Crear, selecciona la opcin Exigir
integridad referencial.
Observaciones:
La integridad referencial es un sistema de reglas que utiliza Access para garantizar que
las relaciones entre las tablas son vlidas y que no se eliminarn ni modificarn
accidentalmente datos relacionados. (As, por ejemplo, no podrs crear una factura para
un cliente que no existe en tu base, sino que debers crear al cliente para despus
hacerle su factura).
Al definir el tipo de relacin, Access siempre asigna 1 a la tabla donde se encuentra la
clave principal y a la tabla donde se encuentra la clave externa.

Actividad 1.7
Realiza lo siguiente:
1. Elabora las relaciones que faltan, recuerda que esto lo debes hacer basndote en el
modelo de datos y en el modelo entidad-relacin de las pginas 19 y 20. Al terminar
esta actividad tu pantalla de Relaciones debe quedar como se muestra en la figura 1.26.
Algunos autores llaman diagrama entidad-relacin a este diagrama.


Figura 1.25


Creacin de los formularios
Una vez que hemos creado las tablas y definido sus relaciones, el siguiente paso es crear las
pantallas o ventanas de captura, que en Access se conocen como Formularios. Para nuestro
sistema, nos basaremos en los bosquejos de las ventanas diseados anteriormente.
Iniciaremos creando la ventana que utilizaremos para capturar los datos de los clientes, es
decir, vamos a crear un formulario al cual le daremos el nombre de frmCliente. Para ello,
realiza lo siguiente:
1. Del men Objetos, selecciona la opcin Formulario.
2. Haz doble clic en la opcin Crear un formulario utilizando el asistente como se
muestra en la figura 1.27.
Figura 1.26
Figura 1.27


3. Selecciona la tabla en la cual estar basado el formulario. Para nuestro ejemplo,
selecciona la tabla catCliente y elige todos sus campos excepto ID, como se muestra en
la figura 1.28. Haz clic en el botn Siguiente.
4. Selecciona la distribucin En columnas, como se muestra en la figura 1.29 y haz clic en
el botn Siguiente.

5. Selecciona el estilo Estndar, como se muestra en la figura 1.30 y haz clic en el botn
Siguiente.
6. Escribe el nombre de tu formulario (para este ejemplo, ser frmCliente como se muestra
en la figura 1.31) y haz clic en el botn Finalizar.
Figura 1.28
Figura 1.29


A continuacin visualizars el formulario recin creado en Vista formulario como se
muestra en la figura 1.32, el cual constituye una pantalla de captura simple.
Observacin:
Observa que la parte inferior de la figura 1.32 se
encuentra un control llamado Botones de
desplazamiento que, como su nombre lo dice,
nos permite desplazarnos de registro en registro
y adems nos permite agregar un nuevo registro.
En la siguiente figura te mencionamos para qu
sirve cada uno de los botones que este control
contiene (este control aparece automticamente
en cada uno de los formulario que se elaboran).
Figura 1.30
Figura 1.31
Figura 1.32


Como podrs observar en la figura 1.33, un formulario consta de tres secciones:
Encabezado, Detalle y Pie de formulario. Esta estructura la podemos observar
cuando visualizamos los formularios en la Vista diseo. Para cambiar de una vista a
otra solo selecciona el botn Vista (el cual cambia de imagen dependiendo de la vista
en la que te encuentres) de la Barra Vista Formulario.
T puedes aumentar o
disminuir el tamao de estas
secciones arrastrando los
bordes de cada seccin hasta
la longitud deseada.
La seccin llamada
Encabezado se utiliza para
incluir alguna imagen (el
logo de la empresa, por
ejemplo) y escribir ttulos o
rtulos en general; en nuestro
caso, aqu colocaremos el
logo, nombre y direccin de
la empresa.
La seccin llamada Detalle
constituye el espacio donde
se capturarn los datos. Aqu
puedes modificar el orden y
el tamao de los cuadros de texto (por ninguna razn le cambies el nombre a los cuadros de
texto), aadir acentos a las etiquetas, etc.
En el Pie del formulario se aadirn los botones de comando (por ejemplo, los botones
Deshacer, Imprimir, etc.). Esto se explicar ms adelante.
Puedes obtener un mejor diseo en los formularios creados (aadir imgenes y colores,
cambiar las fuentes, etc.) utiliza el Cuadro de herramientas en la Vista diseo el cual es
similar al que se muestra en la figura 1.34.
Para agregar uno de los controles del Cuadro de herramientas al formulario solo tienes que
seleccionar el control y dibujarlo, puedes modificar sus propiedades como formato, fuente,
tamao, ttulo, entre otros; para ello, haz lo siguiente:
Figura 1.33
Vista
Diseo


1. Haz clic con el botn derecho sobre el control que desees modificar, visualizars una
lista de opciones de la cual debes seleccionar la opcin Propiedades. Visualizars una
ventana como la que se muestra en la figura 1.35, en ella puedes modificar cada una de
las propiedades que ah se muestran. Estas propiedades varan dependiendo del tipo de
control que selecciones.
Para nuestro ejemplo, el formulario debe quedar tal y como se dise en la figura 1.11 de la
pgina 26. En la figura 1.36, te mostramos un ejemplo de cmo debe quedar el formulario
Clientes una vez terminado, como podrs observar a este formulario se le agreg el logo,
nombre, direccin, cdigo postal y telfono de la empresa y se modificaron las
propiedades: Titulo=Cliente, Botones Minimizar Maximizar=No, Selector de registros=No
y Separador de registros=No. Adems, se acomodaron los controles de acuerdo al diseo
Figura 1.35
Figura 1.36


antes elaborado.
Actividad 1.8
Realiza lo siguiente:
1. Elabora las ventanas de captura de artculos, vendedores y tipo de pago, siguiendo los
pasos que se describieron en la elaboracin de la venta de clientes.

Creacin del formulario principal
Dividiremos este formulario en dos partes: encabezado y cuerpo de la factura. La parte del
encabezado contendr los datos de la factura, como son el tipo de pago, el nombre del
vendedor y los datos del cliente; la segunda parte contendr los datos de los artculos
(recuerda que estos datos deben de estar relacionados a una factura especfica). Notars que
en ninguna de las tablas de nuestro sistema tenemos todos estos datos juntos. Es a travs de
un conjunto de tablas relacionadas que podemos guardar y recuperar los datos de una
factura como un todo, aqu es donde radica la fortaleza de una base de datos relacional
como la que hemos diseado y construido anteriormente. Por ello, es necesario crear
Consultas.
Consultas
Las consultas nos permiten extraer desde una o varias tablas de la base, aquellos datos
que son de nuestro inters. Por medio de consultas, adems de seleccionar datos para su
visualizacin, podremos ordenarlos, filtrarlos a partir de una o varias condiciones, crear
otros campos, calcular totales u otras operaciones, y crear formularios o informes. Una
consulta se confecciona tomando como entrada una o ms tablas o en su caso, tambin de
otras consultas. Desde una consulta, tambin se pueden modificar los datos que en ella se
muestran. De esta manera, se actualizarn instantneamente los datos en la(s) tabla(s). En
trminos generales, podemos decir que existen cuatro tipos de consultas: de eliminacin, de
actualizacin, de datos anexados y de creacin de tabla. A continuacin daremos una muy
breve descripcin de cada una de ellas.
Consulta de eliminacin
Una consulta de eliminacin es aquella cuya funcin consiste en eliminar uno o un grupo
de registros de una o ms tablas.
Consulta de actualizacin
Una consulta de actualizacin es aquella por medio de la cual realizamos cambios globales
en uno o un grupo de registros de una o ms tablas. Por ejemplo, podemos aumentar los
precios un 10 por ciento para todos los productos lcteos o bien podemos aumentar los
sueldos un 5 por ciento al personal de una determinada categora. Con una consulta de
actualizacin, es posible cambiar los datos de las tablas existentes.
Consulta de datos anexados


Utilizaremos una consulta de datos anexados para agregar uno o un grupo de registros de
una o ms tablas al final de una o ms tablas.

Consulta de creacin de tabla
Una consulta de creacin de tabla crea una tabla nueva a partir de la totalidad o una parte de
los datos de una o ms tablas.
En nuestro ejemplo utilizaremos, en primer lugar, dos consultas de datos anexados para
agregar a nuestra base los datos de cada factura capturada.
La primer consulta contendr los datos del encabezado de la factura y se crear utilizando
la tabla tabFactura (ID, Folio, Fecha, IdCliente, IdTipoPago, IdVendedor) con todos sus
campos y la tabla catCliente (Rfc, Direccion, Cp, Telefono, Ciudad y Estado). Como
podrs observar, no se incluyen los campos ID y Nombre debido a que ya se encuentran
incluidos como campos de bsqueda en la tabla tabFactura, en el campo IdCliente.
Para crear esta primer consulta, realiza lo siguiente:
1. Del men Objetos selecciona la opcin Consultas
2. Haz doble clic en la opcin Crear una consulta en vista Diseo, como se muestra en la
figura 1.37.

3. Visualizars una ventana de la cual debes seleccionar las tablas tabFactura y
catCliente. Despus, haz clic en el botn Cerrar.
4. Haz doble clic en cada uno de los campos de las dos tablas seleccionadas (exceptuando
ID y Nombre da la tabla catCliente, como se mencion anteriormente).
Al terminar visualizars una pantalla como la que se muestra en la figura 1.38.
Figura 1.37













5. Guar
da tu consulta con el nombre conEncabezadoFactura. Para ello, haz clic en botn
Guardar de la Barra de Herramientas Diseo de consultas y coloca el nombre antes
mencionado.
Observacin:
En esta consulta no se incluyeron las tablas catTipoPago y catVendedor, ya que los
datos que necesitamos de estas tablas se encuentran incluidos como campos de
bsqueda en la tabla tabFactura. No podemos excluir la tabla catCliente debido a que
utilizamos campos como Rfc, Direccion, Telefono, Ciudad, Estado, Cp de dicha tabla.
Observa que la ventana inferior de la figura 1.38 est formada por una tabla cuyas
columnas corresponden con los campos seleccionados de las tablas y que para cada una de
estas columnas existen varias filas con los rtulos Campo, Tabla, Orden, Mostrar, Criterios
y O, los cuales se describen a continuacin:
Campo: Indica el nombre del campo cuyo contenido se mostrar en la consulta. Para
agregar un campo, haz clic en la celda de la cuadrcula de diseo y luego
selecciona el campo de la lista de campos o haz doble clic a uno de los
campos desde las tablas de la ventana superior para agregarlo a la consulta.
En nuestro ejemplo podemos observar que en la fila Campos se encuentran
los nombres de los campos que deseamos ver en nuestra consulta (ID,
Folio, Fecha, IdCliente, etc).
Tabla: Indica la Tabla en la que sta ubicado el campo. Se utiliza para identificar a
qu tabla pertenece cada campo en una consulta, de mltiples tablas. Para
ocultar o mostrar la fila Tabla, haz clic en la opcin Nombres de tabla del
men Ver. En nuestro ejemplo, podemos observar que los primero campos
pertenecen a la tabla tabFactura.
Orden: Se utiliza para indicar el campo utilizado como llave de ordenamiento de
los datos de la consulta, as como el tipo de orden: Ascendente (0 a 9, A a
Z), Descendente (9 a 0, Z a A) o sin ordenar. Para ordenar con base en un
campo, selecciona la celda Orden de dicho campo y luego selecciona el tipo
Figura 1.38


de orden. En esta consulta no es necesario ordenar los datos, pero por
ejemplo si deseamos ordenar las facturas por medio de la fecha,
seleccionamos en el campo Fecha en la fila Orden la opcin Ascendente o
Descendente.
Mostrar: Muestra u oculta una columna en el resultado de la consulta. Si se oculta
una columna, puede seguir utilizndose para especificar un criterio, pero
sus datos correspondientes no se mostrarn. Si no deseas, por ejemplo, que
se visualice el campo ID en la consulta de la figura 1.38, solo haz clic en la
casilla que se encuentra en la columna del campo ID en la fila Mostrar.
Criterios y
O:
Define uno o ms conjuntos de condiciones restrictivas (por ejemplo
podemos colocar Ciudad = Mxico o Poblacin > 30,000) para obtener
un conjunto especfico de registros en los resultados de la consulta. Se
puede utilizar agregando valores en la misma fila Criterios o expresiones
alternativas bajo la celda O.
Total: Agrupa los datos de la consulta activa o realiza clculos acumulativos; por
ejemplo, promedios y sumas. Para ocultar o mostrar la fila Total, haz clic en
la opcin Totales del men Ver.

A continuacin crea la consulta que contendr los datos de los artculos facturados (el
cuerpo de la factura); esta se crear utilizando todos los campos de la tabla
unionArticuloFacturado (IdFactura, IdArticulo, Cantidad, PrecUnitFac y PorIvaFac) y los
campos Clave, PrecUnitArt y PorIvaArt de la tabla catArticulo como podrs observar, no
se incluyen los campos ID y Descripcin, debido a que ya se encuentran incluidos en el
campo de bsqueda en la tabla unionArticuloFacturado en el campo IdArticulo. Para ello
haz lo siguiente:
1. Del men Objetos selecciona la opcin Consultas
2. Haz doble clic en la opcin Crear una consulta en vista Diseo como se muestra en la
figura 1.39.



3. Visualizars una ventana de la cual debes seleccionar las tablas unionArticuloFacturado
y catArticulo. Despus, haz clic en el botn Cerrar.
4. Haz doble clic en cada uno de los campos de las dos tablas seleccionadas (exceptuando
ID y Descripcion da la tabla catArticulo, como se mencion anteriormente).
Antes de guardar tu consulta, debers de aadir los campos calculados Importe e Iva (si no
los incluyes, debers de calcularlos por tu cuenta al momento de elaborar la factura y
entonces para qu utilizar la PC Verdad?). Para agregar los campos calculados haz lo
siguiente:
1. Posicinate en el rengln Campo al final de los campos que agregaste anteriormente,
escribe Importe:Cantidad*PrecUnitFac y haz clic en la siguiente columna para salir del
campo. Notars que Access encierra tu frmula entre corchetes de manera automtica.
Esta frmula indica que se agregar un campo con el nombre Importe, el cual contendr
el resultado de multiplicar el campo Cantidad con el campo PrecUnitFac, asegrate de
utilizar los nombres correctos de los campos involucrados.
2. Posicinate nuevamente en el rengln Campo y escribe Iva:Importe*PorIvaFac/100.
Esta formula indica que se agregar un campo con el nombre Iva, el cual contendr el
resultado de dividir entre 100 el producto del contenido de los campos Importe y
PorIvaFac. Visualizars una ventana como la que se muestra en la figura 1.40


3. Cierra la ventana y guarda tu consulta con el nombre conArticuloFac. Para ello haz clic
en el botn Guardar de la Barra de Herramientas Diseo de consultas y coloca el
nombre antes mencionado.

Figura 1.40

El futuro es hoy

Reloj de pared.

Estamos en medio de una calle sin reloj y ya es de noche. Le preguntamos
la hora a un desconocido? No, en vez de arriesgarnos a un asalto ahora la
solucin viene en el formato del Mini Time Projection Clock, que proyecta
la hora exacta sobre cualquier superficie, utilizando para ello una luz
interna. Del tamao de un llavero, basta con aplaudir para que el proyector
se encienda, ya que cuenta con un sistema de activacin por ruido.
http://www.elperiodista.cl/newtenberg/1563/article
-57398.html


Con las dos consultas anteriores tenemos todos los datos necesarios para crear el formulario
principal. Ahora, realiza lo siguiente:
1. Del men Objetos selecciona la opcin
Formulario.
2. Haz doble clic en la opcin Crear un
formulario utilizando el asistente, como
se muestra en la figura 1.41.
3. Visualizars una ventana de la cual
debes seleccionar la consulta
conEncabezadoFactura y agregar todos
los campos que contiene; despus,
selecciona la consulta conArticuloFac y
agrega todos los campos excepto los
campos IdFactura, PrecUnitArt y
PorIvaArt (el campo IdFactura no es
necesario agregarlo ya que en el diseo del formulario principal no se tom en cuenta, y
los campos PrecUnitArt y PorIvaArt se omiten porque para el formulario principal
utilizaremos los campos PrecUnitFac y PorIvaFac por razones que se mencionan ms
adelante); lo anterior se muestra en la figura 1.42. Haz clic en el botn Siguiente.
4. Visualizars una ventana que te pregunta Cmo deseas ver los datos y te permite
seleccionar una de las dos consultas utilizadas. Selecciona por conEncabezadoFac y en
la parte inferior selecciona la opcin formulario con subformularios, como se muestra
en la figura 1.43. Haz clic en el botn Siguiente.
5. En la siguiente pantalla, selecciona la opcin de distribucin en forma Hoja de datos
como se muestra en la figura 1.44 y haz clic en el botn Siguiente.
















Figura 1.41
Figura 1.42
Figura 1.43
Figura 1.44


6. Selecciona el estilo Estndar como se muestra en la figura 1.45 y haz clic en el botn
Siguiente.
7. Escribe como ttulos frmEncabezadoFac para el formulario y frmArticuloFac
Subformulario para el subformulario como se muestra en la figura 1.46 y haz clic en el
botn Finalizar.
Ahora s, ya cuentas con tu formulario principal, el cual debe ser parecido al que se muestra
en la figura 1.47. Como podrs observar, aun falta editar su diseo de la misma forma que
se hizo con los formularios anteriores para que se vea tal como es la factura en papel y se
incremente su usabilidad.
Figura 1.47
Figura 1.45
Figura 1.46


Observa que el formulario principal contiene todos los campos necesarios para la creacin
de la factura. Sin embargo, an no hemos resuelto el problema planteado en la pgina 17,
referente a la actualizacin no deseada de los datos correspondientes al precio y/o
porcentaje de IVA de cada artculo contenido en las facturas ya emitidas y almacenadas en
la base de datos.
Para resolver este problema es necesario crear una macro que permita actualizar los datos
del precio e IVA al crear nuevas facturas, pero sin modificar los datos de las facturas
anteriores cuando estas se visualicen al consultar las por medio de el mismo formulario (a
travs de los Botones de desplazamiento).
Es decir, qu pasa si en una fecha F1 facturamos el artculo A1 a un precio P1 y,
posteriormente, en una fecha F2 se modifica el precio del artculo A1 a P2. Es evidente que
este nuevo precio se debe aplicar a las facturas emitidas en fecha posterior a F2, pero no a
las emitidas con anterioridad y cuyos datos ya se encuentran almacenados.
Qu complicaciones nos trae lo anterior? Es evidente que si el precio cambia las nuevas
facturas debern tener el nuevo precio y las anteriores, los precios anteriores. El problema
es que utilizaremos el mismo formulario para ver las facturas nuevas y las emitidas con
anterioridad, por lo cual necesitaremos que cuando el formulario nos presente los datos de
precio unitario y porcentaje de IVA utilizado en una factura anterior, lo tome de la tabla
unionArticuloFacturado y cuando nos presente los datos correspondientes al momento de
estar emitiendo una factura, los tome de la tabla tabArticulo.
Creacin de la macro para el formulario principal
Una macro es un conjunto de una o ms acciones (inclusive, una macro puede consistir de
un conjunto de macros). Cada macro realiza una accin determinada, tal como abrir un
formulario o imprimir un informe. Las macros, en general, nos ayudan a automatizar las
tareas comunes y repetitivas.
Para crear la macro que utilizaremos en el formulario principal, haz lo siguiente:
1. Abre el formulario frmArticuloFac Subformulario y visualzalo en Vista diseo.
2. Haz clic con el botn derecho en el campo IdArticulo y selecciona la opcin
Propiedades. Recuerda que nuestro sistema est siendo diseado y construido para que
al seleccionar la descripcin de un artculo,
automticamente se muestren su precio
unitario sin IVA y el porcentaje de IVA
asociado, adems de que el campo de
bsqueda asociado a la Descripcin del
artculo sea el IdArticulo. Para ello es que
debemos asociar la macro que vamos a
construir con el IdArticulo.
3. Selecciona la ficha Eventos, haz clic en la
propiedad Despus de actualizar y
nuevamente haz clic en el botn que se
encuentra al lado de dicho campo como se
muestra en la figura 1.48.

Figura 1.48


4. Visualizars una ventana como la que se muestra
en la figura 1.49. Selecciona la opcin Generador
de macros y haz clic en el botn Aceptar.
5. A continuacin coloca un nombre a la macro; en
este caso, escribe macActualizadoDatos como se
muestra en la figura 1.50.
6. Visualizars la ventana Macro, de la cual en la
columna Accin seleccionars la opcin
EstablecerValor. Esto har que se muestren dos
opciones en la parte inferior izquierda de la
ventana. En la opcin Elemento, escribe el nombre
del elemento que queremos actualizar; para nuestro
ejemplo, escribe PrecUnitFac y en la opcin
Expresin, escribe PrecUnitArt (esto es para
actualizar el Precio unitario del artculo). El
procedimiento se muestra en la figura 1.51.

7. Dado que la actualizacin tambin ser necesaria para el porcentaje del IVA, en la
columna Accin selecciona nuevamente la opcin EstablecerValor y en la opcin
Elemento escribe PorIvaFac y en la opcin Expresin, escribe PorIvaArt.
8. Finalmente, guarda la macro, cierra las ventanas y regresa a la pantalla principal de tu
Base de Datos.
Ahora s, cada vez que utilices el formulario principal para crear una nueva factura, ste
incluir los precios y porcentajes de IVA actualizados.

Figura 1.49
Figura 1.50
Figura 1.51


Vinculacin del formulario principal con otros formularios
Cada vez que elaboremos una factura ser necesario seleccionar, por medio de los controles
de listas desplegables respectivas, el vendedor, el tipo de pago, el artculo y el cliente
especficos de entre los que aparecen en nuestros catlogos, pero qu pasa si el dato
buscado no existe para seleccionarlo? Como recordaras en el diseo del formulario
principal se muestra un botn a lado de las listas desplegables de Cliente, Vendedor, Forma
de pago y para el caso de los artculos el botn Agregar Articulo. Para agregar estos
botones de comando se explica el siguiente tema.
Botones de comandos
Para evitar el tener que cerrar el formulario principal y abrir algn otro (para agregar los
datos de un cliente, por ejemplo), podemos aadir a este formulario un botn de comando
que llame a las ventanas de captura (formularios) correspondientes. Para ello haz
lo siguiente:
1. Abre el formulario principal frmEncabezadoFac en Vista diseo.
2. Del Cuadro de Herramientas que se mostr en la figura 1.34, selecciona la opcin
Botn de comando y dibuja el botn a la derecha del campo IdCliente. En forma
automtica visualizars la ventana del Asistente para botones de comando. En ella
selecciona la categora Operaciones con formularios y, posteriormente, la accin Abrir
formulario como se muestra en la figura 1.52 y haz clic en el botn Siguiente.
3. Selecciona el formulario correspondiente (en este caso, frmCliente como se muestra en
la figura 1.53) y haz clic en el botn Siguiente.


4. Haz clic en la opcin Abrir el formulario y mostrar todos los registros como se muestra
en la figura 1.54 y despus haz clic en el botn Siguiente.
5. En la opcin Texto, escribe tres puntos () como se muestra en la figura 1.55 y
haz clic en el botn Siguiente. El contenido de esta opcin se visualizars como
rtulo en el botn.
6. Escribe el nombre del botn (en este caso, cmdAddCliente como se muestra en la figura
1.56) y haz clic en el botn Finalizar.

Figura 1.52 Figura 1.53





Actividad 1.9
Realiza lo siguiente:
1. Crea los botones relacionados con las listas desplegables del tipo de pago, vendedor y
artculo, siguiendo los pasos del 2 al 6 descritos anteriormente (recuerda que para el
caso de artculo, se tiene que sustituir los tres puntos () por la frase Agregar
Artculo).
2. Agrega tambin el botn Deshacer, para eliminar algn registro. Para ello, realiza lo
siguiente:
a) Del Cuadro de Herramientas que se mostr en la figura 1.34, selecciona la opcin
Botn de comando y dibuja el botn en el pie del formulario, en la posicin que se
indic en el diseo de dicho formulario.
b) En forma automtica visualizars la ventana del Asistente para botones de
comando. Selecciona la categora Operaciones con registro y la accin Deshacer
registro. Haz clic en el botn Siguiente.
c) En la opcin Texto, escribe la palabra Deshacer y haz clic en el botn Siguiente.
d) Escribe el nombre del botn (en este caso, cmdDeshacer) y haz clic en el botn
Finalizar.

Observacin:
Si en tu formulario no se logran ver todos los campos del subformulario, esto se debe a
que el tamao de cada uno de ellos es muy grande. Lo que puedes hacer es disminuir el
tamao de cada campo hasta que logres visualizar todos los campos, de lo contrario
Access colocar una barra de desplazamiento horizontal para que puedas visualizarlos.
Figura 1.54
Figura 1.55


Figura 1.56


Tu pantalla deber quedar como se muestra en la figura 1.57

Actualizacin automtica de registros
En la seccin anterior aprendiste como utilizando los botones Agregar, es posible llamar
algn formulario asociado para agregar datos del cliente, tipo de pago, vendedor y artculos
desde el formulario de facturacin sin tener que cerrarlo, Sin embargo, los botones creados
no actualizan los datos del formulario frmEncabezadoFac en forma automtica; es decir, si
deseamos continuar introduciendo los datos de la factura una vez que cerramos el
formulario asociado al botn agregar (el de los tres puntos) la lista desplegable seguir sin
presentar los datos requeridos debido a que el contenido de la lista no ha sido actualizado
con los datos que recin introdujimos. La solucin a este problema puede hacerse de dos
formas: 1) de manera manual, colocando un botn de comando que, al hacer clic en l,
realice la actualizacin de datos en todos los controles del formulario; 2) de manera
automtica, identificando en el botn actualizar la lnea de cdigo que ejecuta la
actualizacin y copindola y ponindola en el evento al recibir el enfoque de los botones
Agregar. Esta ltima forma es la que utilizaremos, para ello realiza lo siguiente:
1. Del Cuadro de Herramientas, selecciona el Botn de comando y utilzalo para dibujar
el botn Actualizar, en la posicin que desees (recuerda que despus lo borraremos).
2. Selecciona la categora Operaciones con formularios y la accin Actualizar datos del
formulario. Haz clic en el botn Siguiente.
3. En la opcin Texto anota cualquier nombre para tu botn (por ejemplo, Actualizar) y
haz clic en el botn Siguiente.
4. Anota como nombre para el botn cmdActualizar y haz clic en Finalizar. Ahora ya
tienes el botn Actualizar en tu formulario principal.
Figura 1.57


5. A continuacin, haz clic derecho en el botn Actualizar (que se acaba de crear) y
elige la opcin Propiedades. Visualizars una
pantalla como la que se muestra en la figura 1.58.
6. En la ficha Eventos, haz clic en la propiedad Al
hacer clic (con ello estamos diciendo que
queremos que el comando se active al hacer clic
con el ratn) y despus haz clic en el botn con
los tres puntos que est a la derecha. Visualizars
una ventana como la que se muestra en la figura
1.59.


7. Ahora copia la lnea de programacin que dice:
DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70.
8. Cierra la pantalla y regresa al formulario principal en Vista diseo.
9. Haz clic derecho en el botn cmdAddCliente (el botn Agregar, con los tres puntos que
se coloc a la derecha de la lista desplegable cliente) y selecciona la opcin
Propiedades.
10. En la ficha Eventos, haz clic en la propiedad Al recibir el enfoque y pega all la lnea de
programacin que copiaste anteriormente.
11. Cierra la ventana y regresa al formulario principal.
Actividad 1.10
Realiza lo siguiente:
1. Repite los paso 9 y 10 para los botones cmdAddArticulo, cmdAddTipoPago y
cmdAddVendedor

Figura 1.58
Figura 1.59


Finalmente, elimina de tu formulario principal el botn cmdActualizar ya que este no forma
parte del diseo y solo lo ocupamos para copiar la lnea de cdigo que realiza la
actualizacin de los datos en el formulario.
Cmo agregar campos calculados (Subtotal, Iva y Total de la factura)
Para finalizar la elaboracin del formulario principal de facturacin, solo falta aadir los
controles donde se visualizarn la suma de importes o Subtotal, la suma de impuestos o
IVA a pagar y la suma de ellos o Total. Debido a que los datos de donde se calcularn
estos valores estn en el subformulario, tendremos que agregar primero tres controles al
subformulario y ah realizar los clculos. Posteriormente, agregaremos al formulario
principal otros tres controles desde donde podremos visualizarlos. Para ello, realiza lo
siguiente:
1. Abre el subformulario en Vista diseo.
2. Del Cuadro de Herramientas, selecciona Cuadro de texto y dibuja un cuadro de texto
en el pie del subformulario.
3. Haz clic derecho en el cuadro de texto y selecciona la opcin Propiedades.
4. En la ficha Datos, en la propiedad Origen del control escribe la frmula
=Suma(Importe) como se muestra
en la figura 1.60.
5. En la ficha Otras, haz clic en la propiedad Nombre y escribe txtSubtotal como se
muestra en la figura 1.61.
6. Cierra la ventana y observa que en el cuadro de texto se muestra la frmula que recin
se introdujo.







Figura 1.60 Figura 1.61
















Para visualizar en el formulario principal los valores de los controles creados
anteriormente, debemos crear tres controles de cuadro de texto que los llamen, para ello
haz lo siguiente:
1. Abre el formulario principal en Vista diseo.
2. Del Cuadro de Herramientas, selecciona Cuadro de texto y dibuja un cuadro de texto
en el pie del formulario.
3. Haz clic derecho en el cuadro de texto y selecciona la opcin Propiedades.
4. En la ficha Datos, haz clic en el botn con los tres puntos que est a la derecha de la
propiedad Origen del control. Visualizars la ventana del Generador de expresiones
5. En la primera de las tres ventanas inferiores (ubicada a la izquierda), selecciona
sucesivamente haciendo doble clic: Formularios, Formularios cargados,
frmEncabezadoFac y frmArticuloFac Subformulario. (Figura 1.63)
Figura 1.62
Figura 1.63


6. En la ventana inferior central, haz doble clic en txtSubtotal que fue el nombre que le
dimos al control que creamos para calcular el Subtotal de la factura en la seccin
anterior (observa que la frmula correspondiente aparece en la ventana superior) como
se muestra en la figura 1.63 y despus haz clic en el botn Aceptar.
7. En la ficha Todas de la ventana del Cuadro de texto, haz clic en la propiedad Formato y
elige la opcin Moneda. Tambin haz clic en la propiedad Alineacin del texto y elige
la opcin Derecha.
8. Cierra la ventana.
Actividad 1.11
Realiza lo siguiente:
1. Repite los paso del 2 al 6 para crear los controles que contendrn el valor del IVA y
Total del subformulario, y coloca en ellos lo siguiente:

Control Propiedad Valor
IVA
Origen de Control =Suma(Iva)
Nombre txtIva
Total
Origen de Control =txtSubtotal+txtIva
Nombre txtTotal
Una vez terminado lo anterior, visualizars el subformulario como se muestra en la figura
1.62.
2. Agrega los campos Iva y Total al formulario principal siguiendo los pasos del 2 al 7
recuerda que debes utilizar los nombres asignados a los controles que se crearon
anteriormente (txtIva y txtTotal).

Tu formulario principal se ver como se muestra en la figura 1.64. (Recuerda que en
cualquier momento puedes modificar su diseo utilizando la Vista diseo)



Arreglos finales
1. En el campo de Fecha, haz clic derecho y selecciona la opcin Propiedades,
visualizars la ventana de propiedades, selecciona la ficha Formato, haz clic en la
propiedad Formato y elige la opcin Fecha larga, aqu mismo el la propiedad Color
del fondo coloca un color gris claro.
2. Modifica las etiquetas de los cuadros de texto, segn el diseo de la pgina 27 de este
captulo.
3. Agregar el logo, nombre y dems datos de la empresa en la parte superior, como lo
hiciste en los dems formularios.
4. Para los campos no editables como Direccion, Rfc, Telefono, etc, modifica la propiedad
Color del fondo a un color amarillo, esto para indicarle a los usuarios del sistema que
en dichos campos no podrn agregar datos, solo visualizarlos.
Despus de estas actividades tu formulario principal debe quedar tal y como se muestra en
la figura 1.65.
Figura 1.64



Como podrs observar, hasta el momento ya tenemos listo el formulario para la creacin de
las facturas del sistema, pero falta lo ms importante: mandar a imprimir dicha factura. Para
hacer sto necesitamos colocar un botn que al hacer clic nos permita imprimir el informe
que contiene dichos datos. A este informe le llamaremos infImprimirFactura el cual se
explicara mas adelante, junto con el procedimiento para agregar el botn Imprimir.
Creacin de los informes
En cualquier organizacin, siempre es necesario elaborar reportes relacionados con las
actividades realizadas. En nuestro ejemplo, necesitamos informes relacionados con las
cantidades de artculos, clientes o ingresos que se estn facturando. En Access, a dichos
reportes se les llama Informes. Como ya te habrs dado cuenta, al igual que con los
formularios podemos tener informes cuyos datos provienen de una o de varias tablas
relacionadas. Como podrs suponer, en los informes de varias tablas haremos uso de
consultas. A continuacin te guiaremos en el proceso de elaboracin de un informe con una
sola tabla de datos asociada. Como ejemplo, crearemos el informe de Clientes, para ello
realiza lo siguiente:
1. Del men Objetos selecciona la opcin Informes.
2. Haz doble clic en la opcin Crear un informe utilizando el asistente, como se muestra
en la figura 1.66.
Figura 1.65


3. Elige la tabla a partir de la cual se crear el informe. Para nuestro ejemplo, elige
catCliente y selecciona todos los campos exceptuando ID (ya que consideramos que no
es importante) como se muestra en la figura 1.67. Haz clic en el botn Siguiente.
4. Visualizars una ventana que nos pregunta si deseamos algn nivel de agrupamiento
(figura 1.68). Dado que no deseamos agrupar, haz clic en el botn Siguiente.
5. A continuacin visualizars, otra ventana de dilogo por medio de la cual podrs
indicar a Access si deseas ordenar los datos a mostrar e indicar el campo o los campos
con base en los cuales se ordenar, as como el tipo de ordenamiento. Para nuestro
ejemplo, selecciona el campo Nombre (asegrate que sea de forma ascendente) como se
muestra en la figura 1.69 y haz clic en el botn Siguiente.





Figura 1.66


6. Selecciona la distribucin Tabular y la orientacin Horizontal como se muestra en la
figura 1.70, y haz clic en el botn Siguiente.
7. Elige el estilo Corporativa como se muestra en la figura 1.71y haz clic en el botn
Siguiente.
8. Escribe como ttulo para tu informe infCliente y haz clic en el botn Finalizar
como se muestra en la figura 1.72.
Figura 1.70
Figura 1.71
Figura 1.72


Tu informe se ver como se muestra en la figura 1.73.
Recuerda que puedes modificar el diseo de tus informes haciendo clic en Vista diseo.
Puedes agregar el logo, nombre y dems datos de la empresa, el ttulo del informe, etc. (este
proceso es similar al que se hizo con los formularios) de tal forma que tu informe se vea
como se muestra en la figura 1.74 (cabe aclarar que en dicha figura ya existen datos en
nuestro sistema).

Actividad 1.13
Figura 1.73
Figura 1.74


Realiza lo siguiente:
1. Siguiendo los pasos descritos anteriormente crea los informes de artculos, tipo de pago
y vendedor.

Informes utilizando consultas
Facturas Emitidas
A continuacin vamos a construir un informe cuyos elementos se encuentren contenidos en
varias tablas relacionadas y, por tanto, se requiera el uso de una consulta como fuente de
datos; para ello, utilizaremos como ejemplo el informe de facturas emitidas.
La creacin del informe referente al concentrado de facturas emitidas, consistir de dos
partes: primero, crearemos una consulta que proporcione los datos necesarios y, en segundo
lugar, el informe propiamente dicho. El procedimiento para crear la consulta es el siguiente:
1. Del men Objetos selecciona la opcin Consultas.
2. Haz doble clic en la opcin Crear una consulta en vista diseo.
3. Agrega a tu consulta las tablas tabFactura y unionArticuloFacturado. Haz clic en el
botn Cerrar.
4. Agrega a tu consulta los campos Folio, Fecha, IdTipoPago e IdCliente de la tabla
tabFactura.
5. Adems agrega los campos calculados:
a) Importe:Cantidad*PrecUnitFac
b) Iva:(Cantidad*PrecUnitFac)*PorIvaFac/100 y
c) Total:(Cantidad*PrecUnitFac)+(Cantidad*PrecUnitFac)*PorIvaFac/100
6. Haz clic derecho en cualquier columna y selecciona la opcin Totales. Se agregar
automticamente un rengln llamado Total, del cual elige la opcin Suma solamente
para los 3 campos antes calculados (Importe, Iva y Total). Lo anterior lo realizamos
para que el informe no incluya un rengln por cada artculo incluido en una factura,
sino un rengln para el total de cada factura. En la figura 1.75 se muestra como debe
quedar la consulta hasta este momento.
Figura 1.75


7. En el rengln Criterios de la columna correspondiente al campo Fecha, escribe lo
siguiente: Entre[Fecha Inicio Periodo] y [Fecha Fin Periodo] para que, al momento de
ejecutar la consulta, el sistema te presente una pantalla como la de la figura 1.76, donde
podrs introducir el intervalo de tiempo que deseas se muestre en el informe.
8. Guarda tu consulta con el nombre conFacEmitidas.
Ahora crearemos el informe utilizando la consulta anterior y agregando las opciones de
resumen correspondientes. Para ello realiza lo siguiente:
1. Del men Objeto selecciona la opcin de Informes.
2. Haz doble clic en la opcin Crear un informe utilizando el asistente.
3. Selecciona la consulta conFacEmitidas y agrega todos sus campos y haz clic en el
botn Siguiente.
4. En la ventana de agrupamiento selecciona la opcin por Fecha, sto nos permitir
visualizar las facturas de nuestro informe por medio de la fecha y despus, haz clic en
el botn Siguiente.
5. Elige la opcin ordenar por el campo
IdCliente, Fecha o Folio, posteriormente haz
clic en el botn Opciones de resumen y activa
la columna Suma para los renglones Importe,
Iva y Total y haz clic en el botn Siguiente.
6. Selecciona la opcin distribucin por Bloque
en forma Horizontal y haz clic en el botn
Siguiente.
7. Elige el estilo Corporativa, haz clic en el
botn Siguiente.
8. Guarda tu informe con el nombre
InfFacEmitidas y haz clic en el botn
Finalizar.
Tu informe se ver como lo muestra la figura 1.77.
Recuerda que puedes modificar el diseo de tus informes haciendo clic en Vista diseo.
Puedes agregar el logo, nombre y dems datos de la empresa, el ttulo del informe, etc. (este
Figura 1.77
Figura 1.76


proceso es similar al que se hizo con los formularios), de tal forma que tu informe se vea
como se muestra en la figura 1.78.
Figura 1.78


I nforme para la Factura
En una seccin anterior mencionamos que para mandar a imprimir la factura haca falta la
elaboracin de un informe, y es en esta seccin donde lo construiremos. Dicho informe
incluir datos que se encuentran contenidos en varias tablas relacionadas y, por tanto,
requerir una consulta como fuente de datos. Dicho informe estar diseado para ser
impreso en un formato de factura como la que se mostr en la figura de la pgina 12 de este
captulo.
La creacin del informe para la factura consistir de dos partes: primero, crearemos una
consulta que proporcione los datos necesarios y, en segundo lugar, el informe propiamente
dicho. El procedimiento para crear la consulta es el siguiente:
1. Del men Objetos selecciona la
opcin Consultas.
2. Haz doble clic en la opcin Crear una
consulta en vista diseo. Observa la
figura 1.79.
3. Agrega a tu consulta las tablas
tabFactura, catCliente,
unionArticuloFacturado y catAriculo.
Haz clic en el botn Cerrar.
4. Visualizars una pantalla como la que
se muestra en la figura 1.80; como
podrs observar, automticamente se
agregaron relaciones que no fueron
creadas por nosotros y que deben ser
eliminadas. Reacomoda las tablas en el diagrama de tal forma que te facilite ver las
relaciones que existen entre ellas; despus de esto, tu pantalla debe verse como la figura
1.81.
Figura 1.79



5. Agrega a tu consulta: de la tabla tabFactura, los campos Folio, Fecha, IdCliente,
IdVendedor, IdTipoPago; de la tabla catCliente, los campos Rfc, Direccin, Telefono,
Cp, Ciudad, Estado; de la tabla unionArticuloFacturado, los campos IdArticulo,
Cantidad, PrecUnitFac y PorIvaFac; y, por ltimo, de la tabla catArticulo, el campo
Clave.
6. Adems agrega los campos calculados:
a) Importe:Cantidad*PrecUnitFac
b) Iva:(Cantidad*PrecUnitFac)*PorIvaFac/100
c) Total:(Cantidad*PrecUnitFac)+(Cantidad*PrecUnitFac)*PorIvaFac/100
7. Guarda tu consulta con el nombre conImprimirFactura. Observa la figura 1.82
Figura 1.80
Figura 1.81


Ahora crearemos el informe utilizando la consulta anterior y agregando las opciones de
resumen correspondientes. Para ello realiza lo siguiente:
1. Del men Objeto selecciona la opcin de Informes.
2. Haz doble clic en la opcin Crear un informe utilizando el asistente. Observa la figura
1.83.
3. Selecciona la consulta
conImprimirFactura, agrega todos sus
campos como se muestra en la figura
1.84 y haz clic en el botn Siguiente.
4. Visualizars una ventana en la cual se
pregunta: Cmo deseas ver los datos?
y te permite seleccionar una de las
cuatro tablas utilizadas. Selecciona por
tabFactura como se muestra en la figura
1.85 y haz clic en el botn Siguiente.
Figura 1.82
Figura 1.83


5. En la siguiente ventana no es necesario seleccionar un campo para la ordenacin de los
datos, pero s debemos de seleccionar algunas opciones de resumen. Para ello, haz clic
en el botn Opciones de resumen y activa la columna Suma para los renglones
Importe, Iva y Total como se muestra en la figura 1.86 y haz clic en el botn
Siguiente.

Figura 1.84
Figura 1.85
Figura 1.86


6. Selecciona la opcin distribucin en Pasos en forma Vertical y haz clic en el botn
Siguiente
7. Elige el estilo Corporativa y haz clic en el botn Siguiente.
8. Guarda tu informe con el nombre infImprimeFactura y haz clic en el botn Finalizar.
Tu informe se ver como se muestra en la figura 1.87.

9. A este informe debes quitarle todas las etiquetas (son los controles que muestran el
texto en negritas, la mayor parte de ellas se encuentra en la seccin Encabezado de
pgina) para esto solo selecciona la etiqueta o etiquetas y presiona la tecla Supr o Del
(esto se hace porque, como se dijo anteriormente, la hoja que se utilizar para imprimir
las facturas ya contiene estos rtulos). Debes de acomodar los campos de tal forma que
se impriman en los lugares indicados, observa la figura 1.88.
Figura 1.87
Figura 1.88


Si mandas a imprimir el informe en este momento, se imprimirn todas las facturas que se
encuentren en tu sistema y el objetivo del informe es mandar a imprimir solo la que el usuario
est visualizando en ese momento, por lo tanto, hay que hacer lo siguiente:
1. Haz clic con el botn derecho, en la esquina superior
izquierda del informe, visualizars una lista de opciones de la
cual selecciona la opcin Propiedades. Observa la figura
1.89.
2. Visualizars la ventana de Propiedades del informe en la
propiedad Filtro de la ficha Datos escribe [Folio]=
[Forms]![frmEncabezadoFactura]![Folio] esto
permite que se visualice el informe nicamente con los datos
de la factura actual (los datos de las otras facturas se omiten).
3. En la misma ficha Datos en la propiedad Activar filtro
escribe S observa la figura 1.90. Cierra la ventana de
Propiedades.
4. Por ltimo, guarda los cambios efectuados al informe y haz clic en el botn Cerrar.

Listo! Ahora s ya
tienes el informe de la
factura, solo resta crear
el botn que nos
permita mandarla a
imprimir desde el
formulario principal.
Para esto, haz lo
siguiente:



5. Abre el formulario principal frmEncabezadoFac en Vista diseo.
6. Del Cuadro de Herramientas que te mostramos en la figura 1.34, selecciona la opcin
Botn de comando y dibuja el botn a la derecha del botn Deshacer. En forma
automtica visualizars la
ventana del Asistente para
botones de comando. En ella
selecciona la categora
Operaciones con informes y,
posteriormente, la accin
Imprimir informe como se
muestra en la figura 1.91 y haz
clic en el botn Siguiente.

Figura 1.89
Figura 1.90
Figura 1.91







7. Selecciona el informe infImprimeFactura como se muestra en la figura 1.92 y haz clic
en el botn Siguiente.
8. En la opcin Texto, escribe Imprimir como se muestra en la figura 1.93 y haz clic en el
botn Siguiente. El contenido de esta opcin se visualiza como rtulo en el botn (en
nuestro caso la palabra Imprimir, de acuerdo con nuestro diseo).

9. Escribe el nombre del botn (en este caso, cmdImprimir) como se muestra en la figura
1.94 y haz clic en el botn Finalizar.

Figura 1.92
Figura 1.93
Figura 1.94


Integracin del sistema
Hasta aqu prcticamente has concluido tu base de datos, solamente te resta generar la
pantalla donde aparecer el men a travs del cual los usuarios accedern a los diversos
formularios, catlogos e informes que se han creado en la base. A esto le llamamos
Integracin del sistema e incluye, de acuerdo con nuestros diseos la creacin de un men
principal (que contendr la opcin de crear facturas) con dos submens (el de los catlogos
y el de los informes) y la opcin Salir.
Creacin de los mens (Paneles de control)
Para crear los mens, realiza lo siguiente:
1. Del men Herramientas, selecciona Utilidades de la base de datos y despus
Administrador del panel
de control.
2. Access te preguntar si
deseas crear un panel de
control. Haz clic en el
botn S, esto te llevar
a la pantalla del Administrador del panel de control, observa la figura 1.95.
3. En dicha pantalla se presenta
como predeterminado el panel de
control principal, por lo que solo nos
hace falta agregar los submens
(Nota: La opcin predeterminado
indica que ese ser el primer panel
que se mostrar; t puedes elegir
como predeterminado cualquier panel
de control simplemente
seleccionndolo y presionando el
botn que dice Predeterminado). Para
agregar los submens, haz clic en el
botn Nueva.
4. Escribe el nombre SubMenuCatalogos y haz clic en el botn Cerrar, esto te regresa a
la pantalla del Administrador del panel de control.
5. Nuevamente haz clic en el botn Nueva,
escribe el nombre SubMenuInformes y haz
clic en el botn Cerrar.
Como se muestra en la figura 1.96, en la
pantalla Administrador del panel de control
ahora se muestran los 3 elementos necesarios
para nuestros mens: el panel de control
principal, el submen de los catlogos y el
submen de los informes; sin embargo, an
Figura 1.96
Figura 1.95


falta indicar qu elementos contendr cada uno de ellos.
Para definir los elementos del men principal haz lo siguiente:
1. Selecciona Panel de control principal y
haz clic en el botn Modificar.
2. Visualizars una ventana, llamada
Modificar pgina del panel de control
principal como la que se muestra en la
figura 1.97, haz clic en el botn Nueva.
3. Visualizars otra ventana, llamada
Modificar elemento del Panel de
control, donde debes introducir los datos
que te indicamos a continuacin:
En Texto, escribe: Facturacin.
En Comando: Selecciona Abrir
el formulario en modo Edicin.
En Formulario: Selecciona
frmEncabezadoFac.

4. Despus de introducir estos datos,
la ventana quedar como se muestra en la figura 1.98. Finalmente, haz clic en el botn
Aceptar, esto te regresar a la pantalla Modificar pgina del panel de control
principal.
5. Para agregar otra opcin al men
principal haz clic en el botn Nueva.
6. Escribe en las opciones lo que te
indicamos a continuacin:
Texto: Informes.
Comando: Selecciona Ir al panel.
Panel de Control: Selecciona
SubMenuInformes. Haz clic en el
botn Aceptar.
7. Para agregar el submen catlogos al
men principal, haz clic en el botn
Nueva
8. Escribe en las opciones respectivas lo
que se indica a continuacin:
Texto: Catlogos.
Comando: Selecciona Ir al panel.
Panel de Control: Selecciona SubMenuCatalogos. Haz clic en el botn Aceptar.
9. Finalmente, agregaremos la opcin Salir, para ello haz clic en el botn Nueva y agrega:
Texto: Salir

Figura 1.97

Figura 1.98

Figura 1.99


Comando: Selecciona Cerrar la aplicacin. Haz clic en el botn Aceptar. La
ventana se ver como se muestra en la figura 1.99. Finalmente, haz clic en el botn
Cerrar.
Para definir los elementos de los submens debes realizar un procedimiento similar al
anterior, con algunos cambios. En este proceso tus ventanas se mostrarn como en las
figuras 1.100 y 1.101:
1. Selecciona SubMenuCatalogos y haz clic en el botn Modificar.
2. Haz clic en el botn Nueva e introduce los siguientes elementos, para cada una de las
opciones que tendr el subformulario:
a) Opcin Clientes
Texto: Clientes.
Comando: Abrir el formulario en modo edicin.
Formulario: frmCliente.
b) Opcin Artculos
Texto: Artculos.
Comando: Abrir el formulario en modo edicin.
Formulario: frmArticulo.
c) Opcin Vendedor
Texto: Vendedor.
Comando: Abrir el
formulario en modo edicin.
Formulario: frmVendedor.
d) Opcin Forma de Pago
Texto: Forma de Pago.
Comando: Abrir el
formulario en modo edicin.
Formulario: frmTipoPago.
e) Opcin Regresar al men
principal
Texto: Regresar al
men principal.
Comando: Ir al panel.
Panel de control: Panel de
control principal.
3. Haz clic en el botn Cerrar.
4. Selecciona SubMenuInformes y
haz clic en el botn Modificar.
5. Haz clic en el botn Nueva e introduce:
a) Opcin Clientes
Texto: Clientes.
Comando: Abrir el informe.
Formulario: infCliente.
b) Opcin Articulo

Figura 1.101


Texto: Artculos.
Comando: Abrir el informe.
Formulario: infArticulo.
c) Opcin Vendedor
Texto: Vendedor.
Comando: Abrir el informe.
Formulario: infVendedor.
d) Opcin Facturas Emitidas
Texto: Facturas Emitidas.
Comando: Abrir el informe.
Formulario: infFacEmitidas.
e) Opcin Regresar al men principal
Texto: Regresar al men principal.
Comando: Ir al panel.
Panel de control: Panel de control principal.
6. Haz clic en el botn Cerrar y despus nuevamente en el botn Cerrar para salir del
Administrador del panel de control.
7. Observa que en el men Objetos en la opcin Formularios aparece un formulario
llamado Panel de Control y en la opcin Tablas aparece, una llamada Switchboard
Items. Si haces doble clic en el formulario Panel de control, tendrs acceso a los mens
que acabas de crear. Dichos mens se vern como se muestra en la figura 1.102.
Recuerda verificar que todas sus opciones funcionen. Adems, puedes modificar el diseo
de los mens en Vista diseo, agregar una imagen, etiquetas, etc., tal y como se hizo con los
Figura 1.102


formularios que se crearon anteriormente, de tal forma que se vean como el que se muestra
en la figura 1.103.


Aadir contrasea
Por ltimo, podemos comentar que es posible compartir una base de datos en Access entre
diferentes mquinas, pero esto no siempre es recomendable. Con el fin de restringir el
acceso a la base, puedes agregarle una contrasea.
Para ello haz lo siguiente:
1. Cierra tu base de datos y
brela en Modo exclusivo
haciendo clic en el
tringulo que se muestra al
lado del botn Abrir como
se muestra en la figura
1.104.
2. Ya dentro de tu base de
datos, del men
Herramientas, selecciona
Seguridad y despus la
opcin Establecer
contrasea para la base de
datos.
3. Visualizars una ventana
Figura 1.103
Figura 1.105
Figura 1.104


en la cual debes escribir la contrasea que desees para tu base, despus debes
confrmala, como se muestra en la figura 1.105.
4. Por ltimo, haz clic en el botn Aceptar.
5. Cierra tu base y verifica que al abrirla te solicite la contrasea.
Observacin:
Si quieres eliminar una contrasea, abre tu base en modo exclusivo y del men
Herramientas selecciona la opcin Seguridad, posteriormente selecciona la opcin
Anular contrasea.
El siguiente paso sera implementar nuestro sistema de facturacin. Esperamos que en este
captulo hayas aprendido lo fundamental en el desarrollo de un pequeo sistema utilizando
el manejador de bases de datos Access. As como haz aprendido a disear y desarrollar un
sistema de facturacin, hay muchas aplicaciones pequeas que puedes desarrollar tales
como: un sistema para imprimir credenciales, de biblioteca, etc. Suerte!

Resumen
Las Bases de Datos constituyen actualmente una de las herramientas ms utilizadas
para el almacenamiento y procesamiento de la informacin.
Para cualquier organizacin, un adecuado diseo de su Base de Datos conlleva la
posibilidad de utilizar dicha informacin como una ventaja competitiva.
El diseo de las Bases de Datos es un proceso que incluye la seleccin del modelo ms
adecuado, as como la definicin de los datos a almacenar, su interrelacin y la forma
en que se visualizarn los mismos.
Una vez diseada, la Base de Datos es creada utilizando aplicaciones como Access, que
de forma sencilla permiten llevar lo diseado a la realidad.
La creacin de una Base de Datos en Access implica la elaboracin de tablas,
formularios, consultas y reportes, a travs de los cuales sern manipulados los datos de
la organizacin.

Bibliografa
Microsoft Access 97 Paso a Paso
Catapult, 1997 Espaa. Ed. Mc Graw Hill SA.
Diseo y administracin de Bases de Datos
Hansen, Gary y James V. Hansen, 2 edicin 1997, Espaa. Ed. Prentice Hall.
Procesamiento de Bases de Datos
Kroenke, David. 1996, Mxico. Ed. Prentice Hall Hispanoamericana.
Referencias electrnicas
http://personal3.iddeo.es/davmai/Access.htm
Trucos de Access.
http://communities.es/SoloAccess/_whatsnew.msnw


Slo Access.
http://hades.udg.es/lista/access/
Lista de correo de Microsoft Access.
http://www.microsoft.com/spain/support/office/access/faq/f
aq2000.asp?FR=0
Consultas ms frecuentes sobre Microsoft Access.

Você também pode gostar