MÓDULO II BASE DE DATOS ACCESS UNIDAD I BASE DE DATOS ................................................................................................................................................ Una Base de datos es un programa que permite gestionar una serie de datos integrados, organizados de manera significativa en tablas que, posteriormente, pueden ser consultadas para la generación de informes. La base debe permitir básicamente el ingreso, almacenamiento y recuperación de datos. Determinación de Requerimientos: Antes de utilizar Access para la creación de la Base se precisa invertir tiempo en el diseño de la misma. Planificar detalladamente las tareas que se espera resolver, definir la información que estará contenida en la base y la forma como ésta se relacionará, ayudará en la creación de un diseño de gestión práctico, preciso y eficiente. Podemos englobar el proceso de diseño en tres grandes etapas: Análisis del Problema En esta etapa usted debe reflexionar respecto a cómo se está controlando el flujo de información de la empresa y en base a esa reflexión, determinar si es necesario implementar una Base de Datos: Si los datos están siendo almacenados por distintos usuarios en forma independiente (en su propio PC, disco flexible o CD), o si son utilizados en distintas aplicaciones, o si están muy dispersos, lo más problable es que no se tenga un buen control de ellos, así como tampoco se puedan obtener con facilidad estadísticas de interés para la empresa y tal vez, sea el momento de implementar una Base de Datos. En los siguientes puntos, mencionamos algunas ventajas del uso de Base de Datos, que podrían servirle para tomar la decisión. Una Base de Datos: Conserva la Integridad de la información Se produce falta de integridad cuando por ejemplo los cambios que un usuario A realiza en un archivo, podrían no verse reflejados en la información que maneja el usuario B Evita información duplicada Comparte datos Distintas aplicaciones podrían utilizar los datos de la base y a la vez, se podrían crear otras aplicaciones con ellos Estandariza los datos Existe mejor control cuando la información está estandarizada, cumpliendo las normas de la empresa o normas internacionales, esto contribuye además, a la fácil migración de los datos entre sistemas Protege y restringe los datos Pueden aplicarse normas de seguridad y reserva, el primer caso se refiere a evitar que personas sin autorización entren al sistema y el segundo a la restricción respecto del nivel de información que manejará cada usuario. Valida los datos: Validando los datos se reduce al máximo la posibilidad de cometer errores al momento de ingresar éstos al sistema. - - 55 UNIDAD I BASE DE DATOS A diferencia de los procesadores de texto y de la mayoría de las planillas electrónicas, una Base de Datos involucra los procesos y tareas de varios usuarios, por lo que la implementación de una base, necesariamente tiene que ser evaluada en equipo, donde cada usuario determine sus propios requerimientos. De este modo la persona encargada del diseño de la Base tendrá una visión global y a su vez particular lo que le permitirá establecer las relaciones correctas entre los datos. Resumiendo, esta etapa es tal vez una de las más importantes. Implica la identificación de un problema (redundancia de información, desorden con la misma, inversión de mucho tiempo en la generación de informes, etc.). Teniendo claridad en la(s) tarea(s) a resolver podrá determinar la finalidad u objetivo de su Base de Datos. Las preguntas que usted podría hacer para facilitar la detección de un problema, pueden ser: ¿La información de mi empresa está estandarizada, es decir, tengo definido un formato de ingreso de los datos como: fechas, clientes, instituciones? ¿Cuando algún miembro de la organización modifica una información, estos cambios se reflejan automáticamente para todos los otros usuarios que utilizan esos datos? ¿Tengo problemas con el uso de la información?(accedo fácilmente a ella, obtengo los informes a tiempo, puedo realizar cualquier tipo de estadística que la empresa necesite) ¿Cuáles son las tareas que me gustaría o que necesito resolver? Identificación de los datos Se supone que en la etapa anterior usted definió las tareas que debe resolver con la Base de Datos que diseñará. Ahora corresponde determinar cuáles son los datos involucrados en estas tareas, codificarlos, agruparlos, detrminar las características que tendrán esos datos (datos numéricos, texto, fotos, etc). Esta etapa es una de las más dinámicas, ya que debe necesariamente estar expuesta a revisiones y modificaciones. Por ejemplo: El BID elaboró un Banco de Proyectos de Investigación que pudieran ser sujetos a algún tipo de Colaboración Internacional. ¿Cuáles son los posibles datos Involucrados? Seguramente los datos que necesitó registrar en la base fueron: Nombre de la institución participante, dirección de la Institución, Nombre del Director, Sitio Web Institución, e-mail Director, Fono Institución, código del proyecto, Area (Minería, Medio Ambiente, Alimentos, etc), Nombre del Proyecto, Presupuesto Asignado, fecha inicio, fecha término, etc. ¿Cómo agrupó la información anterior? Se deben agrupar los datos que tengan características asociadas o que pertenezcan a un mismo tema. En este ejemplo, se pueden realizar 3 (tres) grupos: 1. Grupo Institución: En este grupo podría estar: Nombre de la Institución participante, Dirección de la institución, Nombre del Director, Sitio Web Institución, Fono Institución 2. Grupo Director: Aquí podemos incluir los datos personales del Director: Nombre del Director, e-mail Director - - 56 UNIDAD I BASE DE DATOS 3. Grupo Proyecto: Código del Proyecto, Area, Nombre del Proyecto, Presupuesto Asignado Estos grupos en la base, reciben el nombre de Tablas y cada uno de los datos, el nombre de Campos ¿Qué características tienen los datos? Se trata de establecer el tipo de información que se guardará en cada uno de los datos mencionados. Es claro que para los datos: Nombre de la Institución participante o Nombre del proyecto, el dato es de tipo texto, ya que básicamente, se registrará texto en ellos. Sin embargo, no es tan claro el tipo que puede asignarse al dato Código de Proyecto, puesto que un usuario puede codificar con un número correlativo cada uno de los proyectos (y en ese caso el dato sería de tipo numérico o autonumérico), y otro usuario podría asignar al mismo un código formado por la unión de una letra seguida de un número (lo que causaría un dato de tipo texto o alfanumérico). El diseñador definirá entonces el tipo de datos necesario, teniendo presente todos los tipos posibles para esa información. Como uno de los objetivos de la base de datos es evitar la información duplicada, los grupos necesitan de un dato que represente de forma única la información registrada en la base, este dato recibe el nombre de clave principal. Por ejemplo, si no queremos que se repitan los proyectos ingresados a la tabla proyecto, uno de los datos que allí se mencionan debería registrar información que no se duplique. El dato Código de proyecto es un buen candidato a clave principal. Entonces, otra de las preocupaciones que deberá tener el diseñador de la base, será la determinación del campo clave principal. En resumen, para facilitar la selección, organización y definición de datos en la Base, se sugiere tener presente las siguientes consideraciones: Determina cuáles son los flujos de entrada y/o salida, es decir, qué datos necesitamos ingresar a la base y qué información deseamos obtener. Estratificar la información en grupos con características similares, esto es, definir las tablas. Revisar los informes actuales y/o, realizar bocetos de los informes que desea producir (en muchas ocasiones la revisión de informes o la realización de bocetos, alerta al diseñador de nuevos datos, que no habían sido considerados) Reunir los formularios que utiliza actualmente para registrar los datos. Reflexión respecto a cuál será la clave principal en cada una de las tablas, que identifique la información de manera única. Examinar bases de datos bien diseñadas similares a las que va a diseñar Consultar a los demás usuarios. Relaciones entre datos Una vez que se establecen los datos (que desde ahora llamaremos campos) y se estructuran los grupos (que llamaremos Tablas), se debe establecer la forma en que la información registrada en una tabla interactúa o se relaciona con la información de otra tabla. La finalidad de esta unión es la generación de consultas, formularios e informes rescatando información en forma automática, de distintas tablas a la vez. Antes de establecer esta relación, se debe buscar un dato en una tabla, que sirva de enganche con la otra. En el ejemplo anterior, podemos observar que en la tabla Institución el Campo Nombre de Director podría ser nuestro enganche con la tabla Director. - - 57 UNIDAD I BASE DE DATOS En esta etapa, es conveniente establecer un diagrama simple, como el que se muestra, que represente las tablas existentes en la base y las relaciones que se establecerán en la misma, esto es, los campos de enganche y las tablas con las que se engancharán. El campo de enganche en una relación debe ser coincidente en ambas tablas, generalmente coincide con el campo clave principal. En el ejemplo anterior, el campo de enganche: Nombre del Director, existía en la tabla Institución y también en la tabla Director, por tanto era posible rescatar información de ambas tablas, sin embargo no ocurre lo mismo con la tabla proyecto ya que ningún campo de ésta se repite en las dos tablas anteriores. Por lo tanto, si quisiéramos rescatar información sobre el proyecto deberíamos incorporar a alguna de las tablas un campo de enganche con la tabla proyecto. Podríamos agregar el campo código del proyecto a la tabla Institución y de éste modo, ya podríamos enlazar la tabla Proyecto con la tabla Institución a través del campo Código de proyecto. Así se podría diseñar el siguiente diagrama: Las tablas aparecen representadas por rectángulos y los nombres de éstas se destacan con fondo gris. Los campos aparecen listados en cada uno de los rectángulos y las líneas entre tablas representan las relaciones. La información asociada o de un mismo asunto, que comienza a formar parte de cada una de las tablas recibe el nombre de registro. Es decir, un registro de una tabla no es más que la información contenida para cada uno de los campos definidos en ella. Por ejemplo: en la tabla Director, se podrían tener los siguientes registros: Nombre del director email Director Juan Barrientos Cortés Rodolfo Cárdenas santibáñez [email protected] [email protected] - - Campos Registros 58 UNIDAD I BASE DE DATOS Tipos de Relaciones El lector podría inferir que cuando se establecen relaciones, en realidad se está estableciendo un vínculo entre los registros de una tabla y otra. La relación que se establece entre una tabla y otra depende de las veces que una información contenida en el campo enganche de una tabla, se repite en la otra, analizados en ambos sentidos, es decir, tomando una información de la primera tabla y analizando si podría repetirse más de una vez en la segunda tabla y visceversa. Relación uno a varios (1--------n) Es el tipo más común de relación, y es aquella en la que un registro de una tabla (llamada tabla principal), puede relacionarse con varios registros de la otra tabla (llamada tabla relacionada). Se puede expresar la relación en este sentido como (1-----n). A su vez, un registro de la tabla relacionada, sólo puede relacionarse con un único registro en la tabla Principal, y lo expresamos (1------1). En nuestro ejemplo, si agregamos a la tabla Proyecto el campo Nombre de Director, podríamos relacionar la tabla Director con la tabla Proyecto, a través de ese campo, como lo muestra el este diagrama. Tabla Principal Tabla relacionada Podemos pensar que un mismo director, puede estar involucrado en varios proyectos. El director que se registrará sólo una vez en la tabla Director (porque no deben existir registros duplicados en la tabla), podría aparecer varias veces en la tabla Proyectos (relación uno a varios). Por otro lado, si ubicamos un director en la tabla Proyecto, podremos hacerlo calzar sólo con un registro de la tabla Director (relación uno a uno). - - 59 UNIDAD I BASE DE DATOS El siguiente es otro ejemplo que ilustra este tipo de relación: Tabla empleados Un único empleado en Tabla empleados... Tabla Pedidos ...aparece registrado con varios pedidos en Tabla Pedidos, pero un pedido es realizado por un único Empleado Ejemplos de relaciones uno a varios: TABLA1 CATEGORÍA TABLA2 PRODUCTO RELACIÓN Una categoría puede contemplar varios productos pero un producto sólo se enmarca en una única categoría. CONTINENTES PAISES Un continente varios países puede tener pero un país pertenecer a continente. sólo un puede único Relación uno a uno (1-------1) Este tipo de relación es menos frecuente. En ella, un registro de la tabla principal, puede relacionarse con un único registro en la tabla relacionada y viceversa. En nuestro ejemplo, la tabla Institución con la tabla Director, se relacionan en una forma uno a uno, a través del campo Nombre del Director Una razón que justificaría este tipo de tablas sería la de separar datos públicos y privados de empleados. Así se tendría una tabla para almacenar información referente a los datos públicos de los empleados (código, nombre, apellido, fono_trabajo, dirección laboral) y otra para los datos privados (dirección particular, fecha_de_nacimiento, fono_casa, estado_civil). - - 60 UNIDAD I BASE DE DATOS En este ejemplo, un registro de la tabla pública coincide con un único registro de la tabla privada y viceversa. Relación varios a varios (n----n) Como ya se ha visto, al establecer una relación, no basta con analizar la relación de un registro de la tabla principal con los registros de la tabla relacionada, también debe realizarse el análisis al revés, esto es, analizar cómo se relacionan los registros de la tabla relacionada con los registros de la tabla principal, ya que p ue d e oc ur r ir q ue e n u n s e n ti d o la r e lac i ó n s ea (1----n) y todo haga creer que se trate de una relación uno a varios, pero que c u a nd o s e an a l ic e e l o tr o s en t id o , n os e nc on tr e m os c on qu e t am bi én sea (1----n). En estos casos estamos ante una relación varios a varios En este tipo de relación, un registro de la Tabla1 puede tener varios registros coincidentes en la Tabla2 y viceversa. Veamos con un ejemplo, este tipo de relación. Se tienen 2 tablas: Pedidos y Productos. Entre estas tablas existe una relación varios a varios ya que, en un sentido, un pedido puede incorporar varios productos y en el otro, un producto puede ser solicitado en varios pedidos. El problema se plantea cuando debemos identificar la tabla principal. Supongamos que un cliente realizó el siguiente pedido Código_Pedido 001 002 Productos solicitados Nueces Almendras Avellanas Almendras Más abajo veremos cómo almacenamos la información en las tablas Pedidos y Productos. Asumamos que la tabla principal es Pedidos y que el campo clave principal es el que aparece destacado en gris en cada una de las tablas. Entonces, debemos agregar el campo código_pedido en la tabla relacionada (Productos). Tabla Pedidos Código_pedido 001 002 Fecha_pedido 03/08/02 10/10/02 Tabla Productos código_producto a001 a002 a003 a001 nombre_producto Almendras Avellanas Nueces Almendras Código_pedido 001 001 001 002 Observe que el código a001 aparece en 2 registros, sin embargo Access no lo permite, puesto que código de producto es un campo clave principal y no admite registros duplicados. El problema se presenta al momento que deba rescatar información de la tabla productos pues, no podrá definir si rescatar la información del registro 1 o la del registro 4, puesto que ambos campos son coincidentes.. ¿Qué ocurre si entonces se utiliza Productos como tabla principal?. Veamos: Tendríamos que agregar el campo código_producto a la tabla Pedidos. - - 61 UNIDAD I BASE DE DATOS Tabla Productos código_producto a001 a002 a003 nombre_producto Almendras Avellanas Nueces Tabla Pedidos código_pedido 001 001 001 002 fecha_pedido 03/08/02 03/08/02 03/08/02 10/10/02 código_producto a001 a002 a003 a001 Ocurre exactamente lo mismo. Se repite el campo código de pedido. Este problema se soluciona definiendo una tercera tabla llamada tabla de enlace, cuya clave principal debe estar formada por las claves principales de las 2 tablas anteriores. Se establecen de este modo dos relaciones: cada una utilizando como tabla principal, una de las tablas iniciales y como tabla relacionada, la tabla enlace. Para terminar el ejemplo, definiremos la tabla enlace: Detalle de Pedidos y estableceremos la relación uno a varios entre Pedidos y Detalle de Pedidos y entre Productos y Detalle de Productos: Tabla Pedidos Tabla Productos código_producto a001 a002 a003 (1------n) nombre_producto Almendras Avellanas Nueces Código_pedido 001 002 Fecha_pedido 03/08/02 10/10/02 (1------n) Tabla Detalle de Pedidos Código_producto código_pedido a001 001 a002 001 a003 001 a001 002 considerando ambos campos como clave principal, se obtienen registros únicos Ejemplo de Diseño de Bases de Datos Con la idea del Gerente de Administración de implementar una base de datos que automatice los procesos de un sistema de control de inventarios y facturación, usted debe diseñar la base de dicho proceso. Las actividades son las siguientes: • Los productos para la venta están agrupados de tal forma que se mantiene la información en detalle de su código, nombre y precio unitario de venta. • Los productos están almacenados en distintas bodegas de la ciudad, de tal manera que el stock (cantidad disponible para la venta) se determina por cada una de las bodegas. • Los datos de los clientes se mantienen actualizados y corresponden a: nombre del cliente, fono del cliente, dirección del cliente, código de la ciudad, código de la región. • Cuando se realiza la venta se requiere almacenar la información necesaria para emitir posteriormente el documento de venta, por lo que es necesario contar con la siguiente información: fecha de la venta, identificador del cliente, la descripción de los productos que se están vendiendo y los subtotales y totales de venta. - - 62 UNIDAD I BASE DE DATOS I.- Análisis del problema ................................................................................................................................................ ¿Cuál es el problema? Dado el nivel de ventas diarias que tiene la empresa, se ha producido pérdida de información sobre las ventas, que implica ciertas dificultades sobre el posterior cobro a los clientes. Este problema, detectado por el gerente de finanzas, ha repercutido en la gestión financiera de la empresa produciendo un déficit de caja en los últimos meses. El nivel de ventas que tiene la empresa ha hecho surgir la necesidad de requerir de un sistema de procesamiento de información que automatice la confección de los documentos de ventas y que actualice en forma inmediata los inventarios de productos. Desarrollo del ejercicio: ¿Cuál será la finalidad de la Base? Poder rescatar la información de las ventas y con esto facilitar la posterior gestión de cobro dentro de los plazos del crédito. Poder generar los documentos de venta y actualizar los inventarios de productos disponibles en el momento en que se realiza el evento de venta. La base además deberá ser capaz de entregar informes de ventas por productos, inventarios de productos por bodega, stock de cada bodega, ventas por periódo, etc. Determinación de tareas Algunas de las tareas pueden ser: • Organizar la información de ventas de manera tal de poder rescatarla fácilmente para poder gestionar el cobro • Emitir informes periódicos de ventas • Emitir el documento de venta • Emitir informes periódicos de vencimientos de crédito • Determinación del stock de productos II.- Identificación de los datos ................................................................................................................................................ Definición de tablas 1. 2. 3. 4. 5. Definir una tabla para incorporar la información de los clientes Definir una tabla para incorporar la información de productos Definir una tabla para incorporar la información de las ventas Definir una tabla para incorporar la información de las bodegas Definir una tabla en la cual se actualice en forma inmediata el nivel de inventarios de los productos disponibles para la venta. Campos involucrados en las tablas Tabla Clientes: Nombre cliente, dirección cliente, fono cliente, código de identificación, ciudad, región - - 63 UNIDAD I BASE DE DATOS Tabla Productos Nombre del producto, código del producto, precio unitario Tabla Ventas Código de la venta, fecha de la venta, código de cliente, nombre cliente, dirección del cliente, fono cliente, ciudad, región, código del producto, nombre del producto, precio unitario, cantidad vendida, total de la venta. Tabla Bodega Código de bodega, nombre de bodega, ciudad, región, dirección bodega, código del producto, nombre del producto, cantidad de productos. Tabla de inventario Código de bodega, código del producto Determinación de camps clave: Tabla Cliente Campo clave= Código de identificación Tabla Producto Campo clave= Código de producto Tabla Ventas Campo clave= Código de venta Tabla Bodega Campo clave= Código de bodega Tabla inventario Campo clave= Código de Bodega+Código de producto III.Relaciones entre tablas ............................................................................................................................................................... ¿Qué tablas se deben relacionar? La tabla Clientes con Ventas La tabla Productos con Bodega La tabla Productos con Ventas La tabla Inventario con Bodega - - 64 UNIDAD I BASE DE DATOS ¿Qué tipo de relación se genera entre las tablas anteriores? Clientes-Ventas Un cliente puede estar comprometido en varias compras, pero una venta puede pertenecer a un solo cliente. Por lo tanto esta es una relación uno a varios. Productos-Bodega Un producto puede estar en varias bodegas y a su vez, una bodega puede contener muchos productos. Esta es una relación varios a varios o sea que genera el problema de las tablas enlaces Productos-Ventas Un producto puede aparecer en varias ventas y a su vez, una venta puede contemplar varios productos. Esta también es una relación varios a varios. Inventario-Bodega La relación queda demostrada por la unión entre un determinado producto a través de su código y el código de la bodega (ubicación física del producto) Un producto bajo su código específico puede estar solo en una bodega, mientras que una bodega puede contener muchos productos (aun bajo su código específico) (En otras palabras un tarro de Leche específico solo puede estar en un lugar físico a la vez, pero el producto genérico “Leche” obviamente puede estar en varias bodegas) ¿Cómo solucionamos el tema de la relación varios a varios que se produce entre Productos-Bodega y entre Productos-Ventas? Se debe generar una tabla enlace para cada par de relaciones. Se creará una tabla enlace llamada Detalle Bodega y otra llamada Detalle Ventas ¿Cómo quedarían las relaciones gráficamente? Reorganización de los campos en las tablas Revisando los campos definidos para las tablas Ventas y Bodega en el punto II, vemos al definir las relaciones, que varios de ellos se podrán rescatar desde otras tablas y por lo tanto no es necesario que figuren como parte de la estructura de estas tablas. La tabla Ventas posee los campos: nombre cliente, dirección cliente, fono cliente, ciudad y región que pueden ser rescatados desde la tabla Clientes, a través del código cliente y también posee el - - 65 UNIDAD I BASE DE DATOS campo nombre de producto, que puede ser rescatado desde la tabla productos a través del código de producto por lo tanto no necesitan ser incorporados en la tabla. Su redefinición será: Tabla Ventas Campos: código de venta, fecha de venta, código cliente, código del producto, cantidad vendida y toltal de venta. En la Tabla Bodega, podemos rescatar el nombre del producto, desde la tabla Producto, a través del código de producto. Su redefinición será: Tabla Bodega Campos: Código de bodega, nombre de bodega, ciudad, región, dirección bodega, código de producto, cantidad de productos. Conclusión: Con este análisis, ya podríamos estar en condiciones de utilizar Access en la creación de tablas, consultas, formularios e informes. Esto no quiere decir que el ejercicio esté totalmente resuelto, puesto que los campos en las tablas y las relaciones entre ellas deben estar sujetos a revisión constante para no generar errores en la información que más tarde se almacenará en ellas. - - 66 UNIDAD II TABLAS Tablas Una tabla almacena los datos sobre un tema específico, como en una lista telefónica, o en una cartera de clientes. La información dentro de las tablas está organizada en columnas y filas. Cada columna representa un campo y cada fila un registro de la tabla. Campos Los datos que contienen un mismo tipo de información, son agrupados en la tabla bajo un nombre. Este nombre es el campo. Por ejemplo, los campos que podrían formar la tabla con la lista telefónica, podrían ser: Nombre, Dirección, Fono y los de la tabla Cartera de Clientes podrían ser Nombre, N_cuenta, Fono, Saldo. Registro El registro agrupa la información asociada a un elemento de un conjunto y está compuesto por campos. Campos Clave o Campo Principal: Los campos claves se utilizan en las tablas para identificar un único registro y también para establecer una relación entre una tabla y otra. Al identificar un campo como clave principal lograremos que los datos almacenados en él no puedan repetirse. Ejemplos de campos clave pueden ser: Rut, Código_producto, Id_empleado. Tipos de Datos El tipo de dato de un campo, determina el tipo de valor que puede ser guardado en él. Si por ejemplo declaramos un campo de tipo numérico, no podríamos almacenar un texto en él. Los tipos de datos que existen en Access son: Texto Admite cualquier texto, caracter o número con el que no se tenga que realizar una operación matemática posteriormente. Un campo así definido acepta un máximo de 255 caracteres Memo Admite los mismos valores, con las mismas características dadas en el tipo texto. Se diferencia de este tipo porque permite un mayor número de caracteres, hasta 65.535 Numérico Admite números utilizados para cálculos matemáticos. Dependiendo del rango de números que desea ingresar en el campo, será el tipo que deberá seleccionar. Las alternativas de tipo numérico son: - - 67 UNIDAD II TABLAS Byte Almacena números entre 0 y 255 (no admite fracciones). Entero Almacena números entre –32.768 y 32.767 (no admite fracciones) Entero largo (El tipo numérico que se asigna por defecto) Almacena números en un universo superior al tipo entero (no admite fracciones) Simple Almacena números reales entre –3,402823E38 y –1,401298E–45 para valores negativos, y entre 1,401298E–45 y 3,402823E38 para valores positivos. Doble Almacena números reales en un universo mayor al tipo Simple. Utilizado principalmente para cálculos científicos Id. de réplica Identificador global único Fecha/Hora Valores de fecha y hora para los años del 100 al 9999. Moneda Valores de moneda y datos numéricos utilizados en cálculos matemáticos en los que estén implicados datos que contengan entre uno y cuatro decimales. Autonumérico Número secuencial (incrementado de uno a uno) único, o número aleatorio que Microsoft Access asigna cada vez que se agrega un nuevo registro a una tabla. Sí/No Valores lógicos que pueden contener sólo dos estados (Sí/No ó Verdadero/Falso) Objeto OLE Objeto (como por ejemplo una hoja de cálculo de Microsoft Excel, un documento de Microsoft Word, gráficos, sonidos u otros datos binarios) vinculado o incrustado en una tabla de Microsoft Access. Hipervínculo Texto o combinación de texto y números utilizada como dirección de hipervínculo. Asistente para búsquedas Crea un campo que permite elegir un valor de otra tabla o de una lista de valores mediante un cuadro de lista o un cuadro combinado Crear Tablas Como se mencionó en un comienzo, es en las Bases de Datos donde se almacena, organiza y rescata información de un mismo tipo, información que deberá ser dividida y almacenada en tablas para luego poder consultarla. De tal manera que lo primero que se debe crear es la Base de Datos y en seguida las tablas. Es por esta razón que al iniciar Access, el programa solicita, mediante esta ventana: - - 68 UNIDAD II TABLAS la creación (con o sin asistente) o apertura de una base de datos. Como estamos definiendo cómo crear una tabla, asumiremos que la base no ha sido creada y partiremos, creando la base y luego la tabla. 1. Inicie Access, y de la ventana, escojae Base de datos en Blanco 2. Almacene la base La base se creará en la carpeta y unidad señalada y dará paso a la siguiente ventana: 3. La ficha tablas es la ficha predeterminada. Cree la tabla haciendo click en el botón Nuevo. 4. en la ventana: - - 69 UNIDAD II TABLAS seleccione Vista diseño. 5. En la nueva ventana, deberá definir la estructura que tendrá tu tabla: nombres y tipos de campos, descripción, propiedades. Por cada tipo de campo, se despliega una lista de propiedades asociadas. Puede obtener una descripción de ellas haciendo click en el recuadro de la propiedad. Al hacerlo, se desplegará un texto explicativo al costado derecho. Si prefiere una explicación más detallada, presione la tecla de función F1. 6. Complete con la información necesaria - - 70 UNIDAD II TABLAS 7. Si quiere definir una clave principal (campo único, con el que se relacionará esta tabla con otras), haga click sobre el campo y luega haga click en el botón de clave principal . No es necesario definir una clave principal, pero de todos modos, si no la asigna, Access se lo recordará al momento de almacenar 8. Almacene su tabla. La creación de la tabla es una etapa muy importante en el diseño de una Base de datos y su estructura no debería sufrir modificaciones una vez almacenada la información en ella. Sin embargo, todo es perfectible y por lo tanto su estructura puede ser modificada. Lo importante aquí es que ojalá esta modificación se realice cuando la base se encuentre con escasa o ninguna información. Modificar Estructura de la Tabla: Las tablas diseñadas aparecen listadas en la ficha Tabla, tal como se muestra en esta ventana. Por lo tanto, si desea modificar la estructura: 1. Haga click sobre el nombre de la tabla 2. Haga click en el botón Diseño 3. Haga los cambios que estime convenientes y luego almacene la tabla Otra forma de realizar modificaciones a la estructura es haciendo doble click sobre el nombre de la tabla y cambiar a la vista de diseño a través del botón de datos a vista diseño y viceversa. - - . El que permite cambiar de vista hoja 71 UNIDAD II TABLAS Ingreso de información a la tabla Una vez definida la estructura, estará en condiciones de ingresar información en la tabla. Si la tabla está abierta, deberá verificar que está en la vista Hoja de Datos , de lo contrario se cambia a ese modo a través del botón . Si la tabla está cerrada, acceda a completar o modificar la información con doble click sobre su nombre. Si es la primera información que será registrada en la tabla, al abrirla ésta se mostrará con un registro en blanco y los nombres de los campos como cabeceras de columnas, de una forma similar a esta ventana: Nombres de campos Número de registros en la Tabla Cuando comienza a ingresar información aparece el indicador de edición de datos izquierdo del registro. Aparece también el indicador de fin de archivo al costado Agregar o eliminar Registros Para agregar registros a la tabla: 1. Haga click en agregar registro de la barra de herramientas. Para eliminar registros: 1. Selecciónelos 2. Haga click en eliminar registro de la barra de herramientas Agregar o Eliminar campos Es posible que exista un campo en la estructura de la tabla, que desee eliminar definitivamente. Si este es el caso, puede eliminarlo desde la vista diseño o desde la vista hoja de datos. En vista Diseño: 1. Despliegue el menú contextual del campo a eliminar (esto es, hacer click con botón secundario del mouse, apuntando sobre el campo) 2. Elija eliminar filas - - 72 UNIDAD II TABLAS En vista Hoja de Datos: 1. Seleccione la columna el campo 2. Despliegue menú contextual 3. Seleccione eliminar columnas Una vez ingresada la información en la tabla, podrá realizar diversas operaciones con los datos allí almacenados, como ordenarlos por algún campo, cambiar las posiciones de las columnas, ocultar columnas, filtrar información, etc., todo de un modo muy simple. Cambiar de Posición una columna 1. En la vista Hoja de Datos, seleccione, haciendo click, en el encabezado de la columna que desea mover. 2. Arrastre a la nueva posición. Una línea vertical aparecerá para ayudarle en la ubicación. Donde quede ésta se insertará la columna. Ocultar columnas 1. Seleccione la(s) columna(s) que desea ocultar 2. Siga la secuencia de menú Formato/ocultar columnas Mostrar columnas ocultas 1. Siga la secuencia de menú Formato/mostrar columnas 2. Active la casilla frente a la(s) columna(s) que desea mostrar 3. Haga click en Cerrar Ordenar datos 1. Haga click en alguna celda de la columna por la cual desea ordenar los datos, o seleccione directamente la columna haciendo click en su nombre 2. Haga click en el botón de orden Ascendente herramientas o Descendente en la barra de Filtros Una vez ingresada la información a las distintas tablas, será relativamente sencillo rescatar aquellos registros que son de nuestro interés. A esta operación de selección de registros se le conoce como filtros, los que actúan sobre la tabla, mostrando los registros de interés y ocultando aquellos que no lo son. Para realizar la operación, esta aplicación necesita conocer el criterio de filtrado, es decir, la condición necesaria para la selección de los registros (todas las personas de un mismo país, las ventas que superen los montos de 500 dólares, todos los clientes morosos, etc.) La siguiente es una descripción de uso de filtro simple, que consiste en seleccionar aquellos registros cuyos campos coincidan con la información que estoy apuntando. Para establecer un filtro simple: 1. En la Vista Hoja de Datos, haga click sobre el dato que establecerá el criterio de filtrado. 2. Pulse el botón de filtro por selección Si quiere volver a ver toda la información, pulse el botón de aplicar/quitar filtro - - 73 UNIDAD II TABLAS Importar /vincular Tablas En más de una ocasión necesitará recuperar datos externos a la Base de Access. Microsoft Access acepta casi cualquier formato de datos en la importación: archivos de hojas de cálculo como Excel o Lotus 1-2-3, una archivo de texto, un archivo diseñado en una base distinta a Access como Dbase IV, Paradox, SQl server. La forma que tiene de trabajar con estos datos externos es importándolos o vinculándolos. Si los importa, los datos quedan registrados en una tabla nueva y formarán parte de la actual base de Access Si los vincula, mantiene el formato original del archivo y accede a los datos sin que éstos estén en la Base de Access Usted debe elegir cómo trabajará con los datos externos, si importándolos o vinculándolos. Si los datos estarán siendo usados permanentemente sólo por Access, es mejor importarlos, ya que será más fácil su manejo y la modificación de estructura si fuese necesario. Si los datos son actualizados por un programa externo, es mejor vincularlos. Para vincular o importar datos externos a la base de Access: 1. Elija obtener datos externos del Menú archivo 2. Seleccione importar o vincular tablas según su requerimiento 3. Defina el tipo de archivo en el recuadro respectivo y luego seleccione el archivo a vincular o exportar 4. Siga los pasos del asistente para concluír la obtención de los datos - - 74 UNIDAD III RELACIONES ENTRE TABLAS La siguiente Etapa en la creación de la Base, es la de definir las relaciones entre las tablas. Con las tablas cerradas y en la ficha tablas de la base de datos: 1. Haga click en el botón relaciones de la barra de herramientas, o seleccione la secuencia de menú Herramientas/relaciones Una ventana como la siguiente, le mostrará todas las tablas existentes en su base. 2. Haga click en las tablas que desea relacionar y agréguelas a la ventana de relaciones a través del botón Agregar. Observe que la ventana muestra la ficha Consulta, esto significa que también podemos establecer relaciones entre los registros de consultas, tema que será visto más adelante en esta unidad. En el área de relaciones, se insertarán las tablas y se mostrarán los campos existentes en ellas. 3. Haga click en el campo principal de la primera tabla y arrástrelo al campo externo de la otra tabla (en general el mismo nombre de campo), para establecer la relación entre ambos. Se desplegará una ventana mostrando los nombres de las tablas relacionadas y el campo utilizado para esta relación. La ventana también muestra en forma automática el tipo de relación que se está estableciendo (uno a varios, varios a varios, uno a uno) - - 75 UNIDAD III RELACIONES ENTRE TABLAS 4. Si se requiere, active la casilla Exigir Integridad Referencial 5. Haga click en Crear. Integridad Referencial La integridad referencial es un sistema de reglas que utiliza Microsoft Access para garantizar que las relaciones entre los registros de tablas relacionadas son válidas y que no se eliminan ni modifican accidentalmente datos relacionados. Puede establecer la integridad referencial cuando se cumplen todas las condiciones siguientes: Ambas tablas pertenecen a la misma base de datos de Microsoft Access. Si las tablas son tablas vinculadas, deben ser tablas en el formato de Microsoft Access y debe abrir la base de datos en la que están almacenadas para poder establecer la integridad referencial. La integridad referencial no puede exigirse para tablas vinculadas procedentes de bases de datos en otros formatos. Cuando se exige la integridad referencial, deben observarse las reglas siguientes: No puede introducir un valor en el campo de clave externa de la tabla relacionada que no exista en la clave principal de la tabla principal. No obstante, puede introducir un valor Nulo en la clave externa, especificando que los registros no están relacionados. Por ejemplo, no puede tener un pedido asignado a un cliente que no existe, pero puede tener un pedido asignado a nadie mediante la introducción de un valor Nulo en el campo Id. de cliente. No puede eliminar un registro de una tabla principal si existen registros coincidentes en una tabla relacionada. Por ejemplo, no puede eliminar un registro de empleados de la tabla Empleados si existen pedidos asignados al empleado en la tabla Pedidos. No puede cambiar un valor de clave principal en la tabla principal si ese registro tiene registros relacionados. Por ejemplo, no puede cambiar el Id. de un empleado en la tabla Empleados si existen pedidos asignados a ese empleado en la tabla Pedidos. - - 76 UNIDAD IV CONSULTAS Otra de las finalidades de organizar los datos en las tablas de una base, es la posibilidad de rescatar la información precisa de una o de varias de ellas. Esta operación puede resultarle familiar, ya que se utilizó con anterioridad en la selección simple de registros a través de la modalidad de filtros. Las consultas son filtros más avanzados, que mediante preguntas relativas a los datos almacenados en una o más tablas e incluso en otras consultas, es posible obtener las respuestas (o información) requerida. Estas respuestas se muestran en una Hoja de Datos temporal llamada Hoja Dinámica (Dynaset). Las consultas se generan básicamente en 3 pasos: Elección de las tablas, selección de los campos y definición de criterios de selección y clasificación de los campos. A continuación, detallaremos el modo general de trabajar con consultas: 1. Haga clic en la ficha Consultas de la ventana de Base de Datos 2. Haga click en Nuevo 3. Haga click en Vista Diseño y seleccione Aceptar. 4. Desde el cuadro Mostrar Tabla Elija la(s) tabla(s) o consulta(s) de la cuales rescatará información, seleccionando primero el nombre y luego pulsando agregar. Si su consulta se basa en más de una tabla, repita este punto tantas veces sea necesario. 5. Cierre el cuadro Mostrar Tabla Se desplegará una ventana similar a la que se muestra a continuación: - - 77 UNIDAD IV CONSULTAS La ventana de la consulta está dividida en 2 partes: Un área que muestra las listas de tablas y consultas desde las cuales rescataremos la información Un área que muestra una cuadrícula llamada QBE En la cuadrícula se pueden observar varias filas: Campo: Esta fila contiene los nombres de los campos. Puede agregar campos a cada una de las columnas existentes en la cuadrícula arrastrándolas desde la tabla o consulta de la lista de arriba. También puede cambiar un campo de la cuadrícula, seleccionando desde la lista descendente que aparece al hacer click sobre el campo. Tabla: Muestra el nombre de la tabla o consulta que proporciona el campo Orden: Permite clasificar, por ese campo, los registros de la Hoja Dinámica, en forma ascendente o descendente Mostrar: Permite Definir si se muestra o no ese campo en la Hoja Dinámica Criterio: Especifica los criterios que se utilizarán para seleccionar registros y mostrarlos en la hoja dinámica - - 78 UNIDAD IV CONSULTAS 6. Determine la información requerida en la cuadrícula QBE. Quizás usted necesite mostrar todos los registros contenidos en las tablas, y en ese caso, sólo debe arrastrar desde las tablas a la cuadrícula, los campos de su interés. Pero si su deseo es rescatar no toda la información de las tablas sino que aquellas que cumplan determinada condición entonces, en la cuadrícula, deberá indicar un criterio de consulta. Determinación de Criterios de Selección: El criterio de selección se establece en la fila criterio, bajo el campo respectivo. Si está consultando registros para campos que contienen valores específicos, escriba el valor. Si consulta registros para campos que contienen texto específico, escriba el texto. En un criterio puede usar operadores de comparación (>, <, >=, <=, <>, =), si quiere por ejemplo mostrar todos los registros de productos cuyas ventas superaron las 1000 unidades, esto es, en la fila criterios y bajo el campo unidades_vendidas, puedes escribir “>1000”. También puede usar los operadores lógicos (y, o, no), por ejemplo: podrías querer mostrar todos los registros de los países proveedores, menos los de Uruguay, esto es, bajo el campo país y en la fila criterio, debera escribir la expresión “no(uruguay)”. También puede usar los comodines como parte de su expresión de criterio. Uso de caracteres comodín ( ?, *) Los caracteres comodín permiten reemplazar uno o más caracteres en las entradas de registros. Puede utilizarlos en las expresiones basadas en texto o fechas. El ?, reemplaza un solo carácter en la posición del signo de interrogación y el carácter *, reemplaza cualquier número de caracteres en la posición del asterisco. Por ejemplo: la expresión B*, puede utilizarse en la fila de criterio del campo País, para localizar todos los países cuyo nombre comience con una B, o bien, la expresión 15/??/02, se podría agregar a la fila de criterio, bajo el campo Fecha de envío, para mostrar todos los registros de envíos realizados el día 15 de cualquier mes del año 2002. 7. Ejecute la consulta, haciendo click en el botón ejecutar de la barra de herramientas Access admite 4 tipos principales de consultas: Consultas de Selección, Consultas de parámetros, Consultas de Tablas de Referencias Cruzadas, Consultas de Acción. Consultas de Selección Este es el tipo de consulta que se acaba de utilizar en la descripción de creación de consultas. Es el tipo de consulta más común. Utiliza los datos contenidos en una o más tablas y genera una hoja de datos con la información. También puede utilizar una consulta de selección para agrupar los registros y calcular sumas, cuentas, promedios y otros tipos de totales. Campos calculados Además de los campos propios de las tablas o consultas involucradas en la consulta, pueden establecerse campos calculados que son producto de operaciones con otros campos. Generalmente estos cálculos se basan en campos de fechas y números. - - 79 UNIDAD IV CONSULTAS Para definir un campo calculado: 1. Haga click en la fila de campos en una columna en blanco de la cuadrícula QBE 2. Determine el nombre que tendrá el nuevo campo, seguido de dos puntos ( : ). (si no realiza esta asignación, Access lo hará por usted, introduciendo el nombre Expr#, donde # representa un número natural que comienza en 1 y que se va incrementando a medida que se agregan nuevos campos calculados a la cuadrícula) 3. Escriba la expresión que generará el cálculo. Los nombres de campos involucrados en el cálculo deben ser escritos entre corchetes [ ]. Por ejemplo: Expr1:[ventas_producto]*[precio_producto] Uso de Totales A menudo necesitará agrupar la información de registros y obtener resúmenes de ella (total ventas por productos, total de pedidos por país, promedio de ventas). Para poder obtener esta información, debe agregar la línea Totales a la cuadrícula QBE. Utilice totales siguiendo estos pasos: 1. En la ventana de Consultas, haga click en el botón de totales de la barra de herramientas En la fila Totales, cada cuadro aparecerá con la asignación “Agrupar por” 2. Mantenga esta asignación bajo el campo por el cual ha determinado agrupar los datos. 3. Bajo el campo donde se efectuará el resumen, haga click en la fila Totales y de la lista descendiente, seleccione la operación a realizar. 4. Elimine los campos restantes. 5. Ejecute la consulta En este ejemplo, se ha agrupado la información por categoría y se cuenta el número de productos que en ella existen. - - 80 UNIDAD IV CONSULTAS La hoja dinámica mostrará el resultado de esta consulta: Consultas de Parámetros Una consulta de parámetros es una consulta que, mientras se ejecuta, solicita los criterios de selección a través de un cuadro de diálogo, para rescatar los registros respectivos. En el siguiente ejemplo, se ha establecido un criterio en el campo categoría, para que mientras se ejecute la consulta, se solicite ingresar el nombre de la categoría y de este modo obtener sólo los registros cuyos datos corresponden a esa categoría. Al ejecutar la consulta aparece el cuadro de diálogo: - - 81 UNIDAD IV CONSULTAS supongamos que ingresamos la categoría Bebidas. La Hoja dinámica mostrará entonces: Consultas de tablas de Referencias Cruzadas Una consulta de tabla de referencias cruzadas muestra valores resumidos (sumas, cuentas y promedios) de un campo de una tabla y los agrupa según un conjunto de hechos enumerados en el lado izquierdo de la hoja de datos y otro conjunto de hechos enumerados en la parte superior de la hoja de datos. Tiene una distribución similar a la tablas dinámicas de Excel. Consultas de acción Una consulta de acción es una consulta que realiza cambios a muchos registros en una sola operación. Existen cuatro tipos de consultas de acción: de eliminación, de actualización, de datos anexados y de creación de tabla. Consulta de eliminación Elimina un grupo de registros de una o más tablas que cumplan un criterio definido. Se sugiere crear siempre una consulta de selección para ver cuáles son los registros que serán eliminados y luego generar la consulta de eliminación. Elimine registros con una consulta de este tipo, siguiendo estos pasos: 1. Genere una consulta de selección para asegurarse que los registros seleccionados sean los que efectivamente quiere eliminar 2. Elija Vista Diseño si no está allí 3. Elija Consulta de eliminación desde el menú consulta 4. Ejecute la consulta 5. Si está seguro de eliminar los registros, seleccione Sí, de lo contrario seleccione No - - 82 UNIDAD IV CONSULTAS Consulta de actualización Este tipo de consulta realiza cambios globales a un grupo de registros de una o más tablas. Por ejemplo, puede aumentar los precios un 10 por ciento para todos los productos de la categoría lácteos o bien puede aumentar los sueldos un 5 por ciento al personal de un determinado departamento. Con una consulta de actualización, puede cambiar los datos de las tablas existentes. Para crear una consulta de actualización 1. Genere una consulta de selección para mostrar los registros sobre los que actualizará la información 2. Seleccione Vista Diseño 3. Elija consulta actualización en el menú consulta 4. Access agrega la fila Actualizar a la cuadrícula QBE. En ella y bajo el campo respectivo, escriba la expresión que represente el cambio que realizará. 5. Ejecute la consulta y responda sí al cuadro de diálogo que muestra Access. Ejemplo: La ventana muestra el precio de los productos de la categoría lácteos: En vista diseño y habiendo seleccionado consulta actualización en el menú consulta, aumentaremos en un 10%, el precio de los productos de la categoría lácteos. En la línea Actualizar de la cuadrícula QBE y bajo el campo PrecioUnidad, escribimos: [PrecioUnidad]*1.1. - - 83 UNIDAD IV CONSULTAS Los datos se actualizarán al ejecutar la consulta y quedarán de este modo: Consulta de datos anexados Agrega un grupo de registros de una o más tablas al final de una tabla. Por ejemplo, supongamos que consigue nuevos clientes y una base de datos que contiene una tabla con información acerca de estos clientes. Para evitar tener que escribir toda esta información, desea anexarla a la tabla Clientes Para añadir registros a una tabla: 1. Genere una consulta de selección en la tabla que contiene los registros que desea traspasar (copiar) 2. Una vez seguro de haber seleccionado los datos correctos, seleccione la vista diseño. 3. Elija consulta de datos anexados en el menú Consulta 4. En la ventana anexar, seleccione la tabla donde se añadirán los registros seleccionados. 5. Ejecute la consulta 6. Access muestra un cuadro de información respecto a la cantidad de registros que se añadirán a la otra tabla. 7. Seleccione Sí. Consulta de creación de tabla Crea una tabla nueva a partir de todos o de parte de los datos de una o más tablas. 1. 2. 3. 4. 5. 6. Genere una consulta de selección con los criterios de selección respectivos Cambie al modo Vista Diseño Seleccione consulta de creación de tablas desde el menú consulta Asigne un nombre a la nueva tabla y acepte Ejecute la consulta Acepte los mensajes emergentes. - - 84 UNIDAD V FORMULARIOS Los formularios en Access son utilizados para mostrar o introducir información de tablas o consultas, con un formato mucho más atractivo que el ofrecido por éstas. Un formulario bien diseñado, facilita el trabajo de usuarios inexpertos para el ingreso, edición y muestra de información. La forma más rápida de generar un formulario es: 1. Seleccionando la tabla o consulta en la que se basará el formulario 2. Haciendo click en el botón Autoformulario de la barra de herramientas. Otra forma de diseñar un formulario es a través del Asistente: 1. Haga click en la ficha Formularios 2. Haga click en Nuevo 3. Elija la tabla o consulta en la cual desea basar el formulario 4. Haga click en Asistente para formularios 5. Haga click en Aceptar 6. Siga las instrucciones del asistente Si desea ser más específico o incorporar otros objetos al formulario, diséñelo usted mismo, manualmente: 1. Haga click en la ficha Formularios de la ventana de Base de Datos 2. Haga click en Nuevo 3. Elija la tabla o consulta 4. Haga click en Vista Diseño y luego en aceptar. Aperecerá la ventana de Formularios: Area de diseño del formulario Cuadro de Herramientas Cuadrícula Tabla Seleccionada - - 85 UNIDAD V FORMULARIOS Si la tabla o consulta seleccionada para el formulario no aparece en la ventana de formulario, selecciónela desde el menú Ver/Lista de campos, o haga click en el botón de Lista de campo de la barra de herramientas. Así mismo, puede activar o desactivar el cuadro de herramientas de la barra de herramientas. en el menú Ver, o hacer click en el botón Para organizar los campos en el área de formulario, arrástrelos desde la lista de campos. Cada objeto en el área de diseño de formulario tiene sus propias propiedades, las que pueden ser vistas seleccionando el objeto y haciendo click en el botón de propiedades Ejemplo de Formulario: Se describe a continuación, la creación paso a paso, de un formulario que permita, ver, modificar y agregar registros a una tabla de clientes. 1. Se hace clic en la ficha Formularios de la ventana de Base de Datos 2. Se selecciona Vista Diseño y se indica la tabla base del formulario (clientes) - - 86 UNIDAD V FORMULARIOS 3. Desde la Lista de Campos, en la ventana de formulario, se arrastra cada uno de los campos de la tabla. No es necesario arrastrarlos todos, pero si se usa el formulario para agregar nuevos registros, la información debe contemplar todos los campos. La ventana tendrá este aspecto: ¡Ya está listo el formulario! - - 87 UNIDAD V FORMULARIOS Veámoslo en la Vista Formulario, para observar su aspecto. Se muestra el primer registro (de un total de 91) de la tabla Clientes. Vamos a cambiar el formato de fondo, incorporar objetos de diseño y reubicar los campos, para una visión más atractiva. 1. Volvamos a la Vista Diseño 2. Reubicaremos los campos, seleccionándolos y arrastrándolos a la nueva posición. Una mano negra abierta indicará que se mueve nombre y contenido de campo. Si sólo movemos el nombre o sólo el campo, debemos apuntar en el extremo superior izquierdo de éste. Una mano negra indicará con el índice, que se moverá sólo ese objeto. 3. Ahora dibujaremos un rectángulo tras los campos. Seleccione el botón desde el cuadro de herramientas y en el área de diseño del formulario, arrastramos diagonalmente desde el extremo superior izquierdo hasta el extremo inferior derecho del rectángulo que deseamos formar. 4. Desplegamos menú contextual del objeto ractángulo (click derecho apuntando sobre él) y seleccionamos, color de fondo (celeste) y efecto de relleno especial (un cuadro con sombra). Si el rectángulo oculta los campos de la tabla, deberemos seleccionarlos, cortarlos y pegarlos nuevamente. Con estos simples cambios, nuestro formulario tendrá este aspecto: - - 88 UNIDAD V FORMULARIOS Hasta el momento, hemos mostrado información de la tabla clientes y podemos editarla también (modificar datos). Si deseamos ver otro registro en la tabla, utilizamos el control de desplazamiento en la vista formulario Primer registro Nuevo Registro Registro anterior Último registro Registro siguiente - - 89 UNIDAD V FORMULARIOS Creación de Botones de Comando ................................................................................................................................................................................ Tal vez, sea más atractivo, diseñar un tipo de botón de acción para avanzar y retroceder entre registros. Crearemos dos botones, uno para ir al registro anterior, y el otro para ir al registro siguiente: 1. Seleccionamos el botón de acción en el cuadro de herramientas 2. Dibujamos el tamaño (rectángulo) del botón 3. El asistente de botones de comando, nos lleva a la ventana donde seleccionaremos la acción: 4. Seleccionamos, ir al registro anterior y pulsamos siguiente 5. En la siguiente ventana, elegimos el nombre o imagen representativa de la acción del botón. En esta oportunidad se selecciona la imagen que señala a la izquierda y luego se pulsa siguiente. - - 90 UNIDAD V FORMULARIOS 6. Asignamos ahora un nombre representativo al botón y luego pulsamos terminar. Del mismo modo, creamos un botón para ir al siguiente registro y nuestro formulario tendrá este aspecto (en la vista formularios): La alternativa de avanzar registro a registro no es muy práctica cuando se quiere ir a un registro específico. En esos casos, resulta más cómodo y útil, buscar el registro y dirigirnos directamente a él. Con estos pasos crearemos un botón con estas características: 1. 2. 3. 4. 5. En la vista Diseño, seleccionamos un botón de comando y dibujamos su tamaño. En la siguiente ventana, elegimos la acción buscar registro y pulsamos siguiente. Elegimos la imagen Binoculares1 Asignamos al botón, el nombre Búsqueda Pulsamos Terminar - - 91 UNIDAD V FORMULARIOS El formulario tendrá ahora este aspecto: Para hacer uso de este botón: 1. En la vista formularios, debemos hacer click sobre el campo por el que se realizará la búsqueda. 2. Luego hacemos click en el botón de búsqueda y desplegará esta ventana: 3. En el cuadro vacío frente al texto Buscar:, escriba el texto o valor buscado. En este ejemplo se busca por país y el que se quiere encontrar es Suecia. En el recuadro Coincidir, tiene la alternativa de hacer coincidir todo el texto escrito con el campo buscado o sólo una parte de él. 4. Pulse en el botón Buscar primero para encontrar el primer registro coincidente o bien, pulse Buscar siguiente para los restantes registros coincidentes. Como los formularios permiten, ver, buscar, editar, imprimir y eliminar información en la tabla, podríamos agregar un botón de eliminación de registros: 1. En la Vista Diseño, seleccionamos un botón de comando 2. Desde la ventana de asistente, se elige la acción eliminar registro 3. Escogemos la imagen Papelera1 4. Asignamos el nombre Eliminación 5. Pulsamos terminar. - - 92 UNIDAD V FORMULARIOS Las operaciones en conjunto que pueden realizarse sería la de buscar un registro específico y luego eliminarlo. Al pulsar el botón de eliminación, Access consulta si estamos seguros de eliminar el registro. Finalmente incorporamos un botón para salir y cerrar el formulario: 1. En la Vista Diseño, insertamos el botón de comando 2. Definimos el tamaño del botón 3. Desde el asistente elegimos Operaciones con Formularios en el recuadro Categorías y Cerrar en el recuadro Acción 4. Seleccionamos la imagen Salir 5. Asignamos el nombre salida 6. Pulsamos Terminar. Nuestro Formulario tendrá este aspecto Final: - - 93 UNIDAD V FORMULARIOS Subformularios ................................................................................................................................................................................ Los creación de formularios que se ha definido responde a la información de una única tabla o consulta, sin embargo, en ciertas ocasiones, se puede necesitar crear un formulario que contemple datos de más de una tabla o consulta. En esos casos se usan subformularios (correspondiente al botón del cuadro de herramientas). La información contenida en el área de subformularios puede corresponder a formularios creados previamente, o bien, a formularios basados en Tablas o Consultas, generados en el mismo momento. En nuestro ejercicio, incorporaremos la tabla pedidos para representar, en un único formulario, los clientes y sus pedidos. El formulario respectivo de la tabla Pedidos, no ha sido diseñado aún, así es que se generará con el asistente de subformularios en el momento de insertarlo a nuestro formulario. Usando la Vista Diseño del formulario anterior: 1. Hacemos click en el botón de subformularios en el cuadro de herramientas 2. Dibujamos el rectángulo que abarcará el área del subformulario 3. En la ventana del asistente, seleccionamos la opción Tabla o consulta y pulsamos siguiente. 4. En la nueva ventana, elegimos la Tabla Pedidos, bajo el texto Tablas y Consultas 5. Incorporamos los campos: IdPedido, Idcliente, IdEmpleado y FechaPEdido, haciendo click sobre su nombre y pulsando el botón . Los campos seleccionados aparecerán al costado izquierdo, en el cuadro Campos Selecccionados. Pulsamos siguiente 6. En la ventana siguiente, el asistente pide definir el campo de la tabla Pedidos, que se vincula con la información del formulario principal (Tabla clientes). En este ejemplo, es el campo IdCliente el que vincula ambos formularios. El primer vínculo de lista es la selección que corresponde, pulsamos siguiente. - - 94 UNIDAD V FORMULARIOS 7. Asignamos un nombre al subformulario y pulsamos Terminar. - - 95 UNIDAD V FORMULARIOS Nuestro formulario se verá similar a esto: Si necesita realizar algún cambio en el subformulario, edítelo desde la ventana de Base de Datos, modifíquelo en la Vista Diseño, y almacénelo. Los cambios realizados en un subformulario se registrarán también en el formulario principal. - - 96 UNIDAD VI INFORMES Los informes representan la información impresa de los registros de una tabla o consulta. La forma de trabajar con informes es muy similar a la vista para formularios. Puede crear informes rápidos, guiados por el asistente o simplemente diseñarlos manualmente. A continuación se detallan los pasos para la generación de un informe en forma manual: 1. Desde la ventana de Base de Datos, seleccione la ficha Informes 2. Haga click en Nuevo 3. Seleccione la Vista Diseño y determine la tabla o consulta que contiene la información que incorporará en el informe La ventana de informe será como esta: La ventana se subdivide en varias secciones: Encabezado de Informe : Pié de Informe : Encabezado de Página : Pié de Pagina : Encabezado de grupo : Pié de Grupo : Detalle : Texto que aparece sólo una vez, al comienzo del informe Texto que aparece sólo una vez, al final del informe Texto que aparece al comienzo del informe, en cada página de éste. Texto que aparece en la base de cada página del informe. Texto que aparece en la sección de detalles, al comienzo de cada grupo de registros en el informe Texto que aparece en la sección de detalles, al final de cada grupo de registros del informe Es el espacio físico donde se incorporarán los elementos a presentar en el informe 4. Desde la Lista de Campos, arrastre a la sección de detalle, aquellos que formarán parte del informe 5. Agregue cualquier sección necesaria para ordenar y agrupar el informe. Esta operación se realiza siguiendo la secuencia de menú Ver/ordenar y agrupar 6. Guarde el informe - - 97 UNIDAD VI INFORMES Tal vez resulte un tanto engorroso crear un informe manualmente. Si quiere, puede crear un informe con el asistente, siguiendo esta secuencia: 1. En la ventana de Base de Datos, seleccione la ficha Informe 2. En la ventana Seleccione Asistente para Informes y elija la tabla o consulta y pulse aceptar 3. En la siguiente ventana, elija los campos que incorporará en el informe, haciendo click sobre su nombre y pulsando el botón . Si necesita campos de otras tablas o consultas, seleccione éstas en el cuadro Tabla/Consultas e incorpore los campos respectivos, luego pulse siguiente. - - 98 UNIDAD VI INFORMES 4. Desde la siguiente ventana, elija la forma como deseas ver los datos y luego pulse siguiente. 5. De la ventana siguiente, escoja algún campo que le servirá para agrupar los datos a imprimir. Por ejemplo, si desea hacer un resumen de pedidos por cliente, deberá seleccionar el campo Idcliente. - - 99 UNIDAD VI INFORMES 6. En la nueva ventana, identifique el campo por el cual ordenará la información. Por ejemplo, puede querer mostrar la información de los productos solicitados por cada cliente y desear que los productos se muestren ordenados ascendentemente (A-Z), y en ese caso debe seleccionar el campo IdProducto como clave de su ordenación. 7. Si hace click en el botón Opciones de Resumen de esta ventana, tendrá la posibilidad de efectuar un cálculo para cada uno de los grupos generados en el informe. La ventana siguiente muestra estas alternativas. Una vez que defina el cálculo pulse aceptar para retornar a la ventana anterior - - 100 UNIDAD VI INFORMES 8. Al pulsar siguiente, aparecerá esta ventana: Seleccione en ella la distribución de los datos en el informe. Hacer una vista previa, pulsando cada una de las opciones, le ayudará en este paso. Defina también la orientación de la página y pulse siguiente. 9. Ahora debe definir el estilo, correspondiente al formato del informe. Luego pulse siguiente - - 101 UNIDAD VI INFORMES 10. En la nueva ventana, asigne el nombre al informe. Al terminar tiene la posibilidad de hacer una vista previa del informe o ir directamente al diseño para realizar modificaciones. Seleccione la opción que más le acomode y pulse terminar. Actividades... ................................................................................................................................................................................ Actividad12 Access (de carácter obligatorio) - - 102 Bibliografía ................................................................................................................................................ Microsoft Office 97 Integración Paso a Paso Editorial McGraw-Hill Access 2000 soluciones Edward Jones, Jarel M. Jones Editorial McGraw-Hill 2000 Microsoft Excel 5 para Windows Paso a Paso Catapult Inc. 1994 Office Profesional para Windows 95 García Núñez Pablo J. 1996 50 modelos financieros con Excel Medina Antonio 1993 Bases de datos relacionales Pretely, Nicholas Sitios Web www.geocities.com/SiliconValley/Program/6809/Ejercicios.htm www.tutoriales.com - - 103