LISTAS DE DATOS EXISTENTES

En el CAPÍTULO ANTERIOR trabajaste sobre proyecto de base de datos y empezaste la creación y configuración de la tabla DESCUENTO y de la tabla ZONAS. También descubriste nuevas funciones que contiene el tipo de datos número y aprendiste con los ejercicios. En este capítulo vamos a crear campos a partir de listas de datos existentes, es decir, que provengan de otra u otras tablas.
Como podemos observar, poco a poco, nos vamos adentrando en el mundo de las RELACIONES, es decir la unión de las tablas para cruzar la información.
CREACIÓN DE LISTAS CON DATOS DE OTRAS TABLAS
Hasta el momento dentro la tabla "CLIENTES" hemos creado una lista de datos que no provienen de ninguna parte, es decir, que esta lista solo está localizada dentro del campo donde la creamos.
El inconveniente de trabajar con las listas creadas en un campo es que para modificarlas tienes que ir al campo donde la creaste y cambiar los datos de la lista, con el inconveniente que cuando modificamos la lista solo servirán para registros nuevos, ya que no se actualizarán para los registros ya insertados. Un ejemplo de lo que hablo lo hemos visto en la tabla CLIENTES dentro del ejercicio 2.
Imaginemos por un momento que nuestra tabla tiene 10.000 registros y tenemos que modificar un valor de la lista. Para los nuevos registros no habría problema porque la lista sale modificada, pero para los 10.000 registros no saldría modificado el valor y tendríamos que cambiarlos uno a uno :(.
Evidentemente es un gran inconveniente el tener una lista dentro de un campo y solo es recomendable cuando la lista es INMÓVIL, es decir, que tenemos la seguridad de que no cambiará con el tiempo.
Por suerte access puede tener una lista dentro de un campo y que dependa de otras tablas. A esto se le conoce como CREAR LISTAS CON DATOS EXISTENTES. El sistema de creación es fácil, nos vamos a vista de diseño y en la columna tipo de datos seleccionamos "asistente para búsqueda". También se puede desde vista de tabla, basta con clicar sobre el campo "nuevo" que queremos crear la lista y escoger la misma opción.
1.- Sale el asistente de búsqueda y seleccionamos que busque los valores en una tabla o consulta. Le damos a siguiente.
2.- Una vez nos muestra las tablas y consultas de las que disponemos, (tenemos la opción de ver solo tablas o solo consultas o ambas) seleccionamos aquella que llevará la información de la lista. En nuestro caso lo aplicaremos a la tabla DESCUENTO. Le damos a siguiente.
3.- Acto seguido aparecen dos cuadros, el primero de los campos disponibles (aparecen los campos Id, Descripción y Descuento) y el otro cuadro refleja el o los campos seleccionados.
Para traspasar de campos de un cuadro a otro se utilizan los botones ">" o "<" (traspasar un solo campo) o bien "<<" o ">>" (traspasar todos los campos). En este caso traspasamos el campo Descuento. Le damos a siguiente.

4.- A continuación, es posible establecer el orden de los datos y el ancho de las columnas (pasos opcionales).

5.- Por último, ingresamos un nombre para el campo y pulsamos Finalizar. (por el momento dejaremos las opciones por defecto en el último cuadro).
6.- Access solicitará confirmación para realizar la lista y pulsamos Sí. Al desplegar la lista del campo, se mostrarán los valores almacenados en la tabla elegida, desde la vista Hoja de datos.

EJERCICIOS
Es momento de practicar todo lo que has aprendido hasta el momento.
EJERCICIO 9
En la tabla "CLIENTES" dentro del campo "Descuento" necesitamos que se cree una lista de opciones con los datos existentes del campo "Descuento" de la tabla DESCUENTO.
Una vez realizada la lista ingresar los siguientes valores que se muestran a continuación:

EJERCICIO 10
Resulta que en nuestra tienda tenemos una campaña de descuento que afecta a todos los clientes. Nos hemos vuelto locos y vamos a tirar la casa por la ventana subiendo TODOS los descuentos de cliente a un 7%.
Para hacer esto simplemente abre la tabla DESCUENTO y en vista tabla (sale por defecto al abrir la tabla) cambia todos los registros del campo "Descuento" al % indicado. Una vez hagas los cambios cierra la tabla y abre la tabla CLIENTES.
Observa bien el campo "Descuento", ¿Qué ha pasado?.

ORDENAR LOS DATOS EN UNA TABLA DE ACCESS
Como has podido observar en la tabla clientes en vista de tabla los registros se muestran desordenados, sin un orden lógico. Access permite poder ordenar los registros como nosotros queramos, y además ofrece varias funciones que siempre viene bien saber:
Sustituir datos:
Una operación muy común cuando trabajamos con bases de datos es la sustitución de la información almacenada en una tabla. Con esto, nos referimos a su modificación, ya sea tanto de carácter total como parcial. Este es un procedimiento muy sencillo y similar a lo que podríamos hacer en otros programas.
Para sustituir completamente un registro debemos seleccionarlo en la Vista Hoja de datos y escribir el nuevo dato (una manera rápida para seleccionar un registro completo es hacer doble clic sobre él).
En cambio, cuando la sustitución es parcial, seleccionamos solamente el fragmento que deseamos reemplazar e ingresamos el nuevo texto.
Organizar datos:
Organizar datos significa indicar un orden (ascendente o descendente) mediante el cual se visualizará la información ingresada en las tablas. Para ordenar los datos de un campo, debemos situar el cursor en una de sus celdas, ingresar en la ficha Inicio/Ordenar y filtrar y pulsar los botones Ascendente o Descendente.

Cuando ordenamos los registros de un campo, debemos tener en cuenta que los diferentes datos referentes a cada uno, es decir aquellos que se encuentran en la misma fila, respetan la concordancia, por lo tanto, no se mezclarán. Veremos que simplemente se reorganizaran.
Por último, el botón Quitar orden, que se encuentra en el mismo grupo Ordenar y filtrar, nos permitirá restaurar la ubicación original de los datos, es decir, aquella según la cual fueron ingresados en la tabla.
Buscar y reemplazar datos:
Para buscar datos dentro de una base de datos, debemos utilizar las opciones del grupo Buscar de la ficha Inicio:Buscar: abre el cuadro de diálogo que posibilita buscar registros en un campo determinado o en la tabla completa.
Reemplazar: permite sustituir un dato por otro tantas veces como se repita en la tabla.
Ir a: para desplazarnos por los registros a través de un listado de opciones.
Seleccionar: este comando permite seleccionar todos los registros de la tabla o aquel que se encuentre en la posición del cursor.
La búsqueda de datos es muy útil cuando la cantidad de registros es muy extensa, ya que permite hacerlo automáticamente.

01 Buscar: debemos escribir el valor que queremos encontrar en la tabla. 02 Reemplazar por: tenemos que ingresar el valor por el cual queremos reemplazar el término buscado. 03 Buscar siguiente: Access resaltará el primer registro que coincida con el texto ingresado. Cada vez que pulsemos este botón, se mostrarán las siguientes coincidencias en orden de aparición hasta llegar a la última. 04 Cancelar: cierra el cuadro de diálogo Buscar y reemplazar. 05 Reemplazar:: reemplaza la aparición actual que coincide con el término buscado. 06 Reemplazar todos: reemplaza todas las coincidencias con el término buscado. 07 Coincidir mayúsculas y minúsculas: al activar esta casilla, solo se detectará, como resultado de la búsqueda, el texto que coincida exactamente con las mayúsculas y minúsculas del texto escrito. 08 Buscar: para establecer si queremos buscar en todos los registros de un campo o solo hacia arriba o hacia abajo de un determinado dato. 09 Coincidir:: posee tres opciones. Cualquier parte del campo busca el texto indicado en cualquier parte del campo, sin importar si existe más texto en él. Hacer coincidir todo el campo encuentra el resultado que coincide exactamente con el valor del campo. Comienzo del campo busca una coincidencia solo en el comienzo del campo. 10 Buscar en: para determinar si realizar la búsqueda en el campo actual (donde se encuentra el cursor) o en el documento actual (en todos los campos). |
CREACIÓN LISTA DATOS TABLA "ZONAS"
Exactamente es seguir los mismos pasos que cuando hemos creado las listas de datos existentes de la tabla DESCUENTO. A parte de seguir todos los pasos, la lista va contener dos columnas, aunque solo se mostrará en el campo la columna que hemos escogido. Esto viene bien para cuando trabajamos con códigos y necesitamos una especie de ayuda en su definición pero no queremos que esa ayuda quede reflejada en el campo. Recordemos los pasos:
1.- Sale el asistente de búsqueda y seleccionamos que busque los valores en una tabla o consulta. Le damos a siguiente.
2.- Una vez nos muestra las tablas y consultas de las que disponemos, (tenemos la opción de ver solo tablas o solo consultas o ambas) seleccionamos aquella que llevará la información de la lista. En nuestro caso lo aplicaremos a la tabla ZONAS. Le damos a siguiente.
3.- Acto seguido aparecen dos cuadros, el primero de los campos disponibles (aparecen los campos Id, Descripción y Zonaventas) y el otro cuadro refleja el o los campos seleccionados.
Para traspasar de campos de un cuadro a otro se utilizan los botones ">" o "<" (traspasar un solo campo) o bien "<<" 0o ">>" (traspasar todos los campos). En este caso traspasamos primero el campo Descripción y después el campo Zonaventas. Le damos a siguiente.
4.- A continuación, es posible establecer el orden de los datos y el ancho de las columnas (pasos opcionales). En este caso desactivaremos la opción ocultar la columna clave y nos saldrá la columna a la que hemos puesto la clave principal.

5.- En el siguiente recuadro nos dice que columna deseamos utilizar en la base de datos, y escogemos la columna Zonaventas. Le damos a siguiente.

6.- Por último, ingresamos un nombre para el campo y pulsamos Finalizar. (por el momento dejaremos las opciones por defecto en el último cuadro).
7.- Access solicitará confirmación para realizar las listas de datos existentes y pulsamos Sí. Al desplegar la lista del campo, se mostrarán los valores almacenados en la tabla elegida, desde la vista Hoja de datos.

Y access lo que acaba de hacer es crear UNA RELACIÓN ENTRE TABLAS, es decir, que los datos están repartidos en diferentes tablas y esto empieza a ser peligroso a la hora de borrar alegremente cualquier campo, porque si borras datos relacionados puedes perder mucha información, y eso... da mucha rabia. Te lo digo por experiencia. :).
Access ha creado una relación de listas de datos existentes entre las tablas CLIENTES Y VENTAS y otra relación entre las tablas CLIENTES Y DESCUENTO. De esta manera lo muestra access:

EJERCICIOS DE REPASO
EJERCICIO 11
Sabíamos que esto iba a suceder, estaba claro que el ofrecer un descuento del 7% a todos los clientes iba a suponer un caos y claro, el director de la franquicia nos ha amonestado por hacerlo sin permiso. Así que para corregir el desaguisado en la carta de amonestación nos obliga a dejar los descuentos tal y como estaban.
Como dice el dicho "Donde manda patrón no manda marinero", toca corregir de nuevo los descuentos de la lista de fidelización. ¿Te acuerdas de cómo hacerlo?.
EJERCICIO 12
Soy una persona un poco "perfeccionista" y me fastidia mucho ver en nuestro proyecto de access como la tabla clientes está en minúscula y el resto en mayúscula. No lo soporto.
Así que para poder centrarme en cosas más importantes que en esas "pequeñas tonterías" vamos a poner en mayúsculas la tabla de CLIENTES.
¿Te acuerdas cómo hacerlo?.
EJERCICIO 13
Ahora que ya sabemos como asignar los porcentajes, es momento de asignar las zonas de ventas de donde provienen los clientes. Sigue el mismo patrón de la imagen siguiente:
¿CÓMO CONTINUAR?
En el CAPÍTULO ANTERIOR trabajaste sobre proyecto de base de datos creando y configurando la tabla DESCUENTO. Aprendiste a manejar los registros de las tablas. También creaste y configuraste la tabla de ZONAS y descubriste nuevas funciones que contiene el tipo de datos número y lo más importante de todo, aprendiste con los ejercicios.
En ESTE CAPÍTULO has aprendido a crear listas con datos existentes en otras tablas. Has realizado ejercicios para cambiar las listas de la tabla de datos origen y cambiar automáticamente las opciones en los campos sin tener que modificar las opciones de la tabla destino. Un capítulo muy importante que faltaba por aprender era sin duda la ordenación de los datos dentro de una tabla de access. Has aprendido también a crear una lista con dos columnas dentro de un mismo campo y por último has terminado con algunos ejercicios de repaso para que no se te olvide lo que hasta ahora has aprendido.
Ahora ya has aprendido todo lo que necesitas saber en concepto de las tablas en access y es momento de avanzar y empezar a conocer más funciones y seguir practicando.
Por tanto en este momento del tutorial tienes dos opciones:
1.- CAPÍTULO SIGUIENTE: Continuaremos creando las tablas del proyecto con las funciones que hasta el momento hemos aprendido. Es interesante seguir el tutorial debido a que hay ejercicios que son continuados siempre en base a nuestro proyecto marcado.
2.- LAS RELACIONES: Pasamos de nivel y nos adentramos en el fascinante mundo de las relaciones. Aprenderemos que una relación es un requisito básico para poder cruzar datos de distintas tablas.