Microsoft Access 2000 -...

260
Microsoft Access 2000 Autor: Jose 1 mailxmail - Cursos para compartir lo que sabes

Transcript of Microsoft Access 2000 -...

Page 1: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Microsoft Access 2000Autor: Jose

1

mailxmail - Cursos para compartir lo que sabes

Page 2: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Presentación del curso

En el manual se han tratado todos los aspectos relativos a Access 2000 quenecesitan conocer tanto el usuario novel como el operador más avezado.

En tal sentido, nada se ha omitido y nada se ha dado por sabido; todos los aspectosdel programa han sido explicados minuciosamente y a fondo.

Pero lo que resulta realmente importante destacar en esta breve introducción es queen la publicación se han analizado, además de las características más conocidas yutilizadas de anteriores versiones de Ac-cess (muchas de ellas mejoradas), todas lasnuevas e importantes prestaciones que se le han incorporado a esta novísimaversión, entre las que enumeraremos a continuación de estas líneas solamente lasmás destacables, pues hacerlo con la totalidad de las mismas excedería con mucholos límites habitualmente asignados a una introducción convencional.

2

mailxmail - Cursos para compartir lo que sabes

Page 3: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

1. Introducción

Acerca de Microsoft Access 2000

Microsoft Access 2000 es un sistema de administración de bases de datosrelacionales, diseñado es-pecialmente para ser utilizado bajo Windows 95/98.

Al comienzo del Capítulo 1 de esta publicación se dan las definiciones respecto delsignificado y al-cance de términos utilizados en las líneas anteriores, por lo que aesas líneas nos remitiremos en cuanto al detalle de las prestaciones del programa.

Sobre Access 2000 en sí diremos que la gama de tareas en las que puede aplicarsees prácticamente ilimitada; no hay actividad en la que no pueda utilizarse; desdeuna modesta agenda personal hasta la más sofisticada y compleja base de una granorganización empresaria pueden utilizarlo con notables ventajas.

Por tratarse de un sistema de administración de bases de datos relacionales, Accesspuede estable-cer relaciones entre, por ejemplo, una base de datos con informaciónsobre vendedores, con otra sobre productos vendidos y con una tercera sobreclientes. Por otra parte, es posible trabajar con una base de Access utilizándola enforma independiente o estableciendo vinculaciones con diferentes bases de datosexternas, como por ejemplo, las confeccionadas con dBase.

Finalmente, y cerrando esta bravísima enumeración, con Access 2000 resulta muyfácil colocar nues-tros datos en la Web, pues pueden crearse páginas para serconectadas en forma directa a una base de Access o de Microsoft SQL Server. Y hastapueden modificarse datos de la base colocada en la red por sus visitantes; porsupuesto, siempre que estuvieren dotados de la correspondiente autorización.

Acerca de este Curso de Access 2000

En el manual se han tratado todos los aspectos relativos a Access 2000 quenecesitan conocer tanto el usuario novel como el operador más avezado.

En tal sentido, nada se ha omitido y nada se ha dado por sabido; todos los aspectosdel programa han sido explicados minuciosamente y a fondo.

Pero lo que resulta realmente importante destacar en esta breve introducción es queen la publicación se han analizado, además de las características más conocidas yutilizadas de anteriores versiones de Ac-cess (muchas de ellas mejoradas), todas lasnuevas e importantes prestaciones que se le han incorporado a esta novísimaversión, entre las que enumeraremos a continuación de estas líneas solamente lasmás destacables, pues hacerlo con la totalidad de las mismas excedería con mucholos límites habitualmente asignados a una introducción convencional.

Diremos entonces que con Access 2000 podremos...

Trabajar en la nueva Barra de Herramientas de la ventana Base de datos.

Crear accesos directos que representen a los objetos de la Base.

Agrupar a los objetos de la base, de forma de poder tener en un mismo panel ungrupo llamado, por ejemplo, "Contactos", en el que dispondremos de accesosdirectos a las tablas, consultas, formularios e informes de nuestros contactos, conmiras a optimizar futuras gestiones de ventas.

3

mailxmail - Cursos para compartir lo que sabes

Page 4: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Aplicar un bloqueo por registros (anteriormente, el bloqueo se aplicaba por páginas,lo que significaba un sector de 4 Kb que podría contener, en consecuencia, muchosregistros) lo que nos permite diseñar sistemas compartidos más eficientes y conmenor tiempo de espera para los usuarios.

Establecer una relación uno a varios donde podremos crear una hoja secundaria enla que se muestren todos los registros de la tabla relacionada, correspondientes alregistro actual de la tabla principal.

Disponer de formatos condicionales, lo que nos permitiría, por ejemplo, mostrar enrojo los resultados correspondientes a valores negativos.

Crear una página Web que contenga campos de datos dotados de un control tipobarra, el que nos permitirá avanzar o retroceder de registro, ordenar en formaascendente o descendente y aplicar filtros por formularios.

4

mailxmail - Cursos para compartir lo que sabes

Page 5: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

2. Qué es una base de datos

Qué es Microsoft Access

Podemos definir a Microsoft Access 2000 (en adelante MS-Access ó Access) como unsis-tema de administración de bases de datos relacionales, diseñado especialmentepara ser utilizado bajo Windows 95/98. Veamos el significado de esta definición,mediante la descripción de sus componentes.

Qué es una base de datos

Una base de datos es una colección de informaciones o datos relacionados con untema particular. Todos los que hemos trabajado en los archivos de una oficina osimplemente consul-tando un libro en una biblioteca, sabemos en qué consiste unabase de datos "en cartulina"; un contenedor adecuado (fichero) en donde sedisponen una cantidad de tarjetas o fichas de manera que puedan revisarse confacilidad, y generalmente en un orden determinado (alfabético, por ejemplo).

Cada una de las tarjetas contiene datos sobre un determinado artículo (libros, en elcaso de la biblioteca) los que se ingresan de una manera prefijada y uniforme paratodas ellas (autor, títu-lo, número de catálogo, tema, cantidad de páginas, editorial,lugar y fecha de la impresión, por ejemplo).

Ahora bien, en las bases de datos electrónicas la información se ingresa, se guarda yse administra en computadoras mediante programas especializados, entre los quese destaca Ac-cess, objeto de este curso.

Bases de datos y ficheros manuales

Si necesitáramos ubicar un libro por su título, de estar las tarjetas en el ficheroordenadas al-fabéticamente por título, no tendremos que mirar cada una de lasfichas hasta encontrarlo.

Pero si lo que buscamos en ese fichero son los libros sobre un determinado tema,nos será preciso revisar el fichero en su totalidad para ubicarlos.

Siempre refriéndonos al fichero manual, podríamos dar una solución a esteproblema man-teniendo una copia del mismo ordenada por tema, otra por autor,etc., lo que nos obligaría a la tediosa tarea de actualizar todos y cada uno de estosficheros toda vez que se produzca una no-vedad.

Campos, registros, tablas y bases

Un campo es la pieza más pequeña de información de la que se compone una basede da-tos. Esta parte indivisible contiene un único dato, como por ejemplo unprecio, un tamaño, un nombre, etc.

Los campos se disponen en conjunto llamados registros. Un registro es, en medioselectró-nicos de almacenamiento, el equivalente a la ficha.

Del mismo modo que las fichas, cada registro está compuesto por los mismoscampos y en la misma disposición; sólo cambia el contenido, pero permaneceninvariables la longitud y la ubi-cación de cada uno de los datos en todos losregistros.

5

mailxmail - Cursos para compartir lo que sabes

Page 6: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Esta colección de registros idénticos en cuanto a su formato, se agrupa en Access enlo que se denomina una tabla, que es el equivalente del contenedor o ficheromanual. Por ejemplo, si el tercer campo del registro es el precio, todos los registrosde una misma tabla contendrán en ese lugar, distintos valores numéricoscorrespondientes al precio de cada producto o artículo.

La denominación de tabla se debe a su organización en forma de filas y columnas.Cada fila o renglón contiene los datos de un único registro, dispuestos uno al ladodel otro, por lo que, siguiendo hacia abajo, en cada columna encontraremos undeterminado campo de cada uno de los registros de la tabla.

Los nombres de los campos que aparecen al tope de la tabla, describen lainformación que contendrá cada uno de ellos, y nos sirven como medio para hacerreferencia al dato contenido en el campo.

Para aquellos lectores familiarizados con dBase III, dBase IV, FoxPro, etc. diremosque lo que llamamos tabla en Access, constituye una base de datos o archivo DBFen sistemas tipo dBase, aplicándose allí la misma modalidad de campos y registros.

Pero Access incorpora un nuevo concepto; el de la base de datos integral. Se tratade un ente que agrupa todo lo necesario para el manejo de la información referentea un determinado tema: tablas, formularios, índices de ordenamiento, relacionesentre los datos de las distintas ta-blas, informes, etc. que veremos en el resto deeste curso.

De hecho, podemos tomar todas las bases de un determinado sistema tipo dBase eincorpo-rarlas a una única base de datos Access, como lo veremos más adelante eneste curso.

6

mailxmail - Cursos para compartir lo que sabes

Page 7: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

3. Qué es un sistema de administración de bases dedatos relacionales

Se trata de un instrumento que nos permite ingresar, recuperar y manejar lainformación contenida en la base de datos. Entendemos por manejar, la posibilidadde ejecutar las siguientes operaciones, entre muchas otras:

Añadir nueva información a medida que ésta va ingresando.

Obtener la información ordenada según determinados parámetros (por ordenalfabético, según el nombre del autor, según la temática de cada libro, etc.).

Calcular cómputos referidos a la base (cantidad total de publicaciones, promediosperiódicos de ventas, promedios según las diversas categorías, etc.).

Imprimir la información deseada, ya sea en forma de tablas o de gráficos de diversostipos.

Todas estas prestaciones y muchísimas más que resultaría fatigoso enumerar,comparten una característica común que constituye la más notable diferenciarespecto de la base de datos tradicional. Esta diferencia consiste en que los datos seingresan una sola vez, de una determina-da forma, y pueden luego manipularsepara extraer la información ordenada y seleccionada según múltiples criterios.

Qué significa relacional

Este término está referido a la forma en que Access organiza la información de lasdistintas tablas que componen la base de datos.

La siguiente figura muestra la aplicación de una base de datos relacional a unsistema de clientes:

7

mailxmail - Cursos para compartir lo que sabes

Page 8: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Vemos que en la tabla de clientes muchos de sus campos se hallan codificados, porejem-plo, el vendedor está reemplazado en la tabla de clientes por un número, queluego se traduce, tabla de vendedores mediante, al nombre correspondiente queaparece en la ficha (recuadro gri-sado que vemos en la parte inferior de la figura).Algo similar ocurre con la provincia y la categoría de inscripción en el IVA.

El mecanismo de la relación es muy sencillo: basta con establecer la misma(indicando qué campos y qué tablas intervienen) para luego accederautomáticamente a los datos relacionados.

Por ejemplo, y con referencia a la figura, establecemos la relación del campo Cat.con la ta-bla de categorías IVA, del campo Vend. con la tabla de vendedores, etc.

Una vez establecidas las mencionadas relaciones, cada vez que se lee un registro enla ta-bla de clientes, se posicionan en el lugar correspondiente todas las tablas quese encuentran rela-cionadas.

En el ejemplo, con sólo acceder al cliente número 249, la tabla vendedores (en losejemplos amada Comisión) se posicionará en "Mario" y la de categoría de IVA en "Resp. Inscripto".

Podemos mostrar entonces directamente el nombre del vendedor en lugar de sucódigo, ocurriendo algo similar con la categoría IVA y la provincia. Elaboraremos asíuna vista del archivo de clientes con todas las descripciones necesarias. La

8

mailxmail - Cursos para compartir lo que sabes

Page 9: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

información obtenida por medio de las rela-ciones se muestra en cursiva en elcuadro grisado de la figura, a este tipo de vista particular de la base lo llamaremos consultaconsulta.

Una base de datos relacional, finalmente, es un sistema específicamente diseñadopara el manejo de información que ha sido previamente organizada en forma de unao varias tablas rela-cionadas entre sí.

9

mailxmail - Cursos para compartir lo que sabes

Page 10: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

4. Qué es una consulta

Básicamente, una consulta (query) es una forma de buscar, encontrar y exhibirdeterminada información, extrayéndola del cúmulo de datos que almacena la base.

Los datos que responderán a la consulta pueden provenir de una o varias tablas. Enla figu-ra 1.2 el recuadro grisado titulado "Una vista del cliente" es un formularioque toma los datos de una consulta, la que agrupa información proveniente de lastablas de clientes, de provincias, de categorías IVA y de vendedores. A larespuesta de la consulta se la denomina hoja de respues-tas dinámicas.

Página 3

Se le llama dinámica porque cualquier dato que se modifique en la mencionada hoja(que podrían ser, por ejemplo, los del recuadro gris de la figura), es actualizado enla(s) tabla(s) corres-pondientes.

Como ejemplo, diremos que con una consulta podremos:

Localizar inmediatamente el nombre y la dirección de una determinada persona.

Imprimir cartas y etiquetas dirigidas a residentes de determinada provincia.

Extender una orden de reposición para productos que hayan llegado a un límitepredetermina-do de sus existencias.

Imprimir un resumen total de ventas, con subtotales por productos o fechas.

Imprimir cartas recordatorias de vencimientos a 30, 60 o más días.

1 0

mailxmail - Cursos para compartir lo que sabes

Page 11: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

5. Qué es un formulario

Un formulario es generalmente una hoja de papel en la que disponemos de lugaresen blan-co para introducir la información, con un campo separado para cada dato.

En una base de datos electrónica la definición es casi la misma, con la diferencia deque trabajamos en la pantalla del monitor; de esta manera podremos ingresar ymodificar los datos directamente en el formulario de la pantalla, formulario quehabremos diseñado previamente se-gún nuestra necesidad y en el que podremosincluir también material gráfico (fotos) y sonidos.

Como un complemento, un formulario Access puede disponer de los llamados botones de comando. Pulsando estos botones se ejecutarán funciones o tareas quenos ayudarán a manejar la información. La figura 1.3 nos muestra un formulario quenos permite, además de ver y actuali-zar los datos de cada cliente, hasta marcar sunúmero telefónico pulsando un botón.

 

1 1

mailxmail - Cursos para compartir lo que sabes

Page 12: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

6. Qué es un informe

Un informe consiste en informa-ción, impresa o visualizada en pantalla, organizadasegún el criterio que haya-mos introducido. Se puede usar un in-forme paraagrupar registros en un di-seño personalizado. La variedad de formas en que puedepresentarse la información es casi infinita; citaremos como ejemplo: Listas deprecios, etique-tas, facturas, informes con totales y subtotales, inventarios,correspondencia personalizada ( mailing), etc.

Si bien trabajaremos con informes sencillos, aprenderemos a crear diferentesinformes, que nos permitirán mostrar la información en detalle, separada porgrupos (los que pertenecen a cada provincia, por ejemplo) con sus correspondientestotales y, dentro de ellos, los subgrupos corres-pondientes a las distintaslocalidades de cada provincia.

 

1 2

mailxmail - Cursos para compartir lo que sabes

Page 13: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

7. Qué es un objeto y un filtro

Qué es un objeto

En Access, objeto significa, en términos generales, algo que es posible seleccionar ymani-pular como una unidad identificable, como por ejemplo una tabla, unaconsulta, un informe, una macro, un dibujo, un gráfico, un documento creado conotra aplicación, un control en un formula-rio, etc.

Qué es un filtro

Un f i l t ro es un conjunto de criterios mediante los cuales le decimos a Access cuálesson los registros que deseamos ver y cuáles no. Podemos aplicar un filtrotemporario sobre cualquier ta-bla, consulta o formulario que se encuentre activo, obien crear una consulta en base a la tabla y utilizar dicha consulta como si se tratarade la tabla misma, pero conteniendo sólo los registros que se especifican en elcriterio de selección. En los capítulos correspondientes veremos cuál es la diferenciaentre unos y otras.

1 3

mailxmail - Cursos para compartir lo que sabes

Page 14: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

8. La pantalla de trabajo de Access

Access presenta, al igual que toda aplicación que corre bajo Windows 95/98, lamisma es-tructura de pantalla, tanto en sus ventanas como en sus cuadros dediálogo. Veamos cuáles son sus distintos componentes:

Barra de títulos de la aplicación

Por ser Access una aplicación multi-ventanas, la barra de títulos sólo contiene elnombre de la aplicación. Se abrirán luego distintas ventanas, que en sus títulosmostrarán el nombre de los elementos que contienen.

Siguiendo el estándar de Windows, la barra de títulos contiene también los botonesnecesa-rios para el manejo de la ventana Access, elementos que son ya familiarespara quien maneja cualquier otra aplicación Windows 95/98.

En la figura 1.5 se muestra la pantalla de Access en el modo ventana, por lo quevemos los botones de maximizar y minimizar. Si pulsamos el botón de maximizar,la aplicación se mostrará en el modo de pantalla completa. Este botón cambiarápor el de restaurar, que nos permitirá volver al modo ventana.

La barra de Menú

Contiene opciones que al ser pulsadas presentan distintos submenúes, en los quehallare-mos todas las funciones y comandos necesarios para trabajar con Access.

1 4

mailxmail - Cursos para compartir lo que sabes

Page 15: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Con respecto a la barra de menús de la figura debemos aclarar que sólo muestra dosopcio-nes debido a que se trata de la pantalla principal de Access, en la que todavíano hemos activado objeto alguno (no hay ninguna base activa).

Esta barra agregará las opciones que sean de aplicación de acuerdo al elemento quese en-cuentre seleccionado: base de datos, tabla, consulta, formulario, etc.

La barra de herramientas

Se trata de una banda que contiene distintos iconos que nos permiten ejecutardirectamente los comandos y funciones más usuales de Access. Al igual que la barrade menú, también expe-rimentará variaciones de acuerdo a la situación o al objetoseleccionado.

Veremos más adelante que podemos también seleccionar entre distintas barras queprovee el programa.

El área de trabajo de Access

Es el sector en donde se abrirán las ventanas de trabajo, como por ejemplo las de Bases de datos, Informes, Formularios, etc.

La barra o línea de estado

Nos muestra una breve reseña de la acción de determinado comando; puedeindicarnos también qué operación podemos realizar a continuación, y también algoque nos resultará de su-mo interés durante nuestro aprendizaje: si llevamos elseñalador del mouse (sin pulsar) sobre un determinado botón-herramienta,podremos leer allí una breve descripción de su función.

Veremos luego que esta línea puede instruir al futuro operador de nuestras bases dedatos, indicándole alguna característica del dato a ingresar, etc.

Hacia el sector extremo derecho de esta línea encontraremos los indicadores demodo, en los que se muestra, entre otras cosas, si estamos trabajando en sobreescritura (SOB), en modo de inserción (INS), en mayúsculas (MAY), etc.

La ventana inicial del programa

La figura 1.6 muestra las alternativas que presenta el programa en el momento desu apertura.

Quien ha trabajado con Windows, sabe que pulsando doble clic sobre el archivo dedatos se abri-rá la aplicación correspondiente con el archivo elegido. Si en lugar deseguir los pasos anteriores pulsáramos doble clic sobre un archivo con extensión mdbmdb (Microsoft Data Base) no aparecerá el cuadro de diálogo de la figura 1.6 y

1 5

mailxmail - Cursos para compartir lo que sabes

Page 16: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

pasaremos directamente a la ventana de la figura 1.7.

Por ahora de este cuadro sólo debemos saber que nos permite elegir una base dedatos existente o bien iniciar y grabar una nueva base de datos en blanco paracomenzar a crear los distintos elementos que sean necesarios para nuestro trabajo.

Si disponemos ya de una base de datos (no es nuestro caso) podemos seleccionarlade la lista, seleccionaremos la opción Más archivos, con lo que accederemos a uncuadro de diálogo estándar de abrir archivo, en donde buscaremos el archivo tipo mdb en cualquiera de las unida-des disponibles en nuestra PC (A, C, D, unidadCD-ROM, unidad Zip, etc.) o la red local.

1 6

mailxmail - Cursos para compartir lo que sabes

Page 17: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

9. Creando nuestra base de datos

La primera de las alternativas del cuadro de la figura 1.6 (lección anterior) es lacreación de una nueva base de datos en blanco, que es lo que haremosseguidamente.

 1. Activemos la casilla correspondiente a la primera opción: Base de datos deAccess en blanco y pulsemos Aceptar.

Se presentará ahora el cuadro de diálogo de la figura 1.7, en donde se nos proponela crea-ción de una base de datos con nombre db1.

Este nombre se encuentra actualmente seleccionado, lo que significa que cualquiercosa que escribamos con el teclado lo reemplazará.

2. Cambiemos entonces el nombre propuesto por otro más adecuado para nuestrospropósitos; escribamos practica y pulsemos luego el botón Crear.

Aunque la palabra "práctica" lleva acento es recomendable no utilizarlo en ningúncaso en el que debamos asignar nombres de archivos, carpetas, direcciones de Weby e-mail, etc.; de esta ma-nera evitaremos confusiones en lo futuro.

Luego de pulsar Crear se presentará en la pantalla de Access una ventana muyimportante con la que trabajaremos a lo largo de todo este curso.

1 7

mailxmail - Cursos para compartir lo que sabes

Page 18: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

10. La ventana de Base de Datos

Este cuadro (figura 1.8) nos muestra todos los objetos que contiene la base dedatos organi-zados inicialmente por categorías o tipo de objeto. Ya describimosbrevemente la función de las tablas, consultas, formularios, informes, etc., ytambién sabemos que se trata de distintos tipos de objetos.

Este cuadro dispone en su borde de una barra en la que podremos elegir el tipo deobjeto que se nos mostrará. Inicialmente se encuentra activo el botón Tablas, loque significa que vere-mos la lista de todas las tablas contenidas en la base dedatos, si bien por ahora no hay ninguna tabla que mostrar.

Además de la lista de objetos existentes, este cuadro nos muestra, para cada una delas ca-tegorías uno o más asistentes que nos permitirán crear ese tipo de objeto.

La figura muestra tres formas de crear una tabla, las que utilizaremos en el próximocapítulo cuando comencemos a crear objetos.

Mensajes de Access

Veremos que algunos mensajes que Access debe emitir son expre-sados por elAyudante (si se encuentra activo). Por ejemplo, si salimos del programa y olvidamos

1 8

mailxmail - Cursos para compartir lo que sabes

Page 19: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

grabar los cambios efectuados, el mensaje corres-pondiente aparece en un globo,acompañado por la animación y el sonido del Ayudante (figura 1.9).

 

1 9

mailxmail - Cursos para compartir lo que sabes

Page 20: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

11. El botón ¿Qué es esto?

Si tenemos alguna duda sobre la función o la denominación de alguno de loselementos de Access que aparecen en la pantalla, llevaremos el señalador sobre elobjeto en cuestión y, sin necesidad de pulsar, aparecerá el nombre del objeto ocontrol correspondiente. Si esta aclaración no nos resultara suficiente, recurriremosal botón "¿Qué es esto?"; para ello...

1. Pulsemos las teclas Shift  + F1 y el puntero del mouse cambiará su aspecto; aparecerá en pan-talla el icono móvil "¿Qué es esto?".

2. Llevemos el puntero hasta el elemento o botón sobre el que tenemos dudas ypulsemos.

 

2 0

mailxmail - Cursos para compartir lo que sabes

Page 21: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

12. Cerremos nuestra base de datos

Como toda aplicación Windows 95/98 podremos cerrar Access (y la base de datosque hemos creado) pulsando el botón Cerrar.

Cómo guardar los cambios de diseño

Si en una sesión de trabajo hubiéramos creado algún objeto o producido algúncambio en el diseño de cualquiera de los objetos existentes, Access nos recordará,al momento de cerrar, que debemos grabar dichos cambios. No es nuestro caso eneste momento, puesto que aún no hemos creado objeto alguno dentro de la basepero, si intentando probar algo, sin desearlo, hubiéramos creado algún objeto,aparecerá el aviso en cuestión, al que contestaremos No.

2 1

mailxmail - Cursos para compartir lo que sabes

Page 22: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

13. Creando tablas de datos

Cómo construir una base de Clientes

A partir de este capítulo desarrollaremos un ejemplo similar al que se muestra en lafigura 1.2 del Capítulo 1: una tabla de clientes con todas las tablas auxiliaresnecesarias, las que se re-lacionarán con la primera, para manejar luego toda esainformación mediante un formulario.

Así veremos claramente qué significa relacionar datos y cómo una consulta nospermite se-leccionar, organizar y agrupar esos datos según nuestras necesidades.

Abramos la base de datos creada en el capítulo anterior

1. Seleccionemos nuevamente la aplicación MS Access, tal como lo hiciéramos en elejercicio del capítulo anterior.

Se presentará el mismo cuadro de la figura 1.6 (del Capítulo 1), pero si observamosla lista, allí aparecerá ahora Practica.mdb

2. Seleccionemos este elemento de la lista y luego pulsemos el botón Aceptar, paraque en la pantalla del programa aparezca el cuadro de manejo de objetos de la basede datos, también mostrado en el capítulo anterior (figura 1.8).

Con este cuadro podremos crear y modificar todos los objetos de la base de datoscon los que trabajaremos. El mismo permanecerá abierto mientras haya algún objetode la base abierto, sea este una tabla, un formulario, una consulta, etc., y cerrarlosignifica también cerrar la base de datos que el mismo representa.

Qué ocurre con las bases de datos de versiones anteriores

Podemos abrir una base de datos de las versiones 97, 7.0, 2.0 en MS Access 2000sin con-vertirla, y también podemos utilizar sus datos, pero no es posible modificarel diseño de los obje-tos de esa base de datos, ni aprovechar la mayoría de lasnuevas características de MS Access 2000, en tanto no se convierta a la nuevaversión.

La conversión se realiza en forma automática y con toda facilidad, pero antes deproceder debemos asegurarnos que todos los usuarios de esa base estén tambiénen condiciones de traba-jar en Windows 95/98 y en esta nueva versión 2000 deAccess, ya que una vez producido este cambio no podrán abrir la base de datos conprogramas Access en sus versiones anteriores.

2 2

mailxmail - Cursos para compartir lo que sabes

Page 23: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

14. Cómo se crea una tabla

Lo primero que debemos crear es una tabla que, como vimos, es el verdaderosoporte que contiene a los datos. Es justamente la opción que se encuentrapreparada (obsérvese que el bo-tón Tablas se distingue de los demás).

1. Pulsemos doble clic sobre el botón Crear una tabla en vista Diseño para pasar a lacuadrícula de diseño de tablas de la figura 2.1.

En ausencia de un nombre, Access asignó el de Tabla 1. Ingresaremos ahora ladefinición de los datos que se almacenarán en la tabla y en el momento deguardarla le asignaremos un nombre apropiado.

2. En el lugar indicado coloquemos el nombre del primer campo: CODCLI

Mostramos los nombres de campo en mayúsculas por una cuestión de claridad, peroen Ac-cess tenemos total libertad para usar mayúsculas y minúsculas. Tambiénelegimos un nombre de campo corto, si bien, como podemos apreciar en lainstrucción de la figura 2.1, los nombres de campo pueden tener hasta 64caracteres de longitud e incluir espacios, como por ejemplo: Código del Cliente.

3. Pulsemos la tecla Tabulador, con lo que pasamos a la definición del tipo de datoque ha de contener el campo. Aparece una lista mostrándonos su primer elemento(Texto), pero no es este el tipo de dato que le asignaremos, por lo tanto:

4. Pulsemos sobre la flecha para abrir la lista indicada y de dicha lista elijamos Numérico.

Cómo definir las características de un campo

Habremos observado que en el sector inferior apareció un grupo de parámetros para

2 3

mailxmail - Cursos para compartir lo que sabes

Page 24: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Habremos observado que en el sector inferior apareció un grupo de parámetros parallenar, titulado Propiedades del campo; allí podremos determinar todas lascaracterísticas que asumirá el campo que estamos definiendo.

Actualmente nos muestra las opciones por omisión para el tipo de dato elegidoarriba (Nu-mérico). Cambiando aquí los parámetros que sean necesarios, podremosdarle a cada uno de los campos las propiedades adecuadas de formato, decimales,etc. Estableceremos estos parámetros de la siguiente forma:

5. En Tamaño del campo aparecerá el valor predeterminado: Entero largo;pulsaremos sobre la flecha ubicada a su derecha y de la lista elegiremos Entero.

6. De modos similar en el campo Lugares decimales elegiremos el valor 0 .

Si deseamos que Access controle que no se repita el código del cliente, debemosasignar a la propiedad Indexado de este campo el valor Sí (Sin duplicados).

7. En el campo Requerido elegiremos Sí, y en el campo Indexado elegiremos laopción Sí (Sin duplicados); pronto veremos qué es un índice. El cuadro depropiedades del campo referido tendrá ahora el aspecto de la figura 2.2.

8. Pulsemos en el campo Descripción (figura 2.1) y escribamos "Código numéricodel Cliente", terminando con ENTER para continuar con la definición del próximocampo.

9. Allí escribiremos NOMBRE, pulsaremos ENTER para pasar a la siguiente columna,y nuevamente ENTER, para aceptar el tipo por omisión (Texto).

10. En Descripción escribiremos "Nombre o razón social del cliente".

11. Del mismo modo que lo hicimos con el nombre definiremos la Dirección,Localidad y Teléfono según los siguientes parámetros:

Nombre del campo Tipo de datos Descripción Tamaño Requerido

DIRECCIÓN Texto Calle y número 50 SI

LOCALIDAD Texto Ciudad o pueblo 36 SI

TELÉFONO Texto Números y espacios 30 NO

La ventana de diseño deberá contener ahora los datos que se muestran en la figura2.3. Completado el ingreso de los campos que componen (por ahora) la tabla declientes, procedere-mos a grabarla:

2 4

mailxmail - Cursos para compartir lo que sabes

Page 25: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

12. Para guardar en la base la tabla que creamos, pulsemos el segundo botón de labarra, con lo que aparecerá el cuadro de diálogo Guardar Como (figura 2.4).

13. En lugar del nombre que se nos presenta (Tabla 1) escribamos en este cuadro: ClientesClientes y pulsemos Aceptar aparecerá el cartel de la figura 2.5.

No necesitamos por ahora definir claves y por lo tanto contestaremos No.

14. Cerremos ahora la ventana diseño (figura 2.3).

Veremos que podemos establecer el ordenamiento de la tabla fácilmente pulsandoun botón y sin necesidad de crear una clave.

No obstante, en aplicaciones más avanzadas es conveniente definir una clave

2 5

mailxmail - Cursos para compartir lo que sabes

Page 26: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

principal, ya que ésta nos permitirá mantener la integridad referencial. Esto significaque no nos será permitido eliminar en una determinada tabla ningún registro delque dependan otros registros en otras ta-blas.

Especialmente en sistemas multi-usuarios es imprescindible controlar la integridadreferen-cial para que no nos ocurran cosas tales como eliminar un cliente que aúntiene registros pendien-tes de pago en la tabla de facturas. Para que el lector tengauna idea de lo que significa una Clave principal en una tabla, explicaremosbrevemente esta característica al final de este capítulo. Volve-remos luego a estetema, sobre el final del Capítulo 5, en donde veremos la primera aplicación prácticade una clave.

Otro control que sí es importante para nuestro ejemplo es el de las duplicaciones.Veremos que por haber definido el campo CODCLI con la propiedad Indexado y Sinduplicados, tal como lo vimos en la figura 2.2, no nos será permitido ingresar dosregistros con el mismo valor CODCLI.

Ahora la base de datos Practica incluye a la tabla Clientes.

Observemos que el título del cuadro contiene ya el nombre de la tabla y el cuadrovacío de la figura 1.8 contiene ahora el icono representativo de esta tabla.

Más adelante, cuando hayamos aprendido algo más de Access, agregaremos a estatabla algu-nos campos que necesitaremos; veremos lo fácil que es hacerlo.

2 6

mailxmail - Cursos para compartir lo que sabes

Page 27: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

15. Cómo abrir una tabla e ingresar los datos

Ya estamos en condiciones de utilizar la tabla y lógicamente, lo primero quedebemos hacer es cargar en ella los datos; veamos cómo hacerlo.

Tenemos en la pantalla el cuadro de control de los objetos de la base (figura 1.8 delCapítulo 1). Aparece allí seleccionada la tabla Clientes, por ser el único elementoque contiene la base.

1. Pulsemos doble clic sobre este único elemento de la lista, y la tablacorrespondiente se abrirá para el ingreso y modificación de sus datos (figura 2.6).

Lo que veremos en la figura es la presentación en modo Hoja de datos, que essimilar a una de cálculos. Se trata de una delas formas de trabajar con una tabla.Veremos otras formas de presentación (formularios).

Figura 2.6

La acción de cliquear dos veces en rápida sucesión (mencionada aquí como dobleclic) nos permi-te ahorrar un paso. En la mayoría de los casos en que, luego deseleccionar algún ítem, se nece-sita una confirmación (botón Aceptar, Sí, etc.), eldoble clic sobre la opción elegida nos ahorra este último paso.

Se trata de una operación muy común en Windows, que debemos ensayar con el finde acostum-brar nuestra mano al breve lapso que separa a las dos pulsaciones.

Notemos que el cuadro Base de datos (podemos verlo en la figura 1.8 del Capítulo1) dispone además del botón Diseño, que abrirá la tabla en modo diseño (figura 2.1),lo que nos permitirá modificar su diseño o estructura. Lo utilizaremos luego paraagregar algunos campos a la misma.

Por ahora sólo debemos tener en claro la diferencia entre crear o modificar laestructura de una tabla (crear campos, asignar tipos de datos numéricos, textos,etc.) e ingresar o modifi-car los datos de la tabla, que es lo que haremos acontinuación. En este modo de presentación (la figura 2.6 nos muestra la tabla enblanco y la 2.7 los datos ya ingresados) tenemos todos los datos de la tabla anuestra disposición; podemos ubicarnos sobre cualquiera de ellos (figura 2.7)pulsando con el mouse para modificarlo. Si el dato que buscamos no aparece en laventana de-bemos accionar sobre la barra de desplazamiento vertical para ubicarotros registros, o sobre la de desplazamiento horizontal para acceder a otrascolumnas que no están visibles.

En la figura 2.6 no aparecen las barras de desplazamiento por no ser necesarias, yaque tenemos a la vista todos los datos de la tabla.

Estas barras se presentarán cuando el tamaño de la ventana no sea suficiente paramostrar todos los datos de la tabla.

Para quien recién se inicia en aplicaciones de este tipo, mostraremos algunos

2 7

mailxmail - Cursos para compartir lo que sabes

Page 28: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Para quien recién se inicia en aplicaciones de este tipo, mostraremos algunosaspectos refe-ridos al ingreso y modificación de los datos de Access.

2 8

mailxmail - Cursos para compartir lo que sabes

Page 29: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

16. Cómo ingresar y modificar datos

Access nos ofrece la posibilidad de editar o agregar registros en la hoja de datos deuna ta-bla, de una consulta o de un formulario (veremos aquí al caso de las tablas ydejaremos para los Capítulos 6 y 7 los otros dos).

Cómo ingresar datos en un registro (línea)

En el margen izquierdo de la tabla, cuatro símbolos nos muestran el estado delregistro.

 Un triángulo negro nos indicará el registro activo propiamente dicho (figura 2.7).

 Un icono en forma de pequeño lápiz nos indica que el registro está siendoeditado y que no ha sido guardado todavía.

 Un asterisco identifica al registro en blanco, listo para agregar nuevos datos.

 Un círculo cruzado por una línea nos indica (en un entorno de múltiplesusuarios) que ese registro no se puede editar por encontrarse bloqueado por otrooperador.

Figura 2.7

El cursor titilante se encontrará en el primer campo del registro, indicándonos quelo que es-cribamos se incorporará allí.

2 9

mailxmail - Cursos para compartir lo que sabes

Page 30: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Completados los datos del primer campo, pulsaremos ó para pasar al siguiente.Cuando pulsemos alguna de estas teclas sobre el último campo de un registropasaremos auto-máticamente al siguiente. Antes de hacer esto último, Accessguardará los datos del registro que se completó.

Cómo corregir los datos de un campo

Si el error es de sólo algunos caracteres, pulsaremos sobre el campo en el lugar queque-remos corregir. Allí podremos escribir los nuevos caracteres y, mientras lohacemos, los caracte-res de la derecha se desplazarán; se dice que estamos enmodo inserción (que es el modo de trabajo predeterminado del teclado paracualquier aplicación). En este caso en modo inserción, podemos ayudarnos con lasteclas Retroceso ó Suprimir para borrar los caracteres a la izquierda o derecha,respectivamente.

Estando en modo inserción, podemos pulsar la tecla Insertar para pasar a modosobreescritura, lo que significa que cada carácter que escribamos reemplazará alque está a la derecha del cur-sor, ahorrándonos la tarea de pulsar teclas paraeliminar caracteres.

Cómo reemplazar el contenido de un campo

Llevamos el puntero al comienzo del campo, es decir entre el borde de la columna ysu primer carácter (el puntero cambiará su forma a una cruz  indicándonos talcondición). Allí pulsare-mos el botón izquierdo y el campo quedará seleccionado,mostrándose en color negro. Estando el campo seleccionado en estas condiciones,lo que escribamos reemplazará al contenido anterior; en este modo, el primercarácter que pulsemos borrará el contenido anterior del campo y se colo-cará en sureemplazo; luego los siguientes caracteres que escribamos se agregarán a laderecha del anterior. Para corregir un dato existente debemos recurrir, en cambio,al modo edición, que ya vimos (el cursor está dentro del campo pero éste no seencuentra resaltado).

Si tenemos actualmente un campo resaltado y desplazamos con las teclasdireccionales (flechas) se agregarán nuevos campos a la selección.

Para resaltar con el teclado, la forma más rápida y sencilla es pulsar la tecla F2;esta tecla alterna entre los modos edición y reemplazo.

Cómo anular los cambios

Si aún no hemos salido del registro (el renglón de la tabla), podemos anular loscambios y volver al estado anterior pulsando Esc. Pulsando la primera vezanularemos los cambios del último campo modificado y pulsando nuevamenteanularemos los cambios de todos los campos del re-gistro activo.

Si luego de hacer un cambio en algún campo del renglón (registro), nos ubicamosen otro registro (pulsando Flecha arriba, Flecha abajo, o con el mouse), los cambioshechos al primero, como ya hemos dicho, son guardados en la tabla. A esta altura,si descubrimos un error en el registro que acabamos de modificar, debemos pulsar Control + Z y así recuperaremos en su estado anterior a todos los campos delúltimo registro modificado.

Datos permitidos, datos prohibidos y datos requeridos

Cada vez que intentemos salir de un campo después de haber modificado los datosdel mismo, Access se asegurará que el valor ingresado sea permitido. De nos ser así

3 0

mailxmail - Cursos para compartir lo que sabes

Page 31: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

del mismo, Access se asegurará que el valor ingresado sea permitido. De nos ser asínos avisará que el mismo no es válido y que debemos modificarlo o bien deshacer laoperación presionando la tecla .

Un dato es rechazado cuando no es compatible con el campo que lo recibe (porejemplo, una letra no es aceptada en un campo numérico).

Otro cartel de error que podrá aparecer en el ejemplo que veremos, es el que nosadvierte que hemos dejado vacío un campo requerido (figura 2.8).

La propiedad Requerido (que hemos establecido para el campo codcli, ver figura2.2) signi-fica que Access no nos dejará pasar a otro registro sin antes completarese campo con algún dato válido.

Veremos más adelante que además de la validación inherente al tipo de datopodemos, para cada campo, establecer reglas de validación de acuerdo a lasnecesidades del formulario (por ejemplo, que un campo no acepte valoressuperiores a 1000).

Existen otros campos que no son editables, como por ejemplo los del tipo ContadorContador, en los cuales el programa asigna automáticamente un númeroconsecutivo para cada registro agregado, o los del tipo Calculado, que muestranvalores calculados por una fórmula. Tampoco podemos modificar los camposbloqueados o desactivados, o algunos campos de consulta.

3 1

mailxmail - Cursos para compartir lo que sabes

Page 32: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

17. Cómo desplazarnos con el teclado

Cuando tengamos que ingresar cantidades mayores de datos, nos resultará útilmanejarnos con el teclado. Mostramos aquí una breve guía de las teclas quecumplen alguna función especial.

Para:

Ir al campo siguiente ................................................................ Tabulador

Ir al campo anterior .................................................................. Shift + Tabulador

Ir al primer campo del registro actual ....................................... Inicio

Ir al último campo del registro actual ........................................ Fin

Ir al primer campo del primer registro (en una tabla) ............... Shift + Control +Inicio

Ir a la página anterior en una tabla o

Ir al registro anterior en un formulario ...................................... Re Pág

Ir a la página siguiente en una tabla o

Ir al registro siguiente en un formulario .................................... Av Pág

Ir a un registro (por ejemplo al Nº 7) ........................................ F5, 7, Intro 

3 2

mailxmail - Cursos para compartir lo que sabes

Page 33: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

18. Ingresemos datos en la tabla

Comenzaremos ahora a cargar los datos que necesitaremos para los ejercicios delos próximos capítulos.

1. Ubicando el cursor en el primer campo escribiremos los datos que siguen, utilizando en todos los casos las teclas indicadas en el primer renglón:

Notemos que al pasar a un nuevo campo, en la línea inferior de la ventana de Accessaparece el texto que ingresamos como descripción al diseñar la tabla.

Los valores de la clave (5, 68, 18) no fueron ingresados en forma ordenada, ypermanecerán en ese estado hasta que cerremos la tabla, momento en el cualAccess actualiza los índices de ma-nera tal que los registros aparezcan ordenadoscuando la volvamos a abrir.

3 3

mailxmail - Cursos para compartir lo que sabes

Page 34: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

19. Qué ocurre al ingresar datos idénticos en elcampo clave

Ya hemos dicho que en el campo CODCLI (y en todo otro campo que se declareindexado con la opción sin duplicados) no nos será permitido ingresar un valor queya exista para otro regis-tro.

1. Comprobemos esta propiedad ingresando a continuación el siguiente registro:

Cuando hayamos completado el último campo (o cuando intentemos pasar a otroregistro) aparecerá la ventana de diálogo de la figura 2.9 indicándonos la condiciónde duplicado del registro ingresado.

Figura 2.9

2. Debemos pulsar Aceptar, pulsar luego con el mouse sobre la clave duplicada (68)y escribir otro número en su lugar, por ejemplo 9 .

3 4

mailxmail - Cursos para compartir lo que sabes

Page 35: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

20. Cómo agregar registros

 En la figura 2.6 podemos notar que debajo del último registro con datos seencuentra un renglón señalado con un asterisco en su sector de control, lo queindica que se trata del registro de inserción.

 Si la tabla tiene muchos datos y no estamos viendo los últimos registros, esprobable que no se encuentre visible el registro de inserción en ese caso,disponemos de un botón en la barra superior que permite visualizar ese registroycoloca el cursor en su primer columna para comenzar el ingreso de los datos.

 Cuando comencemos a escribir, el señalador adoptará la forma de indicadoractivo. Al completar el último campo, el señalador se desplazará hacia abajoabriendo un nuevo registro para el ingreso de los datos.

1. Pulsemos entonces en el primer campo del registro de inserción e ingresemosestos datos:

 2. Guardemos ahora la tabla pulsando el botón de Guardar. Conviene que nosacos-tumbremos a guardar cada vez que terminemos una operación, aunque en esteca-so no es estrictamente necesario ya que Access guarda cada registro modificadoen el momento en que pasamos al siguiente registro o a cualquier otro pulsando conel mouse.

 3. Cerremos la tabla pulsando clic sobre el botón de control de la ventana que lacon-tiene.

3 5

mailxmail - Cursos para compartir lo que sabes

Page 36: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

21. Cómo eliminar un registro

Esta operación eliminará una fila de la tabla, que equivale a un registro. Estando enel modo hoja de datos (que es como trabajamos hasta ahora):

 1. Pulsemos en el sector de campos de uno de los renglones. El renglón quedaráre-saltado e indicado con el triángulo sólido (veremos mejor este tema cuandoestu-diemos selección de datos, en este mismo capítulo).

2. Pulsemos la tecla Suprimir y Access pedirá confirmación para eliminar el registro(figura 2.10).

Figura: 2.10

3. Pulsemos Sí y la fila correspondiente (registro) desaparecerá de la tabla.

Podemos hacer esto mismo con la opción Eliminar registro, del menú EDICIÓN yen ese caso no es necesario que la fila completa se encuentre seleccionada, bastarácon que el cursor se encuentre ubicado en cualquier campo de la misma.

Debemos prestar atención, puesto que si aceptamos, ya no podremos volver atráspara re-cuperar el registro.

3 6

mailxmail - Cursos para compartir lo que sabes

Page 37: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

22. Qué hacer si el cuadro de datos no está en lapantalla

Ya sabemos que este cuadro (mostrado en la figura 1.8 del Capítulo 1) esimprescindible pa-ra el manejo de los objetos de la base de datos y que, a menosque cerremos la base, estará acti-vo, aunque puede ocurrir que en determinadascircunstancias no se encuentre a la vista; por ejemplo cuando se superpone algunaventana encima del mismo.

 En este caso aparecerá en la barra superior un icono que representa a estecuadro (si no estuviera, bastará con pulsar sobre cualquiera se los objetos para queaparezca). Pulsando sobre este icono, el cuadro de la figura 1.8 aparecerá en primerplano.

Otra forma de activarlo es mediante la opción VENTANA del menú, en la queencontraremos la opción, que en este caso es 1 Practica: Base de datos; al pulsarlareaparecerá el cuadro en pri-mer plano.

Podemos ocultar a esta o cualquier otra ventana que utilicemos en nuestro trabajocon Ac-cess con la opción Ocultar del menú VENTANA.

En el caso de la ventana Base de datos siempre contaremos con el mencionadobotón para hacerla aparecer pero si la que se encontrara oculta fuera la ventana deun objeto cualquiera de la base podremos volverla a visualizar si elegimos Mostraren el menú VENTANA, lo que abrirá un cuadro con una lista de todos los objetosocultos. Pulsando sobre cada uno de ellos los traemos nuevamente a la pantalla.Otra forma es simplemente volviendo a abrir el objeto seleccionándolo en la ventana Base de datos.

Qué es una aplicación de base de datos

Tratándose de bases de datos Access, podemos decir que una aplicación es unabase de datos (el archivo mdb que ya conocemos) que tiene definidos algunosobjetos que nos permiten utilizar esos datos.

El contenido de esa base podría ser desde algo tan simple como una tabla conparámetros de ordenamiento que nos permitan ver y actualizar sus datosmanteniendo un orden determinado hasta algo tan complejo como un sistemacompleto de reservas manejado desde varias terminales.

Por lo general cuando se define una aplicación para uso de terceros, se incluyen enla misma ciertos parámetros para que, junto con la apertura de la base, arranquealgún proceso inicial. Normalmente este proceso inicial consiste en presentar undeterminado formulario o un menú de opciones en la pantalla.

Podemos colocar el icono que representa esta base de datos en el escritorio deWindows 95/98 o en algún lugar del menú Inicio, y así facilitar el acceso a la mismade los usuarios que vayan a emplearla.

En el CD-ROM de Office 2000 encontraremos varias aplicaciones a modo deejemplo. Busquemos (con el comando Buscar de Windows) la clave *.MDB en launidad donde hemos coloca-do el mencionado CD y aparecerá una lista de estasaplicaciones. Pulsemos allí mismo y arrastremos hacia el escritorio o cualquier

3 7

mailxmail - Cursos para compartir lo que sabes

Page 38: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

carpeta que utilizamos habitualmente y tendremos un ejemplo de desarrollo debases de datos que podemos abrir, modificar, investigar, etc.

3 8

mailxmail - Cursos para compartir lo que sabes

Page 39: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

23. Cómo copiar una tabla (o cualquier otro objeto)

Podemos hacer duplicados de objetos utilizando el mouse. Si mantenemos pulsadala tecla Control mientras arrastramos algún objeto (tabla, consulta, etc.) dentro delcuadro Base de datos, cuando soltemos el botón aparecerá un duplicado con elnombre Copia de xxxx, siendo xxxx el nombre del objeto original.

La posibilidad de duplicar nos permitirá ahorrar tiempo y esfuerzo cuando debamoscrear objetos similares. Obtenido el nuevo objeto duplicado en la forma que seindicó arriba, cambiaremos pri-meramente el nombre Copia de xxxx por otro másadecuado para el nuevo objeto (como veremos enseguida) y luego abriremos esteduplicado con la opción de diseño correspondiente, para efec-tuar los cambiosnecesarios. Además de facilitarnos nuestra tarea, este método dará uniformidad ycoherencia a nuestros diseños, ya que procediendo de este modo estaremos segurosde que la diferencia del duplicado respecto del original será sólo lo quemodificamos después de la copia.

3 9

mailxmail - Cursos para compartir lo que sabes

Page 40: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

24. Cómo renombrar una tabla (o cualquier otroobjeto)

Lo que sigue es una propiedad intrínseca de todo objeto bajo Windows 95/98: sipulsamos una vez sobre el objeto (en nuestro caso cualquiera de Access cuyo iconorepresentativo se en-cuentre dentro del cuadro Base de datos) y luego de uninstante volvemos a pulsar sobre el mis-mo, aparecerá recuadrado el nombre de eseobjeto y podremos escribir el nuevo nombre en su lugar.

Ahora, con la versión 2000 podemos cambiar los nombres de los objetoslibremente

Ahora podemos cambiar el nombre de los objetos sin preocuparnos por otrosobjetos que los utilizan. Si por ejemplo utilizamos la tabla de Clientes en consultas,formularios, etc., al cam-biar el nombre de la misma (en versiones anteriores deAccess) teníamos el inconveniente de que los objetos que empleaban esa tabla,presentaban un mensaje de error indicando que "no existe el objeto tabla Clientes".

Ahora, en la nueva versión 2000, cuando cambiamos el nombre de cualquier objeto,Access modifica automáticamente todas las referencias a ese objeto paraadaptarlas a la nueva denomi-nación del mismo.

De este modo, si fuera necesario, podemos reorganizar en unos pocos minutos losnombres de todos los objetos de la base.

4 0

mailxmail - Cursos para compartir lo que sabes

Page 41: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

25. El orden de los datos

Una de las ventajas más importantes que nos proporcionan las bases de datos es lade po-der manejar la información en el orden requerido en cada caso.

Por ejemplo, si en un servicio médico se presenta un paciente que recuerda sunúmero de historia clínica, el operador lo ubicará inmediatamente tipeando esenúmero, pero si el paciente no lo recuerda se lo buscará por su nombre en una listaalfabética. El paciente tiene un único registro de legajo médico y, por lo tanto,estamos accediendo a la misma información por dos vías diferen-tes.

Esto es sólo un ejemplo de los múltiples beneficios que pueden obtenerse de unabase de datos como la que nos ocupa.

Qué es un índice o clave

Disponiendo de una computadora lo suficientemente rápida, el operador delejemplo anterior podría ordenar los datos en forma alfabética para ubicar alpaciente por su nombre, pero existe una forma mejor de hacer esto utilizandoíndices.

Un índice es una característica de la tabla asociada a un determinado campo de lamisma, que nos permite definir un ordenamiento y una clave de acceso particularpara los datos conteni-dos en dicha tabla.

Podemos decir que un índice nos permite:

Leer o listar los registros de la tabla en un orden determinado.

Acceder a un determinado registro en forma directa.

Relacionar datos de distintas tablas.

La clave principal de la tabla

Si bien en Access no es obligatorio, generalmente se acostumbra identificar a cada fi lafila o re-gistro con un único número de código o de serie, como por ejemplo elnúmero de legajo del em-pleado o el número de serie del producto.

En caso como los mencionados es conveniente definir para esos campos lacaracterística Indexado Sin duplicados y de esta forma nos aseguraremos queAccess nos impedirá ingresar más de un registro con el mismo valor de ese campo(es decir que de esta manera evitaremos tener dos registros con la misma claveidentificatoria).

También podemos designar a ese campo como Clave principal de la tabla y de esaforma la tabla se mantendrá siempre ordenada de acuerdo con el valor de esecampo.

Cuando ingresamos datos en una tabla estos van ocupando posiciones consecutivasy ese será el orden natural de la tabla u orden físico de los registros.

No obstante, como lo vimos en la figura 2.5, Access nos sugiere que definamos uníndice principal para que en adelante sea ese índice el que defina el orden en que sepresentarán los registros.

4 1

mailxmail - Cursos para compartir lo que sabes

Page 42: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Veremos luego, que se puede establecer el ordenamiento de los registros sinnecesidad de Clave principal, definiéndolo como una propiedad de la tabla. Noobstante, veremos algunos casos en los que es ventajoso establecer una claveprincipal para la tabla.

4 2

mailxmail - Cursos para compartir lo que sabes

Page 43: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

26. Cómo imprimir los datos de una tabla

Dedicaremos este capítulo a describir los ajustes que podemos aplicar al diseñoinicial de la tabla de nuestro ejemplo. En tal sentido, agregaremos nuevas columnas,reubicaremos las exis-tentes, cambiaremos el nombre de los campos, etc. Conestas prácticas podremos comprobar lo simple que resulta aplicar estos cambios,incluso sobre una tabla que ya contiene datos. Pero an-tes veremos cómo seimprimen los distintos objetos de la base de datos.

Cómo imprimir los datos de una tabla

Ya sabemos cómo abrir una tabla en el modo de presentación hoja de datos, y dehecho te-nemos abierta nuestra tabla en ese modo, de acuerdo con el ejercicioanterior.

 1. En ese caso pulsaremos el botón imprimir aparecerá el aviso de la figura 3.1indicándo-nos que el objeto está siendo enviado al dispositivo de impresión.

Figura: 3.1

Si, en cambio, seleccionamos la opción Imprimir del menú ARCHIVO, se mostrará elcuadro de diálogo de control de la impresión de la figura 3.2.

Figura: 3.2

2. Pulsando aquí el botón aceptar imprimiremos todos los registros de la tabla delmismo modo que si utilizáramos el botón que mostramos anteriormente.

4 3

mailxmail - Cursos para compartir lo que sabes

Page 44: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

 Podemos seleccionar un área (ya hemos visto cómo se selecciona desde la partede un campo a toda la tabla) y activar en cuadro de la figura 3.2 el botón Registrosse-leccionados, para imprimir sólo el área resaltada.

 Si, en cambio, activamos la opción Páginas, podremos solicitar la impresión dede-terminadas páginas completando los campos Desde y Hasta con los números delas mismas.

 En el campo Copias indicaremos la cantidad de copias que se imprimirán.

Habilitando la casilla Intercalar podremos definir si se imprimirán todas las páginasde la primera copia, luego todas las de la segunda, o bien todas las copias de laprimera página, luego todas las de la segunda, etc.

En todos los casos obtendremos un listado de la tabla ordenado de acuerdo con laclave principal o, en su defecto, en el orden en que se encuentren grabados losregistros.

Para realizar una impresión más acabada utilizaremos el Informe que, junto con el Formu-lario, constituyen los dos medios más apropiados para brindar informaciónde las bases Access a personas no especializadas en el tema.

4 4

mailxmail - Cursos para compartir lo que sabes

Page 45: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

27. Cómo elegir la impresora

Access realiza sus impresiones utilizando como parámetros los que se encuentrandefinidos actualmente para Windows, en relación con la impresora elegida. Windowspermite más de una definición de impresora; veamos cómo se elige la impresora ylas características de impresión.

En la figura 3.2 podemos leer, en el campo Estado, las características de laimpresora se-leccionada. En la figura se indica que la impresora seleccionada es laque se ha definido para Windows como impresora predeterminada.

Como podemos apreciar, el campo Nombre puede abrir una lista; pulsando el iconocorres-pondiente se mostrarán todas las impresoras disponibles (se trata de lasimpresoras que se en-cuentren instaladas para Windows).

Lo que seleccionamos aquí no es la impresora en sí, sino distintas definiciones deimpre-sión, que pueden estar destinadas a distintas impresoras o no. Un ejemplotípico de dos o más definiciones para una misma impresora lo tenemos en el casode las impresoras láser, que por lo general disponen de dos modos de impresión:Postscript y PCL (dos controladores o programas distintos que podemos utilizar paraimprimir en la misma impresora).

Los campos Tipo, Dónde, etc., nos muestran otros datos de la impresoraseleccionada. Si no contamos con una impresora, podemos activar la casilla Imprimir en un archivoImprimir en un archivo, para llevar el trabajo a otra PC que disponga de impresora.En este caso, en lugar de ir al papel , se generará un archivo de impresión que luegopodremos utilizar en otra instalación; veremos esto más ade-lante en este mismocapítulo.

4 5

mailxmail - Cursos para compartir lo que sabes

Page 46: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

28. Cómo ajustar el modo de impresión

Si estando en el cuadro 3.2 pulsamos el botón Propiedades, se presentará el cuadrode control de la impresora. Este cuadro dependerá de la impresora que tengamosinstalada en el sistema; mostraremos aquí el que corresponde a una impresoraHewlett Packard de chorro de tinta (figura 3.3).

Figura: 3.3

En el primer subcuadro: ColorSmart podemos seleccionar el modo deAdministración del co-lor entre Automático y Manual (en este caso se habilitará elbotón Opciones, que nos dejará modi-ficar los distintos parámetros).

En el segundo subcuadro: Modo de Impresión podemos elegir entre los modos Óptimo, Normal y EconoFast.

No avanzaremos en más detalles porque, como dijéramos anteriormente, todo estoes parti-cular para cada marca y modelo de impresora, pero diremos que, paraimprimir tablas, formula-rios, informes y todo aquello que comprenda sólo datos, líneas y recuadros bastará con el modo predeterminado, es decir sólo pulsando AceptarAceptar en el cuadro de la figura 3.2.

Selección del tipo de papel

Si en el cuadro anterior (figura 3.3) pulsamos sobre la solapa Papel, el mismocambiará su aspecto por el que nos muestra la figura 3.4.

4 6

mailxmail - Cursos para compartir lo que sabes

Page 47: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura: 3.4

Podemos abrir la lista superior para elegir el tamaño del papel que mejor se adaptea la hoja que colocaremos en la impresora.

En el ejemplo, la lista muestra como seleccionado el formato A4, y junto al mismopodemos leer las medidas del papel.

Cómo imprimir en forma apaisada

Si tenemos que imprimir una tabla que contiene muchos campos, es probable que lamisma no quepa en el ancho de la página. Conviene entonces colocar la impresiónen forma apaisada para así aprovechar el largo de la página como ancho.

En el panel titulado Avanzadas definiremos si la impresión se hará a lo alto(Vertical) o en forma apaisada, a lo ancho de la página (Horizontal).

Cómo modificar los márgenes y encabezados de columnas

Si en la ventana de diálogo de la figura 3.2 pulsa-mos el botón Configurar,aparecerá el cuadro de la figura 3.5.

4 7

mailxmail - Cursos para compartir lo que sabes

Page 48: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura: 3.5

Allí podemos cambiar los valores de los cuatro már-genes. Los cambios aparecenreflejados en forma gráfica en el recuadro Ejemplo.

En el caso de imprimir hojas de datos, con la casilla Encabezados de impresiónhabilitada, se envían los encabezamientos de columna a cada página; en cambio, sila apagamos, los encabezados se imprimen sólo una vez, al comienzo del listado.

4 8

mailxmail - Cursos para compartir lo que sabes

Page 49: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

29. Cómo visualizar nuestro trabajo antes deimprimir

Es conveniente que, antes de enviar la información a la impresora, nos aseguremosque el resultado será el que estamos esperando y, para ello, nada mejor que ver eltrabajo previa-mente en la pantalla.

 Pulsando el botón de Vista previa de impresión traeremos a la pantalla unaimagen similar a la que tendrá el trabajo una vez impreso.

Cómo imprimir en otra PC que no disponga de Access

Muchos usuarios que no disponen de impresora en su instalación se harán estapregunta. Este problema se resuelve utilizando la opción Imprimir en un archivo.

Activando esta casilla (cuadro 3.2), cuando pulsemos el botón Aceptar se nossolicitará un nombre para el archivo en el que se guardará la imagen del resultadoimpreso. El formato del mismo dependerá del controlador (driver) de impresora quetengamos seleccionado como impre-sora activa para Windows, y el mismo deberáser adecuado para la impresora en la que imprimi-remos; debemos consultar ladocumentación de Windows a fin de instalar el controlador de impre-sora quecorresponda a la PC en donde imprimiremos.

Luego, copiando este archivo a un disquete, podemos llevarlo a otra PC conimpresora e imprimirlo escribiendo en la línea de DOS (o en una sesión DOS dentrode Windows):

COPY nnnnn/B LPT1

En donde nnnnn representa el nombre que dimos al archivo de impresión cuando logene-ramos en Access.

El parámetro / B puede no ser necesario según el caso, dependiendo del tipo dearchivo que se haya generado, por lo que recomendamos probar con o sin el mismo.Por ejemplo, en el caso de generar para una impresora Postscript bajo Windows95/98 e imprimir con una sesión de DOS también bajo Windows 95/98, no esnecesario y si se trata de una impresora Hewlett Packard ó Epson de chorro de tintatampoco.

4 9

mailxmail - Cursos para compartir lo que sabes

Page 50: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

30. Cómo agregar un campo (columna) a la tabla

Es muy sencillo agregar campos a una tabla, y esto es posible inclusive si la tablatiene ya datos cargados. Trabajaremos con el mismo cuadro que utilizáramos paradefinir la tabla. Seguramente habremos notado que para que la dirección seacompleta está faltando un campo para la Provincia, que es justamente lo queagregaremos.

Ingresaremos entonces a Access y abriremos la base de datos Practica.mdb.

El modo diseño y el modo hoja de datos

Como ya vimos, el cuadro de diálogo Base de datos (figura 1.8 del Capítulo 1)dispone de un botón para Diseñar o modificar la estructura de una tabla, pero existeotro modo de acceder al modo diseño.

 

 

Toda vez que accedamos a un formulario, un informe, o una tabla, como en estecaso, aparecerá en la barra de botones, a la izquierda un icono tipo lista como elque se muestra en la figura 3.6.

Pulsando donde se indica, se abrirá la lista que aparece debajo; allí podremos elegirel modo Diseño si estamos en el modo datos (tabla) o como modo Datos si estamosmodificando el objeto (en modo diseño).

Los modos de trabajo posibles dependen del objeto de que se trate; trabajando conformularios y con tablas se mostrarán dos modos, y con informes y consultas tres;pero no debemos equivocarnos, lo que nos muestra el icono no es el modo en quese encuentra actualmente el objeto, sino el modo alternativo al que pasaremos si lopulsamos.

Esto significa que podemos cambiar de un modo al otro, lo que nos permite unaforma muy rápida de retocar el diseño si, al ingresar los datos, notamos que algo noestá bien, como por ejemplo tipos de datos, longitudes, campos que faltan, etc.

5 0

mailxmail - Cursos para compartir lo que sabes

Page 51: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

 

1.       En el cuadro Base de datos pulsemos doble clic sobre Clientes, con lo cualse abrirá la mencionada tabla en el modo hoja de datos (figura 2.6 de Capítulo 2).Lo que haremos a continuación será modificar el diseño de la tabla; para ello...

 

2.       Pulsemos el botón de diseño (en el mismo cuadro Base de datos), con lo queaparecerá la cuadrícula de diseño para esta tabla (que ya vimos en la figura 2.3) yestaremos en condiciones de modificar cualquier detalle de la estructura de la tablao agregar campos, que es lo que haremos a continuación.

 

3.       Agregaremos ahora el campo para la provincia. Para ello nos ubicamos en laprimera columna del primer renglón libre (debajo de TELEFONO) y escribimos allí PROVINCIAPROVINCIA como nombre del campo.

 

4.       Pulsemos Tabulador para pasar a la definición del tipo de dato.

 

5.       Para el tipo de dato seleccionamos Texto y en el recuadro Propiedades delcampo le asignamos un tamaño de 22 caracteres.

 

6.       Pulsemos sobre la propiedad Requerido (en el sector inferior) yseleccionemos Sí.

 

7.       Pasando a Descripción con Tabulador escribimos "Nombre de la Provincia".

 

8.       Pulsemos el botón grabar para guardar estos últimos cambios.

 

El campo que agregamos siempre debe contener datos, debido a que lo definimoscon la propiedad Requerido. Cuando grabemos la tabla, Access verificará lacoherencia de todos sus datos y encontrará un error; un campo Requerido seencuentra vacío, ya que no hemos ingresado aún el nombre de la provincia enningún registro. El error está indicado en el cuadro de la figura 3.7, pues el campo ProvinciaProvincia se destaca en negro.

 

9.       Contestaremos No, ya que conocemos cuál es el motivo del error que semuestra; de esta forma la tabla será grabada con los cambios que hemos hecho ensu diseño.

 

5 1

mailxmail - Cursos para compartir lo que sabes

Page 52: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 3.7

 

 10.   Pulsando el botón correspondiente en la barra de botones o bien el botón Abrir, del cuadro de diálogo Base de datos, pasemos a modo ingreso de datos(hoja de datos) y ya estaremos en condiciones de completar el campo agregado paratodos los registros, colocándole a cada uno la provincia correspondiente, si bien noharemos esto por ahora.

 

En este caso, como en muchos otros en los que tengamos que ingresar datos que serepiten, trabajaremos menos utilizando el Portapapeles, por lo tanto conozcamosprimero el Portapapeles para después ingresar los datos que faltan, con muchomenos trabajo.

5 2

mailxmail - Cursos para compartir lo que sabes

Page 53: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

31. Qué es el Portapapeles

Se trata de un área de memoria que se utiliza bajo control de Windows, en la quepodemos guardar temporariamente piezas de información (textos, valores,imágenes, etc.) para luego inser-tar esa información en la misma aplicación o encualquier otra aplicación Windows que sea capaz de manejar ese tipo de objetos.

Para colocar un dato en el portapapeles previamente debemos seleccionarlo(resaltarlo). Aunque en el próximo ejercicio sólo necesitaremos seleccionar campos,veremos cómo se selec-ciona, desde parte de un campo, a toda una tabla completa.

Cómo seleccionar datos

Seleccionar parte de un campo

Utilizando el mouse podremos seleccionar parte de un campo pintando los datos.

Seleccionar un campo

Cuando explicamos el modo edición y el modo reemplazo aprendimos a resaltar uncampo (seleccionarlo) pulsando F2 o bien pulsando a su izquierda con el mouse; elpuntero se convierte en una cruz.

Seleccionar un registro

Teniendo el campo seleccionado podemos pulsar Shift y la Barra espaciadora, paraselec-cionar el registro actual.

Para hacer esto mismo con el mouse nos ubicamos a la izquierda del registro sobre

el botón de control; el cursor se convierte en  y pulsamos.

Seleccionar más registros

Estando en el registro actual seleccionado podemos pulsar Shift y las teclasdireccionales Arriba y Abajo para seleccionar varios registros.

Para seleccionar varios registros con el mouse seleccionamos el primero con  ymanteniendo presionado el mouse nos desplazamos hacia abajo.

Seleccionar toda la tabla

Estando en cualquier parte de la tabla pulsamos Control + A.

Para hacerlo con el mouse pulsamos en el botón de selección de tabla.

Nos valdremos ahora del portapapeles para ahorrarnos el escribir la palabra Capitaly BsAs en cada registro. Sigamos estas instrucciones:

1. Pulsemos en la columna de la PROVINCIA en la primera casilla, en dondecorresponde escri-bir Capital, y escribamos esa palabra.

5 3

mailxmail - Cursos para compartir lo que sabes

Page 54: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

2. Pulsemos F2 y la palabra escrita quedará resaltada con fondo negro.

3. Pulsemos Control + C para colocar una copia del texto resaltado en elportapapeles.

4. Pulsemos en el próximo campo de esta columna que corresponda a un registro deCapital (obviamente, son todos aquellos cuya localidad es también Capital).

5. Pulsemos Control + V para insertar la copia del portapapeles en el nuevo campo.

6. Pulsemos nuevamente en el próximo campo que lleve Capital y luego Control + V.Repitiendo sólo este último paso coloquemos la leyenda "Capital" a todos losregistros en los que correspon-da.

7. Escribamos BsAs en el primer campo en que corresponda y luego, con elportapapeles, co-piémoslo a los registros restantes de la provincia de Buenos Aires.

5 4

mailxmail - Cursos para compartir lo que sabes

Page 55: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

32. Cómo mover o reubicar una columna de la tabla

Una vez definida la tabla (o durante su definición), podemos reacomodar cualquierade sus campos, cambiando su ubicación. Por ejemplo, el campo TELEFONO nos haquedado entre LO-CALIDAD y PROVINCIA. Practicaremos ahora reacomodando esascolumnas y algunas más que necesitaremos para futuros ejercicios.

El cambio que haremos no afectará a los datos de la tabla ni a ninguna consulta,formulario o in-forme (si los tuviéramos) que tomen datos de campos de esa tabla.

Podemos reubicar campos, tanto en diseño como en la presentación de hoja dedatos. Por lo tanto, y con el fin de practicar en ambos modos, moveremos una delas columnas en el modo diseño, pasaremos al modo hoja de datos y haremos luegolos propio con la otra en este modo.

En modo diseño

1. En el ejercicio anterior habíamos quedado frente a la hoja de datos de clientes;pulsemos aho-ra el botón Diseño.

2. Pulsemos en el sector de campos del renglón de DIRECCIÓN para seleccionarlo. Elrenglón quedará resaltado en video inverso; liberemos el botón del mouse.

3. Pulsemos nuevamente sobre el selector y, sin soltar, arrastrémoslo un renglónhacia abajo, de modo que quede debajo de LOCALIDAD. Liberemos el mouse yveremos el campo en una nueva posición.

En modo hoja de datos

1. Pasemos a modo hoja de datos.

Antes de pasar a este modo, Access nos preguntará si guardamos la tabla (con loscambios); pul-samos Sí.

Para mover el campo en el modo hoja de datos:

2. Pulsemos en el rótulo de la columna PROVINCIA para seleccionarla. La columnaquedará resaltada en video inverso; liberemos el botón del mouse.

3. Pulsemos nuevamente sobre el rótulo y, sin soltar, arrastrémoslo hacia laizquierda hasta que aparezca una línea negra gruesa en el lugar en donde deseamosreubicar la columna y allí li-beremos el mouse.

5 5

mailxmail - Cursos para compartir lo que sabes

Page 56: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

33. Cómo eliminar una columna

Esta operación eliminará una columna de la tabla o, lo que es lo mismo, el campocorres-pondiente de cada uno de sus registros. Podemos hacer esto tanto en mododiseño como en mo-do datos.

1. En el modo en que nos encontremos se-leccionemos la columna de igual maneraque lo hicimos para desplazarla.

2. Si nos encontramos en modo Diseño pulsemos la tecla Suprimir; y si se trata delmodo Datos pulsemos sobre la selección con el botón derecho y elijamos Eliminarcolumna. Access pedirá confirmación (figura 3.8).

Figura 3.8

3. Pulsemos Sí, y la columna correspondiente habrá desaparecido de la tabla.

4. Pulsemos el botón Deshacer o bien Control + Z y el campo eliminado reaparecerá.Podemos hacer esto mismo con la opción Eliminar filas, en el menú EDICIÓN.

5 6

mailxmail - Cursos para compartir lo que sabes

Page 57: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

34. Cómo deshacer un comando

Si luego de efectuar distintos comandos observamos la opción Deshacer del menú EDI-CIÓNEDI-CIÓN, veremos que la misma cabía de acuerdo con la última operaciónefectuada. Así podremos encontrarnos con la opción Deshacer entrada, que nospermitirá corregir la edición de los datos almacenados en un campo, o Deshacercampo activo o Deshacer registro activo (equivalente a la tecla Escape) para anulartodos los cambios si aún no hemos abandonado el registro o bien, como ocurrirá eneste caso, la opción será Deshacer eliminar.

Luego de eliminar esta columna, si intentamos salir de la tabla o cambiar el modo adiseño u hoja de datos se nos preguntará si deseamos guardar los cambios dediseño efectuados en la tabla. Si estamos de acuerdo con los cambios contestaremosSí. Hecho esto, la tabla ha sido guardada con los cambios y ya no es posible

deshacer la operación para restituir la columna eli-minada.

5 7

mailxmail - Cursos para compartir lo que sabes

Page 58: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

35. Cómo modificar el ancho de las columnas

Si recorremos la tabla Clientes veremos que nuestros datos no siempre cabenperfectamen-te en las celdas que les destinamos. Algunas columnas tendrán unancho insuficiente y otras po-drán tener un ancho excesivo para todos los datosque corresponden a esa columna.

En cualquiera de los dos casos podremos ajustar fácilmente el ancho de lascolumnas a los datos que éstas contengan; para ello haremos lo siguiente:

1. Abramos la tabla en modo hoja de datos.

2. Sin pulsar ningún botón, ubiquemos el puntero del mouse entre los rótulos(encabezados) de columna NOMBRE y DIRECCIÓN (el puntero tomará el aspecto deuna doble flecha).

3. Pulsaremos y, manteniendo presionado el botón del mouse, desplazaremos haciala derecha hasta ver que el contenido de la columna NOMBRE cabe perfectamente enla misma. Repeti-remos luego la operación con cada columna.

4. El nombre de campo CODCLI es muy extenso comprándolo con los datos quecontiene la co-lumna, en consecuencia, lo acortaremos llevando el señalador entre CODCLICODCLI y NOMBRE; pul-sando allí y, manteniendo presionado el botón del mouse,desplazamos la línea hacia la iz-quierda.

5. Por último, guardemos los cambios en la tabla.

Cómo ampliar un campo; el comando Zoom

Si a pesar de haber ensanchado la columna, los datos aún exceden el tamaño de lamisma, podemos recurrir al comando Zoom. Este comando es aplicable a cualquiercampo de ingreso de datos, ya sea dentro de un formulario o en un formato detabla, en la propia tabla o en la consulta.

1. Pulsemos, por ejemplo, en alguno de los campos de la tabla para seleccionarlo yluego pulse-mos Shift + F2; aparecerá el cuadro de la figura 3.9.

Figura 3.9

Disponemos ahora de un espacio casi ilimitado (observemos las barras de

5 8

mailxmail - Cursos para compartir lo que sabes

Page 59: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

desplazamiento) para ver, ingresar o corregir los datos contenidos en el campo.

Cómo ajustar automáticamente una columna

Podemos establecer o modificar el ancho de las columnas mediante el cuadro dediálogo Ancho de columna. Veamos cómo:

1. Pulsemos sobre el rótulo de la columna que queremos ajustar, la misma quedaráselecciona-da.

2. Pulsemos sobre la selección con el botón derecho y del menú emergenteseleccionemos Ancho de columna. Aparecerá el cuadro de diálogo de la fi-gura3.10.

Allí se muestra el ancho actual de la columna, y podemos cambiarlo por cualquiervalor para estable-cerlo así en forma numérica.

Si activamos la casilla Ancho estándar y pulsamos Aceptar, la columna tomará elancho original (el que tenía cuando creamos el campo) y que Access calculaconsiderando únicamente el ancho que ocupa el rótulo de la misma.

Si en lugar de Aceptar, pulsamos el botón Ajuste perfecto, el ancho de la columnase ajus-tará al mínimo necesario, según los datos que ésta contenga, o al rótulo dela misma.

5 9

mailxmail - Cursos para compartir lo que sabes

Page 60: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

36. Cómo cambiar el tamaño de un campo

Vimos que se puede cambiar el ancho de las columnas simplemente desplazando lalínea divisoria entre las mismas, pero ¿cómo hacemos para cambiar la capacidad delcampo?. Una vez creada la tabal podemos acceder nuevamente al modo diseño ycambiar allí el tamaño del campo (la cantidad de caracteres que éste puedecontener).

Esta operación es muy sencilla, pero debemos considerar que si reducimos eltamaño de un campo, podría ocurrir que los datos contenidos no quepan en elnuevo tamaño, y en ese caso, de seguir adelante con el cambio, se perdería parte dela información contenida en dicho campo.

Probemos reducir el campo Localidad.

1. Pulsemos el botón Modo diseño, para acceder a la definición de la estructura dela tabla.

2. Pulsemos sobre Localidad. En el cuadro inferior de Propiedades aparecerá en elprimer pa-rámetro, Tamaño del campo, el valor 50, que es el estándar paracampos de texto, estableci-do cuando creamos la tabla.

3. Cambiemos este valor por otro menor (por ejemplo 20).

4. Pulsemos el botón Grabar para guardar este cambio en la estructura de la tabla.

Aparecerá una advertencia indicándonos que hemos reducido el tamaño de uncampo y po-drían llegar a perderse datos.

5. Como sabemos que la totalidad de los datos de esa columna tienen menos deveinte caracte-res de longitud, pulsaremos Sí.

6. Volvamos al modo hoja de datos para ver el cambio y luego, repitiendo los pasosde este ejer-cicio, volvamos a dejar el tamaño en 50.

6 0

mailxmail - Cursos para compartir lo que sabes

Page 61: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

37. Cómo cambiar el rótulo de una columna

En este curso aprenderemos a crear consultas y formularios que, como explicamos,no hacen más que mostrarnos la información contenida en las distintas tablas de laaplicación. Esta información es tomada de las columnas de las tablas en base alnombre o etiqueta que se mues-tra en el encabezado de la tabla que es la mismainformación disponible en la columna Nombre del campo en la grilla diseño.

Pero en este caso ocurre lo mismo que vimos cuando cambiamos el nombre de unobjeto de la base de datos: Access se encarga de ajustar automáticamente todos losobjetos dependientes de esta tabla para que hagan ahora referencia al nuevonombre.

Cambiemos un rótulo en modo diseño

1. Accedamos al modo diseño de la tabla Clientes y en la co-lumna Nombre delcampo pulsemos en el nombre de algún campo, por ejemplo sobre LOCALIDAD y,del mismo modo que aprendimos a modificar los datos de un campo, cam-biemosel nombre de ese campo por PARTIDO.

2. Ahora, volvamos al modo hoja de datos para comprobar los cambios. (Apareceráel cartel de la figura 3.11 indicándonos que debemos guardar la tabla antes deseguir).

3. Contestemos pulsando sobre Sí.

En modo hoja de datos

4. Ya en el modo hoja de datos seleccionemos la columna Partido pulsando sobre surótulo y luego volvamos a pulsar cualquier parte de la columna con el botónderecho. Aparecerá un menú emergente de columna.

5. De allí seleccionemos la última opción: Cambiar nombre de columna. Apareceráresaltado sólo el rótulo de la columna.

6. Ya sabemos como editar un campo; cambiemos este rótulo volviendo a escribir ensu lugar Localidad.

Aquí no se nos pide que guardemos la tabla, aunque es recomendable en este casopulsar el bo-tón Guardar.

Cómo asignar un alias

6 1

mailxmail - Cursos para compartir lo que sabes

Page 62: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Utilizando la propiedad Título que veremos en el Capítulo 8 cuando tratemos eltema de las propiedades de los campos tipo texto, podemos asignar al campo unalias, más representativo o explícito pero conservando el nombre interno del campo.Este alias se presentará toda vez que abramos la tabla (o consultas creadas en basea la misma) en modo datos, pero seguirá siendo el nombre original en el modo diseñodiseño.

6 2

mailxmail - Cursos para compartir lo que sabes

Page 63: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

38. Cómo crear una lista de ayuda para una columna

Si un determinado dato contiene valores posibles o contiene algunos valores de usofre-cuente, en ambos casos podemos elaborar una lista con esos valores, la quepodremos abrir lue-go para seleccionar alguno de ellos. Utilizando este tipo delistas cuando sea posible, cambiare-mos la tarea de tipear por la de elegir.

Creemos una lista para el campo Provincia; este ejemplo es particularmenteadecuado, ya que se trata de un dato con una cantidad limitada y fija de valores y espoco probable que deba-mos cambiarlos en lo futuro.

Una vez establecida esta propiedad será heredada por todas las consultas yformularios que to-men ese dato de la tabla. Si optamos por no colocar listas en loscampos de la tabla, veremos que podemos establecerlas también en consultas yformularios:

1. Accedamos al modo diseño de la tabla Clientes y pulsemos en el campo Provinciapara selec-cionarlo.

2. En el cuadro inferior de parámetros pulsemos la solapa Búsqueda. Se mostrará laprimera opción (figura 3.12).

Figura 3.12

3. Si abrimos la lista correspondiente aparecerán las opciones de la figura 3.13.Seleccionemos Cuadro de lista.

Figura 3.13

Notaremos que el cuadro de parámetros se ha extendido como lo muestra la figura3.14. En el segundo renglón de este cuadro, el parámetro Tipo de origen de la filanos permite definir de dónde se tomarán los datos que se mostrarán en la lista.

4. Pulsemos sobre el botón de lista para mostrar sus posibilidades (figura 3.15) yseleccionemos Lista de valores.

6 3

mailxmail - Cursos para compartir lo que sabes

Page 64: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Podríamos elegir la opción Tabla o Consulta y en ese caso deberíamos crear unatabla de provincias y asignarla como origen de los datos.

Como elegimos Lista de valores, en el siguiente campo, Origen de la fila (ver figura3.14), debemos ingresar la lista de textos que formarán la lista, separados por puntoy coma. Para facili-tarnos esta tarea utilizaremos el comando Zoom:

5. Pulsemos sobre el campo referido y luego Shifrt + F2. En la ventana de Zoomingresemos los datos de la figura 3.16 y pulsemos luego Aceptar.

Figura 3.16

6. Verifiquemos el resto de los parámetros de modo que coincidan con los que semuestran en la figura 3.14.

El parámetro Número de columnas especifica qué cantidad de columnas semostrarán en la lista. Si el texto a seleccionar en la lista es autoexplicativo (como ennuestro caso), dejaremos el valor preestablecido (1), en cuadro de la figura 3.14,para crear una lista de columna única como la que muestra la figura 3.17.

6 4

mailxmail - Cursos para compartir lo que sabes

Page 65: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

6 5

mailxmail - Cursos para compartir lo que sabes

Page 66: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

39. Cómo crear una lista a dos columnas

Si se trata de un código, podemos crear una lista a dos columnas; la primera,asociada al campo de la tabla, servirá para mostrar y elegir el código; y la segunda,para mostrarnos el signifi-cado del mismo. Haremos esto con la Provincia; en lugardel nombre completo guardaremos un código de la provincia. Necesitaremosentonces una lista a dos columnas como la que vemos en la figura 3.18, en donde semuestra el código (ése es verdaderamente el dato) y a su derecha la descripción quenos permitirá elegir dicho código.

Cambiemos el nombre y el tamaño del campo Provincia

El primer paso de esta transformación será cambiar el nombre del campo, sutamaño y atri-butos, mediante el siguiente procedimiento:

1. Pasemos al modo Diseño, resaltemos el nombre del campo Provincia ycambiémoslo por CODPROVIN. Este cambio es sólo para que se entienda mejor elcontenido del campo (ahora será un código y por lo tanto se entenderá más fácil silo llamamos CodProvin).

2. Estando seleccionado CodProvin, en el cuadro inferior de propiedadescambiemos el primer parámetro, Tamaño del campo, colocando 2 en lugar de 50.

3. En el campo Formato coloquemos el signo > .

El símbolo > en formato significa que toda entrada que se coloque en ese capo seráconvertida a MAYÚSCULAS.

Este cambio conlleva la reducción del tamaño de esta tabla (pensemos que si lamisma tu-viera 10.000 registros, en cada uno de ellos estaremos ocupando sólo 2bytes en lugar de 50 y por lo tanto el tamaño de la tabla se reducirá en (10.000 x48 = 480.000 = 480Kb) además del tra-bajo de tipeo que ahorraremos al usuario.

4. Pulsemos el botón Guardar para guardar este cambio en la estructura de la tabla.Aparecerá una advertencia indicándonos que hemos reducido el tamaño de uncampo y podrían llegar a perderse datos).

5. En este caso no nos preocupa perder la información porque ingresaremosnuevamente los datos de la lista; pulsemos Sí.

Codifiquemos ahora la provincia

El siguiente paso será cambiar los datos del parámetro Origen de la fila.

1. Accedamos nuevamente a Clientes, en modo diseño, y pulsemos sobre la líneacorrespon-diente a CodProvin para seleccionar este campo.

2. Pulsemos abajo en la solapa Búsqueda.

No necesitamos definir los parámetros referentes a tipo de origen porque ya lohicimos cuando decidimos transformar esa columna en un control de tipo lista en elejercicio anterior; cambiaremos entonces los datos del parámetro Origen de la filareemplazando el nombre de las provincias por código y nombre, con miras a crearuna lista a dos columnas.

3. Pulsemos sobre le parámetro Origen de la fila, pulsemos luego Shift + F2 para

6 6

mailxmail - Cursos para compartir lo que sabes

Page 67: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

3. Pulsemos sobre le parámetro Origen de la fila, pulsemos luego Shift + F2 paraacceder a la ventana Zoom, como lo hiciéramos anteriormente.

Aparecerá el texto anterior con los nombres de las provincias, que es el quetenemos que reemplazar.

4. Editando el campo de la manera que ya sabemos intercalaremos en lo ya escritolos códigos de las provincias de la siguiente forma:

BA;Buenos Aires;CF;Capital;CA;Catamarca;CH;Chaco;CU;Chubut;CO;Córdoba; ...etc.

5. Asignemos 2 en Cantidad de columnas y escribamos 1;2 en Ancho decolumnas para que se muestre para cada provincia el código con un ancho de 1 cmy la descripción con un ancho de 2 cm.

Los valores ingresados se distribuirán en forma secuencial, de manera que el primervalor se ubicará en la columna 1, el segundo en la 2, el tercero en la 1 de lasiguiente fila, el cuarto en la columna 2 de esa misma fila y así sucesivamente(figura 3.18)

6. Si fuera necesario, ensanchemos en modo hoja de datos el ancho de la columna CodProvinCodProvin, para obtener una presentación de lista como la de la figura.

Ya estamos en condiciones de utilizar la lista para ingresar datos. Del mismo modoselec-cionaremos el dato, pero esta vez lo que se cargará en el campo es elcontenido de la primera columna, es decir el código de la provincia elegida.

7. De esta forma ingresemos para cada registro el código de provinciacorrespondiente.

6 7

mailxmail - Cursos para compartir lo que sabes

Page 68: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

40. Cómo copiar objetos entre distintas bases Access

Access no permite abrir más de una base de datos a la vez pero sí podemos activarel pro-grama dos veces (dos procesos independientes) y abrir en cada uno de ellosuna base distinta.

Abrimos entonces dos aplicaciones Access (llamar a Access dos veces desde el menúde Windows), en la primera de ellas abrimos la base que contiene el/los objetos y enla segunda la base de datos que recibirá a esos elementos.

Estando en el cuadro de diálogo Base de datos (recordemos; figura 2.4 del Capítulo2) abierto en ambas, simplemente pulsaremos y arrastraremos los objetos entre uncuadro y otro. Este intercambio no tiene porqué ser en un solo sentido; podemoscopiar libremente objetos de una base a otra.

6 8

mailxmail - Cursos para compartir lo que sabes

Page 69: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

41. Cómo importar tablas de otras aplicaciones

Es posible incluir, por ejemplo, bases de datos dBASE como tablas de Access.Obtendre-mos así una copia de la base de datos dBASE, la que pasará a ser unatabla más dentro de la base Access que s encuentre abierta en ese momento.

Haremos un ejercicio suponiendo que disponemos de una tabla tipo dBASE III Pluscuyo nombre de archivo es MUESTRA.DBF.

1. Estando la base de datos PRACTICA.MDB abierta, seleccionemos la opción Obtener datos externos del menú ARCHIVO. Aparecerá a la derecha un pequeñomenú con dos alternativas (figura 3.19).

Figura 3.19

2. Seleccionemos Importar y, luego de un breve lapso en el que Access prepara losfiltros de importación, aparece el cuadro de la figura 3.20.

Figura 3.20

También podemos acceder al comando Importar pulsando con el botón derechodentro del cua-dro de diálogo Base de datos.

Se encuentra inicialmente seleccionado el tipo Microsoft Access (MDB), por lo que

6 9

mailxmail - Cursos para compartir lo que sabes

Page 70: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Se encuentra inicialmente seleccionado el tipo Microsoft Access (MDB), por lo queel cua-dro nos muestra las bases de datos Access que se encuentran en la carpetacorriente, pero si pulsamos el botón de control del campo Tipo de archivo (verfigura 3.20), se mostrará la lista de tipos de archivos que Access es capaz deimportar y convertir a su propio formato.

3. Seleccionemos el ítem dBASE iii (*.dbf); en el cuadro de objetos se mostrarántodos los ar-chivos del tipo .dbf que se encuentren en la carpeta activa. Podemosahora buscar el archivo de base de datos .dbf en cualquier carpeta o unidad queesté a nuestro alcance.

4. Seleccionemos el supuesto archivo EMPLEADOS.DBF y pulsemos Importar. Uncartel nos avisará que la tabla ha sido incorporada con éxito (figura 3.21).

Podría ocurrir que la tabla no pueda ser importada por poseer algún objeto oatributo no soportado por el importador; tal será el caso si dicha tabla incluyeraalgún campo tipo Memo. Para salvar este inconveniente, podríamos acceder a latabla con su sistema original (por ejemplo dBASE III) y eliminar el campo Memo paraluego intentar nuevamente la importación.

5. Pulsemos Aceptar, la ventana de la figura 3.20 perma-necerá a la vista,permitiéndonos importar otros archi-vos del tipo seleccionado, o bien cambiar eltipo, eli-giendo uno nuevo en la lista de abajo.

6. Por último pulsaremos Cerrar. Esto nos devolverá a la pantalla de trabajo, endonde podremos abrir la nueva tabla para utilizarla.

7 0

mailxmail - Cursos para compartir lo que sabes

Page 71: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

42. Cómo vincular una tabla de otros sistemas

Lo que hicimos recién fue crear una nueva tabla en la base Access copiando datos deun archivo externo. Adjuntar una tabla es, en cambio, utilizar los datos de la mismabase de datos externa y actualizarlos allí mismo. Esto permite compartir informacióncon otros sistemas, incluso de distinto origen; por ejemplo, podemos utilizar unatabla de un sistema que trabaja en FoxPro 2.6 para DOS, compartiendoactualizaciones y consultas en línea con el programa que funciona bajo ese sistema.

Podríamos utilizar la opción Vincular tablas del menú que se muestra en la figura3.19; también podemos llamar a la opción de vincular (o la importar) con el botónderecho del mouse.

1. Pulsemos con el botón derecho dentro del cuadro Base de datos y, del menúque aparece, seleccionemos la opción Vincular tablas.

Aparecerá un cuadro de seleccionar archivo similar al de la figura 3.20, pero quelleva como título Vincular.

2. Observemos los distintos tipos de archivo con los que podemos trabajar desdeAccess (del mismo modo que lo hicimos en el caso de la importación), yseleccionemos, como antes, la opción dBASE III (o la que corresponda al formato delos archivos que deseamos vincular).

3. Ubiquemos el objeto .dbf correspondiente y pulsemos el botón Vincular.

Un cuadro de mensaje similar al de la figura 3.21 nos informará que la tabla se havinculado con éxito; pulsemos Aceptar.

4. Podemos así vincular todas las tablas que sean necesarias para luego pulsar elbotón Cerrar.

En el cuadro Base de datos aparecerá la tabla indicada con el icono representativode la aplicación de origen.

Podemos aplicar a estas tablas vinculadas, todo lo que aprendimos y aprenderemosen el resto de este curso, aunque lógicamente, ciertos detalles de diseño no sepodrán modificar por tratarse de una tabla externa.

7 1

mailxmail - Cursos para compartir lo que sabes

Page 72: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

43. Cómo utilizar la información de Access en otrasaplicaciones Office

Podemos colocar la información de una tabla o consulta de Access en una planillaExcel o en un documento de Word con la modalidad que se describe a continuación.En ambos casos podemos seleccionar el icono que representa a la tabla (para copiarla tabla completa) o bien abrir la tabla y seleccionar, pulsando sobre el bordeizquierdo (selectores de registro) y llevando hasta resaltar en negro los registros quedeseamos copiar; veremos ambos métodos.

Pegar la tabla completa

1. En el recuadro Base de datos pulsemos el icono de alguna tabla o consulta (sólopara resal-tarlo).

2. Pulsemos Control + C para copiar esa tabla al portapapeles.

3. Abramos el documento Word o la planilla Excel y pulsemos en el lugar en dondedeseamos insertar la información.

4. Pulsemos Control + V para pegar la información.

Si pegamos en un documento de Word, habremos creado una tabla Word (conencabezados y recuadros) que contiene la información de la tabla o consulta Access,tal como lo muestra la figura 3.22.

Figura 3.22

Si, en cambio, el documento receptor es una planilla de Excel, la información de latabla Ac-cess se extenderá a partir de la celda activa hacia la derecha y hacia abajoocupando celdas con-tiguas, como lo muestra la figura 3.23.

Debemos tener la pre-caución de que haya suficien-te espacio a partir de la celda

7 2

mailxmail - Cursos para compartir lo que sabes

Page 73: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

activa ya que si hubiera algu-na celda con datos en el área a ocupar, la misma seráso-breescrita con los datos de la tabla.

Figura 3.23

Pegar parte de una tabla

Pulsaremos sobre el sector izquierdo de la tabla (selector de registro) paraseleccionar el primero de los registros a copiar; sin soltar arrastraremos hacia abajohasta resaltar (en negro) todos los registros que deseamos copiar.

Repetiremos luego los pasos 2 a 4 del ejercicio anterior.

Cómo combinar información de la tabla (mailing)

Resulta sencillo crear correspondencia automática en Word con datos de una tabla oconsul-ta Access.

Cómo analizar con Excel los datos de la tabla o consulta

Podemos transferir fácilmente una tabla (o consulta) a una hoja de cálculo Excelmediante el comando Analizar con Excel. Este comando, que se encuentra en Vínculos con OfficeVínculos con Office (subme-nú de HERRAMIENTAS), nos pone en la pantalla unaplanilla de cálculo o libro Excel, con la in-formación de la tabla o consultaseleccionada. Allí podremos analizar, acumular, calcular, etcétera, aplicando todaslas facilidades de Excel con esa información.

Para que esta opción del menú se muestre como activa, deberá estar abierta la tablao con-sulta a transferir, o bien sólo seleccionada en el cuadro de diálogo Base dedatos; recién entonces podremos activar el comando. El mismo creará una copia dela información contenida en la tabla original, información que quedará grabadacomo un nuevo archivo XLS en el momento de produ-cirse esta copia, siendo ésta laextensión de archivo más característica de los libros de Excel.

El archivo llevará el mismo nombre que la tabla que lo originó (con el agregado della exten-sión XLS correspondiente), razón por la cual si activamos este comandomás de una vez con la misma tabla, se nos pedirá autorización para sobrescribir elmencionado archivo.

7 3

mailxmail - Cursos para compartir lo que sabes

Page 74: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

44. Cómo buscar un dato

Utilizando los datos que cargamos en l tabla de clientes mostraremos cómo seutilizan las herramientas de manejo de información que posee Access. Veremos aquílos botones de la barra de herramientas de modo formulario que aparece debajo dela barra de menú cuando se abre alguna tabla, consulta o formulario (figura 4.1).

Figura 4.1

Cómo buscar un dato

Aunque en este capítulo y en lo subsiguientes ordenaremos los registros de lastablas de va-rias maneras, todavía no hemos establecido ningún orden paranuestros datos y por lo tanto no podremos aún ubicar registros por orden alfabéticoni numérico. Esta situación nos resultará ade-cuada para probar los distintos filtrosy modos de búsqueda que estudiaremos en este capítulo.

Pongamos ahora por ejemplo la localidad; dado que los registros no estánordenados por ese dato, deberíamos recorrer toda la tabla para ubicar clientescorrespondientes a una determi-nada localidad.

Eso mismo es lo que hace Access con su herramienta de buscar. Veamos:

1. Estando en la base PRACTICA pulsemos doble clic sobre CLIENTES. Esto nosabrirá la ta-bla en el modo hoja de datos.

2. Pulsemos en la columna localidad de cualquiera de los registros de la tabla.

3. Pulsemos el botón Buscar . Aparecerá en pantalla el cuadro de la figura 4.2.

Notemos que en campo Buscar en aparece seleccionada Localidad, que es lacolumna en donde se encuentra el cursor.

4. en el campo Buscar de este cuadro escribamos Palomar.

Al tener cargado un criterio de búsqueda cambia el grisado del botón Buscarsiguiente, mostrán-dose ahora en caracteres sólidos.

5. Pulsemos este botón para hallar el primer registro que cumpla con el criterio debúsqueda.

7 4

mailxmail - Cursos para compartir lo que sabes

Page 75: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 4.2

Access deja indicado como registro activo al primera de los registros que cumplecon la condición de búsqueda y además muestra resaltado el texto encontrado.

6. Pulsemos nuevamente Buscar siguiente para hallar el próximo registro quecumple la condi-ción.

Así pulsamos una y otra vez este último botón para hallar uno a uno los registrosque buscamos. Llegará el momen-to en que Access no encuentre más registros paraesa condición de búsqueda, lo que indicará mediante el cartel de la figura 4.3.

7. Pulsemos Aceptar y volveremos al cuadro de la figura 4.2 en condiciones de hacernuevas búsquedas.

Cómo buscar por similitud

En la figura 4.2 podemos ver que el campo Coincidir: consiste en una lista deopciones, de las que se encuentra seleccionada la segunda. Como la misma indica: "Hacer coincidir todo el campo", la condición de búsqueda es que coincidatotalmente el valor del campo con el literal que se ha colocado en el campo Buscar.

Suele ocurrir que no sabemos exactamente qué estamos buscando; por ejemplo, sien nues-tra tabla algunos registros tienen como localidad la abreviatura Cap y otrosla palabra completa Capital, no encontraremos a todos los registros quenecesitamos en una sola búsqueda; usemos entonces la tercera opción, Comienzodel campo.

1. Escribamos en el campo Buscar: san

2. Pulsemos el botón Más (figura 4.2) para extender el cuadro como lo muestra la

7 5

mailxmail - Cursos para compartir lo que sabes

Page 76: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

figura 4.4.

Observemos que hemos colocado el literal en minúsculas; esto es posible porqueAccess no dis-tingue en las búsquedas a las minúsculas de las mayúsculas, a menosque lo especifiquemos activando la casilla Mayúsculas/minúsculas.

Figura 4.4

3. De la lista Coincidir: seleccionemos Comienzo del campo.

4. Pulsemos el botón Buscar siguiente, y nos habremos posicionado en el primercampo cuya localidad comienza con San, sin importar lo que sigue.

5. Pulsemos nuevamente el mismo botón, con lo que encontraremos otro registrocon la misma característica.

De esta forma podemos hacer búsquedas más genéricas, sin tener que recordarexacta-mente cómo se escriben las palabras (apellidos y nombres de callescomplicados, por ejemplo). Ahora veremos otro caso.

Cómo buscar un texto que está en medio de un campo

Supongamos que sólo sabemos que el cliente que buscamos tiene por nombreHugo; el mismo, lógicamente, no se encontrará al principio del campo NOMBRE,sino a continuación del apellido, entonces...

1. Pulsemos el botón Cerrar para concluir la búsqueda anterior y luego pulsemossobre algún registro en la columna Nombres.

2. Si no tenemos el cuadro Buscar en la pantalla pulsemos el icono correspondiente.

3. En el campo Buscar: escribamos hugo.

4. De la lista Coincidir: seleccionemos Cualquier parte del campo

5. Pulsemos el botón Buscar siguiente y habremos hallado el nombre quebuscábamos.

6. Pulsemos nuevamente Buscar siguiente, para hallar el próximo registro quecumpla con la condición (en este caso no encontraremos tal registro).

7 6

mailxmail - Cursos para compartir lo que sabes

Page 77: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Cómo buscar un dato en toda la tabla

El campo Buscar en: contiene hasta ahora el nombre correspondiente a la columnaactiva (que elegimos previamente).

Si abrimos la lista de ese control aparecerá, además de Nombre, una segundaopción: Clientes: Tabla. Podemos elegir esta opción para que el dato solicitado seabuscado en todos los campos de cada registro. Esto nos permite, por ejemplo,buscar el nombre de un actor en un ar-chivo de video, sin importar si éste estáubicado en la columna correspondiente a protagonista, coprotagonista, o actor dereparto.

Cómo buscar de abajo hacia arriba

El modo de búsqueda por omisión es a partir del primer registro y hacia el último,pero po-demos invertir el sentido de la búsqueda si abrimos la lista Buscar: (figura4.4) y seleccionamos la opción Arriba.

Cómo realizar búsquedas especiales (los caracteres comodín)

Cuando en el campo Buscar coloquemos estos caracteres, llamados caracterescomodín, no serán interpretados como tales sino que, al igual que en los juegos decartas equivalen a cual-quier carácter.

Más precisamente:

El carácter ? equivale a cualquier carácter en esa posición; veamos un ejemplo:

Si realizamos la prueba del tema anterior Todos los campos, volvamos a pulsar elbotón Buscar sólo el campo activo para hacer este ejercicio.

1. Pulsemos en la columna de los nombres y luego el icono Buscar.

2. en el campo Buscar: escribamos ?ó?ez

3. De la lista coincidir: seleccionemos Comienzo del campo.

4. Pulsemos el botón Buscar siguiente y nos habremos posicionado en López, elprimer registro que cumple con la condición, es decir un nombre que comience concualquier carácter (repre-sentado por ?), como segundo carácter tenga una ó, puedetener cualquier otro carácter en la tercera posición (aquí nuevamente cualquiercarácter está representado por ?) y en la cuarta y quinta debe tener ez.

5. Pulsemos nuevamente Buscar siguiente, y nos encontraremos con Gómez quetambién cum-ple con la condición establecida por máscara ?ó?ez

Una aplicación práctica de esta facilidad es la de buscar una palabra que nosabemos si fue in-gresada con faltas de ortografía y deseamos corregirla. Así, conuna máscara: L?pe? podremos buscar a todos los López, ya sea que estén escritoscon s o con z, y acentuados o no en la o. De este modo podremos revisarlos uno auno y corregirlos.

El otro carácter comodín es * (asterisco) que equivale a cualquier cantidad decaracte-res de cualquier carácter; esto quedará más claro también con un ejemplo:

1. Siguiendo con la columna NOMBRE, en el campo Buscar: escribamos P*

Nos conviene pulsar sobre el título de la ventana Buscar y, sin soltar el botón,

7 7

mailxmail - Cursos para compartir lo que sabes

Page 78: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

desplazarla de ma-nera que no se encime a la columna de los nombres y, a la vez,que queden visibles los botones de la derecha del cuadro Buscar.

2. Verifiquemos que el parámetro Coincidir: contenga "Comienzo del campo".

3. Pulsemos el botón Buscar siguiente.

Nos habremos posicionado en el primer registro (Páez) cuyo nombre comienza conla letra P sin importar el contenido del resto del nombre.

4. Pulsemos otra vez Buscar siguiente y nos encontraremos con Pérez, y así,volviendo a pulsar este botón una y otra vez, irán apareciendo todos los nombres dela lista que comiencen con la letra P.

En este caso, debido a que se encuentra activo el modo "Comienzo del campo"obtendremos el mismo resultado con el asterisco o sin él, pero...

Los comodines pueden estar en cualquier parte, por lo que podemos buscar unnombre de acuerdo con una cierta terminación. Por ejemplo, hallaremos a todos losPérez, López, Gómez, etcétera, con una máscara"*ez".

Otros casos de uso de comodines y expresiones

Los criterios que ya vimos, más estos ejemplos que siguen, pueden aplicarse en elcuadro Buscar, como también en la casilla de criterios de filtros y consultas queveremos más adelante.

El carácter # representa cualquier número o dígito individual, pero no es una letra.

También podemos utilizar los corchetes ( [ ] ) para buscar uno entre varioscaracteres posi-bles, o exceptuar caracteres si los precedemos con un signo deadmiración ( ! ), pero debemos siempre tener en cuenta el valor del parámetroCoincidir que, por lo general, para este tipo de búsquedas deberá indicar Cualquierparte del campo.

Si ingresamos     Encontraremos

104                       El valor 104

?a?ta                     Carta, Marta, Palta

M*to                    Mosquito, Moto, Mosto, Monto

*ero                      3ero, Petrolero, Maletero, cero

#a                         1a, 2a, 5a

Mar[ií][ao]            Mario, María, Maria

S[aáeéiíoóuú]        "s" seguida de cualquier vocal

1[!348]                 11, 12, 15, 16, 17, 19 (en una columna de números)

*/*/67                   Todas las fechas de 1967

7 8

mailxmail - Cursos para compartir lo que sabes

Page 79: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

45. Cómo buscar en un campo con formato de fecha

Para comprender mejor este tema, nos resultará conveniente dar una breve lecturaal título "Propiedades para los campos fecha/hora", tema que se trata en elCapítulo 8. Con el fin de facilitar la consulta de este curso, hemos reunido en esecapítulo todos los temas relativos al for-mato y características de los distintos tiposde datos que admite Access.

Gracias a los formatos, podemos buscar una fecha determinada o bien un día de lasemana, un mes, un año o un rango de fechas.

Cuando se trata de buscar una determinada fecha, podemos escribir la clave debúsqueda en el formato dd/mm/aa independientemente del formato en que esafecha se muestre en la tabla.

Por ejemplo escribiendo 1 8 / 0 3 / 9 9 encontraremos fechas escritas como 1 8 - M a r - 9 9o bien Martes, 18 de Marzo de 1999.

Si en cambio, deseáramos hallar, por ejemplo los pedidos del día jueves, tendremosque cambiar el formato de la fecha (en la tabla o consulta) a alguno de los modosque muestren el día de la semana (ver Capítulo 8) y activar, en el cuadro de la figura4.4 la casilla Buscar los campos con formato.

Así, escribiendo "jueves" como clave de búsqueda, activando la mencionada casilla ydefi-niendo como posición Cualquier parte del campo, aparecerán uno a uno losregistros cuya fecha corresponda con un día jueves.

7 9

mailxmail - Cursos para compartir lo que sabes

Page 80: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

46. Cómo reemplazar datos

Habremos notado en la figura 4.4. que debajo de la hoja activa Buscar se encuentrala co-rrespondiente al comando Reemplazar.

Pulsando la solapa correspondiente el cuadro sólo agregará un campo, dondeescribiremos lo que reemplazará al dato buscado y los botones correspondientes ala función de reemplazo. La función de reemplazo es en esencia una extensión de lade búsqueda, pues el comando primero busca (del modo que ya aprendimos) yluego procede al reemplazo.

Este cambio se puede realizar supervisando uno por uno, o haciendo un cambioglobal.

1. Pulsemos sobre la columna Localidad.

2. Abramos el cuadro de la figura 4.4 y pulsemos la solapa Reemplazar parapresentar el cuadro de la figura 4.5.

3. Completemos los campos Buscar, Reemplazar por, Coincidir y el segundocampo Buscar, como se indica en la figura.

4. Pulsemos el botón Buscar siguiente y será hallada la primera ocurrencia del textoCapital. Hasta ahora no se ha modificado nada en la tabla.

5. Pulsemos ahora el botón Reemplazar y será cambiado sólo ese registro.Seguidamente, Ac-cess buscará el próximo registro que cumpla con la condición.

Figura 4.5

Estamos entonces en condiciones de volver a pulsar el botón Reemplazar paraproducir nuevamente el cambio en este nuevo registro, o bien el botón Buscarsiguiente para saltear el presente reemplazo (no cambiar este registro) y hallar elpróximo que tenga la palabra Capital en su campo LOCALIDAD.

Podemos así revisar toda la tabla y decidir en cada caso si reemplazamos (pulsandoen bo-tón Reemplazar) o no (pulsando el botón Buscar siguiente).

8 0

mailxmail - Cursos para compartir lo que sabes

Page 81: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

6. Si, en cambio, estamos seguros (como en este caso) de que debemos reemplazarpor Cap. Todas las ocurrencias de la palabra Capital, pulsemos el botón Reemplazartodos, con lo que haremos el cambio en toda la tabla de una sola vez.

Si optamos por esta última posibilidad, no nos será posible luego restablecer elestado anterior de los cambios.

8 1

mailxmail - Cursos para compartir lo que sabes

Page 82: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

47. Cómo ordenar los datos de la tabla por otrasclaves

Muchas veces sólo nos bastará con ordenar la tabla de acuerdo con un determinadocriterio (campo) para encontrar el dato que buscamos. Por ejemplo, podemosordenar un archivo con di-recciones por código postal y obtendremos un listado declientes por proximidad; aparecerán jun-tos todos aquellos que correspondan a lamisma zona postal.

Los botones de ordenar (ascendente y descendente) permiten establecer unordena-miento de la tabla. Este criterio de ordenamiento es guardado como unapropiedad de la tabla (veremos luego este tema) por lo que, a menos que se lomodifique, los datos de la misma se mostrarán, en adelante, ordenados de acuerdocon este criterio. El procedimiento es más que sencillo:

1. Pulsemos en cualquiera de los registros sobre la columna de NOMBRE.

2. Pulsemos el botón de Ordenamiento ascendente. La tabla quedará ordenadaalfabéticamente por nombre.

3. Pulsemos el botón de Ordenamiento descendente y el orden de la tabla seinvertirá.

4. Pulsemos sobre la columna de LOCALIDAD.

5. Pulsemos El botón de Ordenamiento ascendente. La tabla quedará ordenadaalfabéticamente por localidad.

De este modo, pulsando la columna y luego el botón correspondiente lograremos unorde-namiento rápido de la tabla.

Cómo ordenar por más de un campo

Si necesitáramos elaborar una hoja de ruta para un reparto, publicidad, socios de unclub, afiliados a un partido político, etc., le ahorraríamos mucho tiempo y esfuerzoal repartidor si orde-náramos el padrón correspondiente por localidad, y dentro decada localidad por calle y número. De este modo se podrá organizar un recorridocon un mínimo de desplazamiento y pérdida de tiempo.

Para ordenar por más de una columna (en este caso necesitamos un ordenamientopor LO-CALIDAD, DIRECCIÓN) si las mismas son contiguas y están dispuestas enese orden, seleccio-naremos ambas y ordenaremos; por el contrario, si la posiciónrelativa de las columnas no es la adecuada debemos acomodarlas previamente, cosaque aprendimos a hacer en el capítulo ante-rior.

1. Pulsemos sobre el rótulo LOCALIDAD y liberemos el botón.

2. Pulsemos nuevamente ese rótulo y arrastrémoslo a la izquierda del rótulo de DIRECCIÓN.

3. Pulsemos nuevamente sobre el rótulo LOCALIDAD, mantengamos pulsada la teclaShift y pulsemos ahora sobre el rótulo DIRECCIÓN, para seleccionar ambascolumnas.

4. Pulsemos el botón de ordenamiento ascendente y observemos qué ha ocurrido.

8 2

mailxmail - Cursos para compartir lo que sabes

Page 83: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Los registros han quedado ordenados por LOCALIDAD, pero todos los quecorresponden a la misma localidad están a su vez ordenados por el nombre de lacalle.

De este modo, todos los clientes (o socios) que vivan en la misma calle de la mismalocali-dad aparecerán juntos, y algo más; si quien ingresó las direcciones tuvo laprecaución de dejar a la izquierda de los números los espacios necesarios para quelos mismos terminen todos en la misma posición, los registros apareceránordenados también de acuerdo a su ubicación dentro de la misma calle (cada calleque tenga más de un socio comenzará por aquél que tenga la numera-ción menor yterminará con el valor mayor).

Si se tratara de un padrón importante, seguramente hallaremos el número en uncampo aparte, y en ese caso seguiríamos el mismo procedimiento, pero ordenandopor LOCALIDAD, CALLE y NÚMERO.

Cómo definir manualmente el ordenamiento de una tabla

Los botones que vimos nos permiten ordenar de acuerdo a una, dos o máscolumnas si se encuentran dispuestas en forma contigua, pero si las columnas noestuvieran juntas o se dispusie-ran en un orden distinto al del criterio quequeremos establecer debemos recurrir al cuadro de Propiedades de la tabla.

Si, por ejemplo, se nos solicitara que elaboremos un informe del monto facturado adistintos clientes, por PROVINCIA, LOCALIDAD y DIRECCIÓN, haremos lo siguiente:

1. Pasemos a modo diseño para la tabla de Clientes.

2. Pulsemos con el botón derecho del mouse en cualquier parte de la cuadrícula dediseño; aparecerá un menú emergente del que elegiremos la opción Propiedades.

Trabajaremos ahora sobre la ventana de propiedades de la tabla (figura 4.6).

Figura 4.6

Encontraremos cargado en el campo Ordenar por: al último orden que hayamosestablecido con el botón Ordenar; en caso de que hayamos efectuado el ejercicioanterior, esta sería Clien-tes.Localidad, Clientes.Dirección (figura 4.6). Estomuestra que al pulsar el botón hemos modifi-cado las propiedades de la tabla.

Aquí no estamos restringidos sólo a columnas contiguas y podemos escribir elnombre de cualquiera de las columnas según el orden que necesitemos establecer.

3. En el campo Ordenar por escribamos codprovin,localidad,dirección.

No es necesario colocar aquí el prefijo Clientes, antecediendo al nombre del campo.

4. Pasemos nuevamente al modo hoja de datos; se nos pedirá autorización paraguardar los cambios del diseño, contestaremos Sí y veremos los datos de la tabla

8 3

mailxmail - Cursos para compartir lo que sabes

Page 84: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

ordenados de acuerdo con los parámetros especificados.

5. Volvamos a acceder al cuadro de propiedades y borremos el contenido del campo Ordenar por:Ordenar por:, para los próximos ejercicios necesitaremos la tabla sin ese orden.

8 4

mailxmail - Cursos para compartir lo que sabes

Page 85: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

48. Qué es un filtro

Se trata de una sofisticada herramienta de selección que permite que se visualicenen la ta-bla sólo aquellos registros que cumplan con determinada condición.

Así, de acuerdo con el ejemplo, en lugar de buscar uno a uno los clientes de Capital,pode-mos establecer un filtro y, a partir de ese momento, nuestra tabla se reducirásólo a los registros de Capital (aunque seguirá conteniendo los demás registros, sibien éstos no se mostrarán).

Además del filtro, también podemos establecer criterios de ordenamiento (como losque vi-mos) y pedirle a Access que nos muestre sólo los registros de Buenos Aires,ordenados por Loca-lidad.

Los comandos de filtro, junto con los de ordena-miento, son guardados comopropiedades generales de la tabla (en la grilla de la figura 4.6) y es por esa razónque si hemos hecho algún trabajo con ordena-mientos (como los que hicimos) o confiltros (que ya veremos), al cerrar la tabla aparecerá un aviso como el de la figura 4.7.

Si contestamos Sí, los criterios serán guardados y luego podremos volver aaplicarlos; si contestamos No, los perderemos.

Disponemos de dos modos distintos de establecer filtros; uno es "informal" y el otro"formal"; éstos son, respectivamente, los Filtros por selección y los Filtros porformulario.

8 5

mailxmail - Cursos para compartir lo que sabes

Page 86: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

49. Cómo filtrar por selección

Podemos seleccionar datos de cualquier parte de la tabla y ordenarle al programaque nos muestre todos aquellos registros que tengan el mismo dato que hemosseleccionado. La selección puede abarcar parte de un campo, un campo completo,parte de varios campos o varios campos completos; en pocas palabras, disponemosde una libertad total para seleccionar lo que necesite-mos de una tabla.

Esta manera de discriminar los registros que deben mostrarse se denomina Filtropor se-lección; veamos un par de ejemplos.

Teniendo a la vista los datos de la tabla de clientes hagamos lo siguiente:

1. En la columna CodProvin de cualquiera de los registros pulsemos doble clicsobre la pala-bra"BA" (quedará seleccionada) y pulsemos el botón de filtro por

selección

Observemos que quedan en la tabla sólo aquellos registros que pertenecen a laprovincia de Buenos Aires.

2. Pulsemos en cualquier fila de la columna Nombre y luego el botón deordenamiento ascen-dente. Los registros de Buenos Aires se mostrarán ordenadospor Nombre.

Cómo deshabilitar el filtro para visualizar todos los registros

Podemos desactivar el filtro y así mostrar todos los registros de la tabla. Si seencuentra aplicado algún filtro, el botón Aplicar/Quitar Filtro se mostrará más claro,indicando que la opción está activa.

1. Pulsemos el botón de Aplicar/Quitar Filtro  y tendremos en pantalla todos losregistros de la tabla.

Este botón funciona como un conmutador. Una vez que lo pulsamos, cambiará suaspecto de acti-vo a inactivo. Si en estas condiciones lo pulsamos nuevamente,volveremos a aplicar el efecto de filtro.

Esto significa que el filtro es un parámetro que se guarda en el diseño de la tablacomo una propiedad más y que podemos activarlo o desactivarlo.

Cómo suprimir un filtro por selección

Una vez creado el filtro pasa a formar parte de las propiedades de la tabla. Si alcerrar la ta-bla contestamos No a la pregunta de la figura 4.7, las propiedades de lamisma no se modificarán y la tabla no tendrá filtro.

Por el contrario, si contestamos Sí, este filtro pasará a formar parte de la tabla.Aunque sa-bemos que pulsando el botón Aplicar/Quitar filtro podemos mostrartodos los registros, no pode-mos eliminarlo definitivamente de este modo.

Si abrimos la tabla en modo diseño y abrimos luego su cuadro de propiedades(figura 4.6) notaremos que en el parámetro Filtro aparecen datos que expresan conpalabras la selección que efectuáramos anteriormente sobre los datos de la tabla.

8 6

mailxmail - Cursos para compartir lo que sabes

Page 87: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Podemos seleccionar este parámetro y borrarlo, para eliminar definitivamente esapropiedad de la tabla. Notaremos que, una vez quitado definitivamente el filtroquedará inhabilitado el botón Aplicar/Quitar Filtro.

El filtro por selección es acumulativo

Si estando aplicado y activado el filtro repetimos la operación de selección con otrocampo, este nuevo filtro se acumulará al anterior.

2. En la columna Localidad pulsemos doble clic sobre "Palomar" y luego pulsemosnuevamente el botón de filtro por selección.

Aparecen ahora sólo los registros de la localidad Palomar. En este caso, al aplicarsela se-gunda selección (Palomar), se limitó aún más el alcance de la primeraselección, es decir que primero mostraremos sólo los registros de Buenos Aires, yde estos registros, sólo los de la locali-dad "Palomar".

Se dice aquí que los criterios de selección CodProvin=BA y Localidad=Palomar secombi-nan en una conjunción "AND" o en castellano "Y":

CodProvin = Buenos Aires Y Localidad = Palomar

En este criterio, la primera condición no pareciera ser necesaria ya que siseleccionamos to-dos los registros pertenecientes a la localidad de Palomar, estostambién pertenecerán a la provincia de Buenos Aires, pero ¿qué sucedería sitenemos algún cliente en la localidad de Palomar de la provincia de San Luis?

Cómo evitar la acción del filtro anterior

Si lo que deseamos es incorporar un nuevo criterio, sólo debemos asegurarnos queel filtro anterior se encuentre inactivo:

3. Pulsemos el botón Aplicar/Quitar de modo que aparezcan todos los registros.

4. Seleccionemos el nuevo criterio (por ejemplo resaltemos "CF" en el campoCodProvin y pul-semos luego el botón filtro por selección para elegir del total deregistros de la tabla todos aquellos cuya provincia es "CF").

Filtros excluyentes

Podemos mostrar "todos aquellos registros que no..." con el Filtro excluyendo laselec-ción. En este caso no disponemos de un botón pero sí de una opción demenú emergente. Vea-mos:

8 7

mailxmail - Cursos para compartir lo que sabes

Page 88: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

1. Presentemos primeramente todos los registros y luego, en la co-lumna CodProvin de cualquiera de ellos, pulsemos doble clic so-bre la palabra "BA"(quedará seleccionada).

Una vez seleccionado el dato a filtrar, en lugar de pulsar el bo-tón de filtro porselección, podemos acceder a un menú emergente (figura 4.8) pulsando el botónderecho del mouse en cualquier parte de la hoja de datos.

Si en estas condiciones pulsamos sobre Filtro excluyendo la selección, apareceránen la tabla todos los registros que no contie-nen el dato seleccionado.

Filtros por parte de un campo

Hasta ahora utilizamos para aplicar filtros los contenidos completos de un campo enpero ciertas circunstancias es necesario seleccionar registros por una parcialidad deun campo, como por ejemplo si tuviéramos que mostrar sólo los registros declientes cuyo nombre comience con una determinada letra.

El filtro por selección puede actuar en base a un campo completo o sólo a una partedel mismo; veamos esta última forma de uso:

1. Teniendo a la vista todos los registros de la tabla (ver paso 1 anterior), pulsemossobre el campo Nombre, a la izquierda de la C de Cassini Mirta y sin liberar elbotón arrastramos hacia la derecha de manera de resaltar sólo la letra mencionada.Seguidamente pulsemos el botón Filtro de selección y veremos en la tabla sóloaquellos clientes cuyo nombre comienza con la letra "C".

2. Pulsemos el botón de Deshabilitar filtro, seleccionemos del mismo modo elnombre José y pulsemos luego el botón Filtro por selección. Quedarán en la tablasólo aquellos registros que contengan la cadena de texto "José" en algún lugar delcampo Nombre.

Observemos que este texto es buscado en cualquier parte del campo, a diferenciadel ejem-plo anterior en que sólo se buscó al principio.

8 8

mailxmail - Cursos para compartir lo que sabes

Page 89: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Esto se debe a que Access detectó la posición de la cadena de texto seleccionada ypor ello, en el primer caso aplicó la opción Comienzo del campo y en el segundo Cualquier parte del campo (con conceptos similares a los que estudiamos en lasbúsqueda: figura 4.2).

8 9

mailxmail - Cursos para compartir lo que sabes

Page 90: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

50. Cómo agregar campos a la tabla

Antes de continuar con el tema de los filtros necesitaremos agregar algunascolumnas a fin de contar con más datos para crear criterios de selección yordenamiento más complejos, y tam-bién más registros para obtener resultadosclaros y de fácil comprensión.

1. Pulsemos el botón Diseño y en la ventana correspondiente ubiquémonos en laprimera fila libre.

2. Agreguemos la definición de un campo con nombre FechaPrimeraCompra.Pulsemos Tabulador para pasar a la columna Tipo y allí pulsemos f Return paraseleccionar el tipo Fecha/Hora.

3. Agreguemos otro campo con nombre MontoFacturado. Pulsemos Tabulador y allípulsemos mo Return para seleccionar el tipo Moneda.

Los campos anteriores se ingresaron aceptando su valor por omisión, pero existenen cada caso varias posibilidades que serán tratadas en el Capítulo 8. No obstante,veremos enseguida un ejemplo de configuración de la fecha.

Agreguemos los códigos de las nuevas provincias

Si deseamos trabajar prolijamente, agreguemos a la lista del campo CodProvin loscódigos para los nuevos registros que ingresaremos.

4. Estando en modo Diseño, seleccionemos el campo CODPROVIN, pulsemos lasolapa Bús-queda.

5. Pulsemos en el campo Origen de la fila con el botón derecho, seleccionemos Zoom y en la ventana ampliada agreguemos: LP;La Pampa;SL;SanLuis;CR;Corrientes;

6. Guardemos los cambios de estructura que hemos hecho y pulsemos luego elbotón Hoja de datos.

7. Pulsemos el botón Agregar datos y agreguemos los datos de la figura 4.9.

Dejaremos por ahora en blanco los dos nuevos campos agregados; completaremoslos mismos los mismos luego, en el próximo paso.

Figura 4.9

9 0

mailxmail - Cursos para compartir lo que sabes

Page 91: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

51. Cómo facilitar el ingreso de fechas: Las máscaras

El siguiente paso consiste en ingresar 25 fechas. Podemos ingresarlas tal cual semuestran en los datos del paso 7 del próximo ejercicio, o bien modificarpreviamente las propiedades del campo FechaPrimeraCompra definiéndole unamáscara de ingreso de datos, lo que nos ahorrará luego la necesidad de tipear lasbarras.

1. Accedamos a la cuadrícula de Diseño de la tabla y pulsemos sobre el campo FechaPrimera-CompraFechaPrimera-Compra. Ya sabemos que en el sector inferior de están mostrandolas propiedades de este campo.

2. Pulsemos sobre la línea Máscara de entrada; aparecerá un icono a la derecha.

3. Pulsemos sobre ese icono para así acceder al Asistente para máscaras de entrada(figura 4.10).

Al pulsar el mencionado botón podrá aparecer un aviso. Esto se debe a que lainstalación Típica no agrega al sistema todos los elementos sino que solamenteaquellos que se utilizan más frecuentemente.

Podremos encontrarnos frente a esta situación varias veces durante nuestroaprendizaje y no es para alarmarse, simplemente colocaremos el CD-ROM de Office2000 y contestaremos Sí a la pregunta, lo que iniciará el proceso de instalación queagregará el componente necesario sin nin-guna otra intervención de nuestra parte.

Concluido este proceso de instalación totalmente automático pasaremosdirectamente a utilizar la función (en este caso se presentará la ventana delasistente para máscaras de la figura 4.10) sin necesidad de reiniciar el sistema.

Figura 4.10

El manejo de este cuadro es muy sencillo; el mismo nos muestra una lista condistintos for-matos de fecha de donde debemos elegir uno.

9 1

mailxmail - Cursos para compartir lo que sabes

Page 92: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

4. Seleccionemos la línea correspondiente a Fecha corta.

5. Podemos pulsar sobre el campo Probar y escribir una fecha para comprobarcómo funciona la máscara.

6. Por último, pulsemos el botón Finalizar y aparecerá la codificación de la máscaraen el lugar de la propiedad correspondiente.

7. Ahora, en modo Hoja de datos, completaremos los campos agregados a la tabla.Para ello nos ubicaremos en el primera renglón de la columna FechaPrimeraCompray escribiremos lo que se detalla a continuación (recordemos que, gracias a lamáscara que agregamos, no será ne-cesario tipear las barras):

Seguidamente pulsaremos sobre el primer renglón de la columna MontoFacturado yescribi-remos los siguientes importes:

Según la configuración que se haya dispuesto para los parámetros internacionalesde Win-dows, podría ocurrir que para versiones en español se encuentrepreestablecida la peseta (Ptas) como unidad monetaria. Esto puede corregirse desdeel Panel de Control, opción Configuración regional, solapa Moneda.

9 2

mailxmail - Cursos para compartir lo que sabes

Page 93: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

52. El filtro por formulario

Un filtro por formulario nos permite establecer condiciones de filtrado algo máscomplejas. Se trata de un formulario que contiene todos los campos de la tabla,para ingresar condiciones o criterios de selección en cada uno de ellos, en lugar dedatos.

El filtro por formulario puede cumplir con todas las funciones del anterior peroademás nos permite establecer condiciones concurrentes en modo suma; es lo quese conoce como conjun-ción "OR" o conjunción "O".

Supongamos que se nos piden los clientes de Capital y provincia de Buenos Aires;para mostrar todos estos registros necesitaríamos una condición de filtro como laque sigue:

CodProvin = CA O CodProvin = BA

Observemos la diferencia con la condición anterior: en aquél caso a la primeracondición (registros de Buenos Aires) agregábamos una segunda condición (queademás pertenezcan a Palomar) pero esta segunda condición se aplicaba sobre losregistros que nos dejaba visibles la primera, por lo que reducía aún más la cantidadde registros. Aquí, en cambio, además de mostrar los re-gistros de Capitalnecesitamos que se muestren los de Buenos Aires; si bien tenemos también doscondiciones, en este caso cada una de ellas aporta sus registros al resultado (lascondiciones se suman en lugar de restarse).

Figura 4.11

El filtro por formulario ya incluye los filtros anteriores

Los filtros por formulario y por selección son en realidad lo mismo; sólo difieren enel método de aplicación. La prueba de esta afirmación la tendremos seguidamente.

Repitamos los pasos del primer ejercicio de filtros a fin de seleccionar los clientesde Buenos Aires y Palomar (observemos los registros que cumplan con esacondición).

1. Estando entonces establecido el filtro por selección pulsemos sobre le botón

9 3

mailxmail - Cursos para compartir lo que sabes

Page 94: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

1. Estando entonces establecido el filtro por selección pulsemos sobre le botón Filtro por formula-rio y veamos qué aparece (figura 4.12).

Figura 4.12

Veamos que el filtro por formulario incluye los criterios que establecimos con elbotón de filtro por selección.

Una ayuda para seleccionar los datos

El campo que se encuentra activo (en el filtro por formulario) muestra un icono delista (en la figura 4.12 ese campo es CodCli). Pulsemos sobre LOCALIDAD y luegosobre el icono de lista correspondiente, y se mostrará una lista con todos los valoresdistintos de LOCALIDAD que contenga la tabla. Eligiendo los valores en lugar deescribirlos nos ahorraremos muchos errores de tipeo.

También podemos aplicar aquí todo lo que aprendimos sobre el uso de carac-terescomodín (*?), por ejemplo M * para elegir todo lo que comience con M y ?ó?ez* paraseleccionar Gómez, López, etc.

Los criterios de los distintos paneles actúan en "Or" (O)

En la figura 4.12 vemos una segunda solapa con el indicador "Or" en segundo plano;lo que definamos en esta segunda solapa será una nueva alternativas de selecciónque se sumará a la anterior.

En otras palabras, el filtro mostrará los registros de la tabla que cumplan con elcriterio es-pecificado en la solapa Buscar, más aquellos registros que cumplan conel segundo criterio, defi-nido en la hoja "Or". Veamos esto con un ejemplo sencillo:

1. Pulsemos en el campo LOCALIDAD y borremos el criterio "Palomar" para volver ala situación anterior (se volverán a mostrar todos los registros de "Buenos aires").

2. Pulsemos la solapa "Or" y en el campo CODPROVIN seleccionemos "CF".

Por el hecho de haber utilizado el segundo panel, se ha creado un tercer panel, en elque podría-mos agregar un tercer criterio de selección.

3. Pulsemos el botón Activar filtro y aparecerá la tabla mostrándonos los registrosde Buenos Aires (BA) y también los de Capital (CA). En la línea de estado de laventana Clientes el texto "(Filtrado)" nos indica que se encuentra aplicado un filtro y

9 4

mailxmail - Cursos para compartir lo que sabes

Page 95: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

cuántos registros se están mostran-do.

Los criterios de una misma página actúan en "And" (Y)

1. Pulsemos nuevamente el botón Filtro por formulario para acceder a la cuadrículade la figura 4.12.

2. En la página en que tenemos la selección de BA escribamos, en la columnacorrespondiente a los montos: > 1000

3. Pulsemos el botón activar filtro y veremos en la tabla todos los registros deCapital, más los de Buenos Aires, pero en este caso, sólo aquellos cuyas ventassuperen los $ 1000 (figura 4.13).

Figura 4.13

Esta condición podría expresarse como:

(CodProvin="CA") O (CodProvin="BA" Y Montofacturado>1000)

Los paréntesis se incluyeron en el texto sólo por razones de mayor claridad, puesAccess asume, en lo que hace a los criterios especificados en una misma hoja (BA y>1000) que deben cumplirse ambos, y que los indicados en distintas hojasconstituyen otras tantas alternativas de selección.

Podríamos así asignar en una nueva página "O", un segundo criterio queseleccionara los registros de La Pampa con un importe superior a los $ 1000, en otranueva página colocar un ter-cer criterio que seleccione los registros de Córdoba conimporte inferior a $ 800, etc.

De acuerdo con lo dicho, podemos entonces crear un filtro por formulario con uncriterio dis-tinto para cada provincia, localidad, etc.

También podemos incluir ordenamientos

Si estamos visualizando los datos ya filtrados en modo tabla y pulsamos sobrealguno de los campos y luego sobre el botón de ordenamiento, habremos definidopara esos datos un orden de presentación.

4. Pulsemos sobre algún campo de la columna NOMBRE y luego el botón de Ordenascendente y obtendremos los datos en el orden en que se muestran en la figura4.13

Cómo eliminar definitivamente un filtro por formulario

9 5

mailxmail - Cursos para compartir lo que sabes

Page 96: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Como vimos, un filtro puede estar activado o desactivado según el estado del botóncorres-pondiente, pero si lo que queremos es eliminar definitivamente criterios defiltro y ordenamiento, podemos borrarlos del cuadro de Propiedades (figura 4.6) obien de los campos de Filtro por for-mulario de la figura 4.13.

Esta última alternativa nos permitirá eliminar también los filtros por selección quese encuen-tren establecidos ya que, como vimos en la figura 4.12 los mismos semuestran en el Filtro por formulario.

Al suprimir los criterios, lógicamente dejan de aplicarse, pero las fichas ya creadasperma-necerán allí. Si queremos ser más prolijos podemos eliminarlas (tenganincorporados criterios o no) de la siguiente forma:

1. Estando en la vista filtro por formulario pulsemos con el botón derecho en elsector gris de esta ventana; aparecerá el menú emergente de la figura 4.14.

Figura 4.14

Aquí podemos seleccionar la opción Borrar cuadrícula para restablecer unacuadrícula va-cía, o bien Eliminar ficha, para eliminar la hoja de condiciones que seencuentra activa en ese momento.

Ya sea que hayamos utilizado un método u otro, recién se harán permanentes loscambios cuando guardemos el diseño de la tabla con estas modificaciones.

9 6

mailxmail - Cursos para compartir lo que sabes

Page 97: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

53. Cómo actúan los filtros respecto de lasnovedades

Con la aplicación de los filtros y criterios de ordenamiento que hemos vistohabremos trans-formado a la tabla original en un subconjunto de registroscondicionados.

Si ingresamos nuevos registros a una tabla que tiene aplicado un filtro, esosregistros seguirán viéndose en la tabla (aunque no cumplan con las condiciones delfiltro), y también permanecerán al pie de la tabla (aunque de acuerdo al valor delcampo de ordenamiento debieran estar en otro lugar); esto se debe a que el filtrosólo genera una vista de acuerdo con los datos presentes en la tabla almomento en que se lo aplica. Para obtener una vista actualizada debemospulsar  Shift + F2.

Este comando volverá a aplicar los filtros y los ordenamientos para mostrarnos laversión actuali-zada de los datos.

Hasta ahora hemos abierto una tabla, aplicando a la misma distintos comandos defiltro y ordenamiento, para que se mostrara sólo un subconjunto de los datos de latabla original y en un determinado orden. Esto, como ya vimos, se reflejainternamente como un cambio en las propie-dades de la tabla, y estos cambios songuardados junto con la tabla misma.

9 7

mailxmail - Cursos para compartir lo que sabes

Page 98: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

54. Cómo seleccionar registros por campo vacío

Si agregamos algún campo a una tabla que ya contenía datos (como ya lo hicimos eneste capítulo), aquellos campos en los que aún no hayamos ingresado los datos,contendrán un valor nulo.

Nulo significa vacío; debemos distinguir vacío de espacios o ceros. Un camponumérico con valor nulo es distinto al mismo campo con valor cero y un campo detexto con valor nulo, es distinto al mismo con espacios.

Si en un campo del formulario escribimos los textos: nulo, null, o es nulo, cuandoejecute-mos el filtro se mostrarán sólo aquellos registros que en dicho campo notengan contenido, ya sea por haberse eliminado el mismo seleccionándolo ypulsando la tecla Intro o porque nunca se ha escrito nada en ese campo.

Podemos también escribir su contrario: not null o negado nulo o es negado nulopara se-leccionar todos los registros que contienen alguna información en esecampo.

9 8

mailxmail - Cursos para compartir lo que sabes

Page 99: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

55. Cómo obtener distintas vistas de los datos deuna tabla

En adelante, cuando volvamos a abrir la tabla, podremos aplicar los mismos criteriosde filtro y ordenamiento pulsando el botón correspondiente, o desactivarlos (paravisualizar todos los re-gistros) pulsando nuevamente el mismo botón.

Pero, ¿cómo obtener más de una vista distinta de los mismos datos?. Podría ocurrir,por ejemplo, que el Departamento de Ventas necesitara los datos de los clientes deBuenos Aires cu-yo monto de compras supere los $ 1000, más todos los de Capitalordenados por Localidad (esta-blecimos estas condiciones en el último ejercicio); lasección Despacho puede necesitar la infor-mación de todos los clientes ordenadapor Provincia y Localidad, y en Cobranzas se nos puede requerir que esos mismosdatos aparezcan ordenados en forma descendente por el monto de compras yseleccionando aquellos clientes cuya fecha de compra corresponda al año 1993.

Para atender a cada una de estas necesidades será preciso crear distintas hojas deres-puestas dinámicas.

9 9

mailxmail - Cursos para compartir lo que sabes

Page 100: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

56. Qué es una hoja de respuestas dinámicas

Access nos permite guardar los criterios de selección y ordenamiento queestudiamos creando un nuevo objeto que llamaremos Hoja de respuestasdinámicas o, más brevemente, Consulta.

Una vez que hayamos definido una hoja de respuestas dinámicas, en lugar de abrirla tabla y volver a aplicarle los mismos criterios de ordenamiento y filtro (selección),abriremos este nuevo objeto que creamos, que tendrá ya predefinidos y aplicadosesos criterios, como si se tratara de otra tabla que nos muestra los datos ya filtradosy ordenados.

De este modo, abriendo la consulta Clientes para Ventas, trabajaremos con losclientes de la tabla "Clientes" que pertenecen a Buenos Aires, con compras mayoresa $ 1000 y todos los clientes de Capital, con un orden por Localidad; abriendo encambio la consulta Clientes para Co-branzas, se mostrarán los registros de la mismatabla, pero sólo correspondientes al año en curso y en orden descendente por sumonto de compras, etc.

Generalizando, podemos crear una consulta para cada necesidad, con su selección yorde-namiento particulares; posteriormente, cada departamento de la empresapodrá trabajar sobre su hoja de respuestas dinámicas particular como si ésta fuerasu tabla de clientes, y así elaborar lis-tados, formularios, etc., utilizando solamentelos datos que son de su interés. A cada una des es-tas vistas de los datos de la tablale llamaremos entonces hoja de respuestas dinámicas.

Lo realmente ventajoso es que no existen distintas tablas, sino distintas hojas derespuestas dinámicas; todas tomarán sus datos de la tabla original de Clientes, perocada una de ellas los presentará de distinta forma (campos, datos y registros)adaptándose a las necesidades de la aplicación que haga uso de la misma.

Podemos trabajar sobre una hoja de respuestas dinámicas del mismo modo que loharíamos con la tabla misma, lo que nos permitirá crear consultas de consultas,tomando como entrada de la segunda consulta los datos entregados por la primera.

La premisa que acabamos de enunciar será nuestra base de trabajo en Access y nospermi-tirá una total flexibilidad para aplicar criterios de selección y ordenamiento,para luego volcar esos datos ya elaborados en un informe que los presente de unamanera adecuada.

Cómo crear consultas en base a lo que nos muestra la tabla actual

Ya hemos visto cómo crear un filtro por formulario y cómo establecer además elordena-miento necesario para una determinada aplicación; sabemos también cómoactivar estos paráme-tros para ver el resultado.

Una vez que hayamos definido qué datos queremos ver y en qué orden deseamospresen-tarlos, podremos comprobarlos con el botón de Aplicar filtro para luegograbarlos, creando de esta forma una hoja de respuestas dinámicas:

1. Si estamos en modo ver tabla (según la explicación anterior accedimos a estemodo para comprobar si el filtro y el ordenamiento definidos daban el resultado queesperábamos, figura 4.11), pulsemos el botón Filtro por selección para accedernuevamente a la ventana de dise-ño de filtros para esta tabla (cuadrícula de la

1 0 0

mailxmail - Cursos para compartir lo que sabes

Page 101: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

figura 4.12).

2. Pulsemos con el botón derecho del mouse en el sector gris de la cuadrícula;aparecerá el menú emergente que ya vimos en la figura 4.14.

3. Pulsemos ahora sobre la opción Guardar como consulta. Aparecerá un pequeñocuadro (figura 4.15) para escribir el nombre que hemos de asignar a la consulta.

4. Escribamos un nombre adecuado, como el de la figura, y pulsemos Aceptar. Siahora volve-mos al cuadro Base de datos (de la figura 1.8 del Capítulo 1) ypulsamos el botón Consultas, se mostrará el nuevo objeto que creamos.

Ahora podríamos cerrar la tabla sin guardar ninguna de las condiciones que hemosestable-cido o, mejor aún, eliminar el filtro de la forma que ya hemos visto y luego,pasando al modo tabla, guardarla para que quede almacenada sin filtro algunoasociado.

1 0 1

mailxmail - Cursos para compartir lo que sabes

Page 102: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

57. Cómo abrir una consulta

1. Pulsemos el botón Consultas del cuadro de la Base de datos (figura 1.8).Aparecerá la lista de consultas que contiene la base de datos. Hasta ahoradisponemos de una única consulta, "Clientes para Ventas" que es la que acabamosde ver.

2. Estando este objeto seleccionado pulsaremos el botón Abrir, para mostrar losdatos o resulta-do de la consulta (modo tabla). Observemos que el resultadoobtenido es idéntico al que muestra la figura 4.12, lo que significa que la consultaha almacenado todos los parámetros de selección y ordenamiento que seencontraban aplicados a la tabla.

3. Pulsemos el botón diseño y se mostrará la cuadrícula de la figura 4.16.

Allí podremos cambiar criterios de selección, ordenamiento, etc.; temas queveremos en el siguiente capítulo. Por ahora observemos sus parámetros.

Conociendo el efecto de selección y ordenamiento que tiene esta consulta (que es elmismo que habíamos obtenido con los filtros, cuyo resultado se muestra en la figura4.13), podemos de-ducir qué significa el contenido de los distintos parámetros quemuestra la figura 4.16.

Vemos primeramente que aparece una columna encabezada por Nombre(correspondiente al campo que contiene la razón social del cliente) y, en la fila de OrdenOrden, podemos leer la palabra Ascendente; esto define para la consulta un ordenascendente por el nombre del cliente.

A la derecha, dos columnas más definen la selección, de la siguiente forma: unaprimera fila, Criterios, contiene en la columna correspondiente al campoCODPROVIN: BA, y en el campo MONTOFACTURADO: > 1 0 0 0 que es el criterio quecontenía la primera página del filtro por formu-lario.

Figura 4.16

1 0 2

mailxmail - Cursos para compartir lo que sabes

Page 103: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

La segunda fila (indicada a su izquierda por "o", especifica la condición alternativaque con-tenía la hoja "O" del filtro: CF.

Ya podemos imaginarnos que estamos frente a un elemento similar a los filtros porformula-rio; pero veremos luego, en el próximo capítulo, cómo se amplían lasposibilidades con las hojas de respuestas dinámicas o consultas.

1 0 3

mailxmail - Cursos para compartir lo que sabes

Page 104: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

58. Cómo se define qué campos se muestran

Cada uno de los campos de la consulta dispone de una casilla habilitante en la fila MostrarMostrar. Al pulsarla, la casilla quedará tildada y, como consecuencia, los datos delcampo correspondiente se mostrarán cuando ejecutemos la consulta; por elcontrario, si esta casilla se encuentra vacía, el campo correspondiente no semostrará.

Pero ocurre que el diseño de hoja dinámica que estamos tratando (creado desde elfiltro por formulario), sólo tiene tres columnas y además se encuentra deshabilitadaen ambas la casilla Mostrar.

¿Por qué entonces cuando activamos el modo tabla (abrir la consulta) se muestranlos datos de todos los campos?

Esto se debe a la propiedad Mostrar todos los campos; al igual que las tablas dedatos, las tablas dinámicas disponen también de propiedades (figura 4.17).

Estando a la vista la cuadrícula de diseño de la figura 4.16, pulsemos en la barra elbotón Propiedades, para acceder al cuadro de la figura 4.17.

Figura 4.17

Esta es otra forma de acceder al cuadro de propiedades (recordemos que para latabla accedimos al mismo seleccionando la opción Propiedades del menúemergente). En ambos casos, y en los subsiguientes que veremos, el botón depropiedades actúa a modo de conmutador, prendiendo o apagando la ventana quemuestra la figura 4.17 (siempre y cuando nos encontraremos en modo diseño).

Volviendo a la consulta del ejemplo, podemos decir que las funciones de losdistintos ren-glones de la cuadrícula son independientes; una determinada columnapuede definir ordenamien-to o no, puede mostrarse o no y también puede aplicarun criterio de selección o no.

1 0 4

mailxmail - Cursos para compartir lo que sabes

Page 105: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

En la figura 4.16 vemos que las columnas de la grilla se utilizan sólo para definir loscriterios de ordenamiento y selección, y la propiedad Mostrar todos los campos esla que ocasiona que veamos la tabla completa, aunque las correspondientes casillas Mostrar se encuentren inactivas.

Veremos otra forma de visualizar todos los campos y muchos otros temas en losdos capítu-los siguientes, dedicados a las hojas dinámicas o consultas.

Cómo tomar las condiciones de filtro de una consulta

Ya creamos una consulta en base a un filtro por formulario, pero podríamosnecesitar lo in-verso, es decir, tomar los criterios que se especifican en unadeterminada consulta y aplicarlos a la tabla como si fuera un filtro (recordemos queel origen de la consulta que creamos fue justa-mente un filtro).

Lograríamos el mismo resultado (selección y orden de los datos) abriendodirectamente la consul-ta, pero si lo que queremos hacer es crear un filtro en base alos parámetros de la consulta pode-mos hacerlo ahorrándonos así la tarea deescribir nuevamente las condiciones que ya que ya es-taban establecidas en unaconsulta.

1. Cerremos la consulta (grabémosla si nos lo solicita); en la ventana Base de datospulsemos sobre la solapa Tablas, y luego pulsemos doble clic sobre la tabla declientes para abrirla como datos.

2. Pulsemos el botón Filtro por formulario para acceder nuevamente a la ventanade diseño de filtros para esta tabla (figura 4.12).

3. En la barra de botones pulsemos Cargar desde consulta (o bien seleccionemosesta misma opción del menú emergente que aparece al pulsar con el botón derechoen la zona gris de la ventana de diseño del filtro). Aparecerá el cuadro de la figura4.18).

Figura 4.18

En este caso disponemos de una sola consulta, por lo que ésta aparece seleccionada.

4. Pulsemos Aceptar.

Debemos tener en cuenta que en la lista del cuadro de la figura 4.18 sóloaparecerán aque-llas consultas que fueron creadas en base a la tabla que tenemosabierta en modo de filtro por formulario.

Una vez cargados los parámetros podremos comprobar que están definidos para la

1 0 5

mailxmail - Cursos para compartir lo que sabes

Page 106: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

tabla los mismos criterios que contenía el filtro original, y que en su momentofueron aplicados a la nueva consulta "Clientes para Ventas".

1 0 6

mailxmail - Cursos para compartir lo que sabes

Page 107: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

59. Trabajemos en el diseño de la consulta

En este capítulo crearemos una consulta similar a la del capítulo anterior,aprenderemos a definir condiciones más complejas, incluir campos, etc., para luegocombinar o relacionar los datos de dos tablas y así mostrar, en la misma consulta,datos que se encuentran en tablas relaciona-das.

Trabajemos en el diseño de la consulta

En el capítulo anterior creamos una consulta a partir de un filtro por formulario.Ahora crea-remos una consulta en blanco y agregaremos dentro de la mismacampos, condiciones, criterios de ordenamiento, etc.

Cómo crear una nueva consulta

Crearemos una consulta basada en la tabla de Clientes utilizando para ello todos losvalores por omisión.

1. Accedamos al cuadro de diálogo de la base de datos y pulsemos el botóncorrespondiente a Consultas.

Se mostrará aquí la consulta que hemos creado en el capítulo anterior y aparecerántambién las dos opciones disponibles para crear una consulta: la primera de ellasnos permite abrir una cuadrícula de diseño y la segunda nos conduce a un asistente.

Access dispone de asistentes que nos permiten crear consultas en forma automáticaingresando unos pocos parámetros, pero utilizaremos estos asistentes másadelante; por ahora nos queda-remos con la primera opción.

2. Pulsemos la primera de las opciones: Crear una consulta en la Vista Diseño, paraacceder a la cuadrícula de diseño de la consulta similar a la que vimos en el capítuloanterior, pero esta vez en blanco (figura 5.1).

Lo primero que haremos será incorporar la o las tablas que la consulta tomará susdatos. Es por eso que aparece ahora en primer plano el cuadro Mostrar tabla.

3. Seleccionemos la única tabla disponible, Clientes, y pulsemos Agregar.

Con esta acción, agregamos una lista de los campos de la tabla de Clientes en elsector gris del cuadro de diseño de la consulta (figura 5.2).

El cuadro superpuesto permanece en su lugar para permitirnos agregar otras tablas,pero no es esa nuestra intención, por lo que:

1 0 7

mailxmail - Cursos para compartir lo que sabes

Page 108: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 5.1

4. Pulsaremos el botón Cerrar para quitar el cuadro de la pantalla y pasar a trabajaren la cuadrí-cula.

Figura 5.2

Cómo incluir los campos de la tabla en la consulta

Ya hemos agregado la tabla de Clientes a la consulta. Seguidamente vamos a definirqué campos de esa tabla intervendrán en la consulta; el procedimiento consiste en arrastrarlosarrastrarlos desde la tabla a la cuadrícula. Veamos qué fácil es:

1. Pulsemos sobre el primer campo de la tabla, CODCLI y, manteniendo pulsado elbotón, llevé-moslo hasta la primera columna de la consulta. Al liberar el botón sehabrá incorporado a la consulta una columna con la referencia de este campo.

Tal vez pulsa doble clic sobre cada campo de la tabla nos resulte más rápido yprovocará el mis-mo efecto que arrastrarlo a la primera columna libre.

También podemos seleccionar varios campos ayudándonos con Shift o con Control ymover el conjunto para crear varias columnas en un solo paso.

Cómo definir si un campo se muestra o no

Ya vimos esto en el capítulo anterior, pero notemos que en este caso, para el camporecién colocado, la casilla correspondiente a Mostrar se encuentra activa; esto nosindica que el campo se mostrará cuando ejecutemos esta hoja de respuestasdinámicas. Si pulsamos sobre la casilla, ésta aparecerá inactiva y, por lo tanto, lacolumna correspondiente no será mostrada.

1 0 8

mailxmail - Cursos para compartir lo que sabes

Page 109: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

1. Pulsemos doble clic sobre el segundo campo de la tabla, y hagamos lo mismocon el resto de los campos para incorporarlos a todos a la hoja de respuestasdinámicas o consulta.

No es necesario que aparezcan todos los campos en la consulta; según su funciónpodemos in-corporar sólo los campos necesarios.

Los campos que tienen inactiva la correspondiente casilla Mostrar no seránpresentados en el resultado de la consulta pero actúan, en cuanto a ordenamientos ycriterios de selección, del mismo modo que los que se exhiben.

Ya mencionamos que las funciones de los campos son independientes entre sí.Podemos así definir criterios de selección y ordenamiento establecidos en base acampos que no se mues-tran en la hoja de datos. Veremos, en el próximo capítulo,una aplicación concreta de campos auxiliares no mostrados para definirordenamientos algo más complejos.

Cómo incorporar la tabla completa en una sola operación

El primer elemento de la lista de campos, representado por un asterisco (*), equivalea todos los campos. De esta forma, en lugar de incorporarlos uno a uno podríamosagregar todos los campos de la tabla en una sola operación, simplementearrastrando el asterisco (o pulsando doble clic sobre el mismo). Este, al ser colocadoen la columna, se transformará en la leyenda Clientes* representando a todos loscampos de la tabla.

No podemos hacer con esos campos ningún tipo de selección ni establecer criterios,pero no hay ningún inconveniente en que agreguemos, además, todos los camposde la tabla que necesi-temos para establecer los criterios. En este caso, para evitarque estos campos aparezcan repeti-dos en la tabla resultado, los inhabilitaremos enla casilla Mostrar.

Algo para tener en cuenta

La hoja de respuestas dinámicas o consulta ocupa en sí muy poco espacio debido aque es un elemento virtual que sólo contiene referencias a los datos reales que seencuentran en la/s tabla/s.

No debemos, por lo tanto, preocuparnos por la cantidad de columnas auxiliares quenecesi-temos incluir en la misma a fin de que cumpla con la condición de selección,ordenamiento, filtro, etc., ni por la cantidad de consultas que originemos.

1 0 9

mailxmail - Cursos para compartir lo que sabes

Page 110: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

60. Cómo efectuar modificaciones en la cuadrícula

En cualquier momento podemos introducir modificaciones en el diseño de laconsulta. Ve-remos enseguida las modificaciones básicas como cambiar la posiciónrelativa de las columnas quitar columnas, agregar nuevas a partir de campos de lamisma tabla, y más adelante otras como agregar una nueva tabla que participará enla consulta, combinarla con la anterior y agregar cam-pos de esta última, etc.; todoello en la misma cuadrícula de diseño de la consulta.

Para mover una columna la seleccionamos pulsando sobre el selectorcorrespondiente (zócalo que se encuentra por encima del nombre del campo) yluego pulsaremos Suprimir nuevamente en el selector de campos para llevarla a lanueva posición, liberando aquí el botón del mouse.

Para eliminar una columna, la seleccionamos en la forma que vimos y luegopulsaremos , o bien seleccionamos, dentro del menú EDICIÓN, la opción Eliminar.

Eliminar una columna de la tabla dinámica no significa perder datos; recordemosque ésta es nada más que una vista de los datos que se encuentran en la tabla y loque ocurrirá es sólo que la vista dejará de mostrar ese dato.

En caso de que deseáramos suprimir todos los campos de la cuadrícula sería precisoacce-der a Eliminar la cuadrícula, también del menú EDICIÓN.

Si deseáramos insertar un nuevo campo seleccionaremos en primer lugar el campoa in-sertar en la tabla que se encuentra en la zona gris, para luego llevarlo a lacuadrícula y colocarlo en la ubicación deseada. Si lo ubicamos sobre algún campoexistente, las restantes columnas de la derecha se desplazarán para dar cabida alnuevo campo.

1 1 0

mailxmail - Cursos para compartir lo que sabes

Page 111: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

61. Cómo definir el ordenamiento en una consulta

Vimos que la consulta creada en base a un filtro, heredó las condiciones deordenamiento que se le habían definido a dicho filtro, pero si tuviéramos queagregar, modificar, o eliminar un criterio de ordenamiento, pulsaremos en la casillaOrden, de la columna correspondiente, para abrir la lista de opciones: Ascendente, Descendente o Sin ordenar.

Cómo ordenar por dos o más campos

Podría darse la situación de que necesitáramos ordenar una consulta según losdatos de dos o más campos. Tal sería el caso, por ejemplo, de una consulta deítems de una factura (los distintos artículos vendidos bajo un mismo número defactura); aquí seguramente tendremos un campo que contiene el número de lafactura, y otro que determina la posición relativa de ítem para esa factura: Factura00000596 ítem 01, Factura 00000596 ítem 02, etc., o bien el código del artí-culo.

Tendremos entonces que ordenar primeramente por el número de la factura y, paraque aparezca todo perfectamente ordenado, debemos activar el orden también parala columna de los ítems. De este modo, siempre tendremos juntos a todos losregistros correspondientes a una misma factura y ordenados por el número de ítem.

Esto ocurrirá siempre y cuando la columna del número de factura se encuentre a laizquier-da de la de ítems (no es necesario que sean contiguas) ya que, como vimos, Access ordena siempre teniendo en cuenta la posición relativa de las columnas de izquierda a derechaAccess ordena siempre teniendo en cuenta la posición relativa de las columnasde izquierda a derecha.

Qué hacer cuando los campos no se presentan en el orden requerido

Si estuviera a la izquierda el número de ítem (o el artículo) y a la derecha el númerode fac-tura, no podríamos lograr el orden explicado. Sabemos que el cambiar elorden de las columnas no alterará los resultados de la tabla dinámica pero si, poralguna razón, no pudiéramos invertir el orden de las columnas, haremos lossiguiente:

1. Creamos un nuevo campo con el número de ítem, pulsando doble clic sobre esecampo en la tabla, agregamos a la consulta una última columna (repetida) con elnúmero de Ítem.

2. Desactivamos la casilla Mostrar de la nueva columna.

3. Seleccionamos la opción Ascendente en la fila Ordenar en la columna delnúmero de factura y en la de ítem.

Así quedarán indicadas con ordenamiento ascendente las columnas número defactura e ítem en la posición correcta (factura a la izquierda e ítem a la derecha), conlo que conseguiremos el ordenamiento deseado.

Como hemos dicho, la hoja dinámica es un elemento virtual, y por lo tanto estanueva co-lumna no ocupará un espacio considerable.

1 1 1

mailxmail - Cursos para compartir lo que sabes

Page 112: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

62. Ordenamiento y criterios de selección en laconsulta

Al final del Capítulo 4 (y con referencia a la figura 4.16) accedimos a una primeranoción del significado de las distintas filas de la cuadrícula de diseño.

En la primera columna se ha definido que el orden de la hoja dinámica será deacuerdo al nombre del cliente, y en las dos columnas restantes, se establece que seseleccionarán aquellos registros con CodProvin = "BA" Y MontoFacturado > 1000,etc.

Este ejemplo nos muestra entonces que los criterios de ordenamiento y selecciónpueden colocarse en distintas columnas.

También, si fuera necesario, podemos definir ordenamiento y selección en unamisma co-lumna (por ejemplo, si los datos debieran ordenarse por provincia y a lavez necesitáramos algún tipo de selección respecto de la provincia).

Repetimos una vez más que estas funciones son independientes entre sí.

Como en el caso de los filtros, los criterios de ordenamiento funcionan para fechas yvalores numéricos del mismo modo.

Además, como vimos, podemos crear una nueva columna sólo para definir el orden(o po-dría ser también para agregar algún criterio de selección) y, si así lohiciéramos, debemos dejar en blanco la correspondiente casilla Mostrar para evitarque la columna aparezca dos veces.

1 1 2

mailxmail - Cursos para compartir lo que sabes

Page 113: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

63. Cómo establecer un criterio por similitud

Vimos en el capítulo anterior cómo se transfieren los parámetros de un filtro a laconsulta. Aprovechando esta facilidad, definiremos ahora tres casos distintos decriterios de selección y veremos cómo son traducidos por Access a comandos de lafila Criterios en la hoja dinámica.

1. Abramos la tabla Clientes en modo tabla y en el primer campo: CODCLI,pulsemos doble clic para seleccionar el campo completo.

2. Pulsemos Filtro por selección. Quedará a la vista un único registro debido a quela condición que establecimos nos mostrará el único cliente que tiene el número quehemos seleccionado. Ahora, sabiendo que los filtros son acumulativos (ver Capítulo4) agregaremos otra condición.

3. Seleccionemos los tres primeros caracteres del nombre de ese cliente y pulsemosnuevamen-te Filtro por selección. La situación no ha cambiado, y esto se debe aque la nueva condición (que se agrega a la anterior) es que el nombre del clientecomience con los tres caracteres que hemos seleccionado de ese mismo registro,condición que, por supuesto, se cumple.

4. Seleccionemos ahora tres o cuatro caracteres en medio del campo DIRECCIÓN (nial principio ni al final del campo) u pulsemos filtro por selección. Siguemostrándose el mismo registro por la misma razón que explicamos anteriormente.

5. Seleccionemos ahora dos o tres caracteres al final del campo LOCALIDAD ypulsemos Filtro por selección.

Hemos creado cuatro condiciones de selección distintas: por campo completo, principio de campo, mitad de campo y final de campo. Ahora veamos cómoexpresó Access cada una de esas condiciones.

6. Pulsemos el botón Filtro por formulario (para ver las condiciones generadas) yensanchemos aquellas columnas en donde no alcanza a leerse la condicióncompleta. La figura 5.3 nos muestra estos cuatro casos de selección.

En el primer caso, la condición es simplemente el mismo contenido del campo; 1 0significa: muéstrense los registros cuyo campo numérico contiene un contenido de10. Esta condición se-lecciona por un valor único y completo del campo.

Cómo se expresan las condiciones por similitud

1 1 3

mailxmail - Cursos para compartir lo que sabes

Page 114: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Observemos que las condiciones restantes incluyen la palabra Como, encierran elvalor en-tre comillas y utilizan el asterisco (carácter comodín) que ya estudiamos enel capítulo anterior.

En el segundo caso, Pér* seleccionará todos aquellos registros cuyo nombre decliente co-mience con las letras "Pér" (sin importar qué otros caracteres contengaese campo).

En el tercero, *dav* significa: todas las direcciones que contengan en alguna partede su texto la cadena de caracteres "dav".

Y el cuarto criterio, *lla seleccionará todos aquellos registros cuya LOCALIDADtermine con los caracteres "lla".

De esta misma manera debemos llenar los campos del filtro por formulario oconstruir las expresiones del renglón Criterios, para crear una consulta queseleccione datos de una tabla.

Así podemos crear filtros por formulario o consultas por criterios del tipo Como"?ó?ez" pa-ra mostrar todos los registros con apellidos como Gómez, López, etc.,en lugar de obtenerlos uno a uno como lo hiciéramos con el comando Buscar en elcapítulo anterior.

De aquí se deduce que en respuesta a una selección parcial, Access establece unaclave por similitud, utilizando la palabra clave Como y caracteres comodín.

El ejemplo que elaboramos no es de mucha utilidad, dado que el primer criterioseleccionará un único registro de la tabla y los restantes volverán a seleccionar elúnico registro que quedó. No obstante, nos sirvió para conocer la sintaxis que creaAccess en respuesta a las selecciones efec-tuadas, y así poder escribir nosotrosmismos distintas condiciones de selección en la fila Criterios de la consulta.

Si sólo utilizamos el asterisco (*) como carácter comodín, no será necesario escribirlas comillas; Access interpretará que se trata de una expresión y las colocará pornosotros. Escribamos I * para encontrar todo lo que comience con la letra I.

Probemos esto mismo en una hoja de respuestas dinámicas; creemos una nuevaconsulta y en la fila correspondiente a la columna Nombre, coloquemos el criterio: "?ó?ez*""?ó?ez*".

Podemos hacer cualquier combinación de ordenamientos con parámetros de estetipo, y también con los de campo completo que vimos anteriormente.

1 1 4

mailxmail - Cursos para compartir lo que sabes

Page 115: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

64. Cómo aplicar filtros con comparacionesnuméricas

También podemos utilizar los datos numéricos de la tabla refiriéndonos a ellos, yasea bus-cando valores idénticos, o bien mayores o menores al parámetro dereferencia.

Cuando tratamos los filtros por formulario hicimos una referencia a este tipo decomparado-res: MontoFacturado > 1000.

Veamos otros ejemplos:

1. Accedamos a la cuadrícula del ejercicio anterior y borremos sus criterios.

2. En la casilla de Ordenamientos correspondiente a la columna MONTOFATURADOseleccio-nemos Descendente.

3. En la casilla de los criterios coloquemos: > 1 0 0 0

4. Pulsemos el icono Modo hoja de datos (ejecutamos la consulta) y visualizaremoslos registros cuyo monto facturado supera los $ 1000, ordenados de mayor a menor,según su importe.

Cómo establecer topes máximos y mínimos

Podríamos necesitar sólo los registros comprendidos dentro de un rango de valores,lo que nos obligará a establecer dos condiciones (mínima y máxima) que losregistros deberán cumplir simultáneamente; por lo tanto, según lo que aprendimos,estas condiciones deberán expresarse en distintas columnas como criterios simples,o bien combinar ambas en un criterio complejo utili-zando el nexo lógico And.

Seleccionaremos, por ejemplo, los registros cuyo monto sea superior a $ 1000 perocon la condición de que a la vez sean inferiores a $ 2000.

5. Accedamos a la cuadrícula (modo diseño); agreguemos otra columna con elmismo campo MontoFacturado, y en el criterio escribamos < 2 0 0 0.

6. Deshabilitemos para esta última columna la casilla Mostrar.

7. Pulsemos el icono Modo hoja de datos (ejecutamos la consulta) y tendremos losregistros comprendidos dentro del rango indicado.

Cómo combinar los operadores > < =

En el ejemplo anterior no incluimos (en caso de haberlos) los registros cuyo importefuera $ 1000 y $ 2000, porque pedimos respectivamente los mayores y menores aesos dos importes. Combinando dos operadores podremos definir condiciones demayor o igual, menor o igual y dis-tinto de. Apliquemos estos criterios a la consultaanterior:

1. Accedamos a la cuadrícula y en la primera columna de MontoFacturadocambiemos > por > = y en la segunda cambiemos < por < =

2. Apliquemos el filtro y aparecerán dos registros más (de los clientes 72 y 58)cuyos importes respectivos son $ 1000 y $ 2000.

1 1 5

mailxmail - Cursos para compartir lo que sabes

Page 116: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

El operador Entre

Podemos expresar esta misma condición en una sola columna con el operador EntreEntre. En la casilla de Criterios correspondiente a la columna MontoFacturadoescribiremos: Entre 1000 y 2000.

Luego podremos eliminar la columna auxiliar pues esta condición reemplaza a lasdos ante-riores.

1 1 6

mailxmail - Cursos para compartir lo que sabes

Page 117: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

65. Cómo manejar las fechas

Ingresando las fechas en un formato normal, como se muestra en el ejemplo,podemos tam-bién hacer comparaciones en el mismo formato. Cuando incluyamosfechas en un criterio debe-mos encerrar a las mismas entre símbolos # , como porejemplo: # 1 / 1 / 9 0 #.

El símbolo # aparece en los modernos teclados para idioma español como terceraalternativa de la tecla que contiene el número 3 y por lo tanto, para obtenerlodebemos pulsar la tecla [Alt Gr] junto con la correspondiente al número [3] en elteclado alfabético.

Por lo demás, podemos aplicar los mismos conceptos y operadores que en el casode los valores.

Debemos tener en cuenta cuál es el formato de fecha que se está utilizando enWindows (si es el normal dd/mm/aaaa o alguno utilizado en otros países comoaaaa/mm/dd o mm/dd/aaaa). Tome-mos los recaudos pertinentes, dado que en eltranscurso de este curso utilizaremos el formato dd/mm/aa.

Por ejemplo:

1. Borremos las columnas MontoFacturado (o sólo sus criterios) y luego ingresemoslos datos de la figura 5.4.

Figura 5.4

Cuando pasemos a modo hoja de datos se mostrarán sólo los registros quecorrespondan a los años 1990 a 1993.

Uso del operador "Entre" con fechas

Podemos utilizar el operador Entre también para fechas, y expresar la condición dela figura 5.5 en una sola columna como:

Entre #1/1 /90# y #1/1 /94#

Obtendremos los registros comprendidos entre esas dos fechas inclusive.

En este caso, a diferencia de la condición de la figura, se mostrarán también losregistros cuyas fechas sean 1/1/90 y 1/194.

Si nos resultara más fácil, podemos expresar las fechas en la forma dd-mmmm-aa;para el ejemplo anterior sería: Entre #1-ene-90# y -#1-ene-94#. Accessconvertirá este formato al de dd/mm/aa.

1 1 7

mailxmail - Cursos para compartir lo que sabes

Page 118: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

66. Filtros en base la resultado de una operación

Es posible elaborar condiciones más complejas; al respecto mencionaremos aquí uncaso en el que la condición no se refiere a un campo sino al resultado de unaoperación en este campo.

A modo de ejemplo, seleccionaremos aquellos registros cuya fecha presente unaantigüe-dad de más de ocho años respecto de la fecha actual.

1. Accedamos a la cuadrícula y borremos la segunda columna.

2. En el lugar de la condición o criterio de la primera columna coloquemos:

Fecha() - clientes!FechaPrimeraCompra > 365*8

El símbolo ! se utiliza para indicar dependencia de unos objetos respecto de otros.En este caso indicamos que el campo FechaPrimeraCompra pertenece a la tabla Clientes. Access agregará los corchetes y la expresión quedará:

Fecha() - [clientes!][FechaPrimeraCompra]> 365*8

Esta ecuación lógica tiene dos partes, con una operación matemática en cada una.

En la primera se resta la fecha del registro de la fecha del día (Fecha()) para obteneruna cantidad de días, valor que se compara con el resultado de la segundaoperación, que expresa la cantidad de días contenida en ocho años.

También podemos establecer condiciones respecto de operaciones que comprendandos o más campos de la tabla, como por ejemplo los intereses punitorios en base auna diferencia entre fechas; la fecha de pago menos la fecha de vencimiento,multiplicada por un importe (el de la fac-tura) y un coeficiente (el del interés porcada día de atraso).

1 1 8

mailxmail - Cursos para compartir lo que sabes

Page 119: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

67. Cómo utilizar criterios lógicos complejos

Disponemos de dos operadores lógicos que nos permiten enlazar condicionessimples para establecer así condiciones complejas. De este modo podemos definiren una sola columna una condición como la del ejemplo de la figura 5.4; hagámoslo:

1. Accedamos a la cuadrícula de la figura 5.4, borremos la segunda columna y enlugar de la condición simple de la primera columna escribamos: >#31 /12 /989# Y< 3 1 / 1 / 9 4 #

2. Volvamos al modo hoja de datos y obtendremos el mismo resultado que con lasespecificacio-nes de la figura 5.4.

Esto confirma lo que habíamos dicho al principio en cuanto a que los criteriosexpresados en distintas columnas actúan en modo Y.

En forma similar podemos utilizar el operador lógico Or para expresar alternativas.Sabemos que éstas pueden expresarse en la misma columna como renglonessucesivos debajo de Crite-rios. La figura 5.5 muestra la equivalencia entre tresexpresiones simples y una compleja para seleccionar los registros de estas treslocalidades.

Observemos que cuando están incluidos en una expresión, los literales se encierranentre comi-llas.

El operador "In"

La expresión anterior se simplifica si utilizamos el operador "In" de esta forma:

In ("Quilmes","Palomar","Morón") es una expresión equivalente.

En la Versión 2000 es necesario utilizar los operadores en inglés (In, Or) en lugar delos co-rrespondientes en castellano (En y O), tal como se los expresaba en laversión anterior del pro-grama.

El operador lógico de negación

Colocando la palabra negado antes de una expresión, el resultado lógico será elcontrario al de dicha expresión. Hagamos un ejemplo en base al campo LOCALIDAD.

1. Accedamos nuevamente a la cuadrícula, y cambiemos este último criterio por

Negado ("Quilmes" Or "Palomar" Or "Morón") o bien

Negado In ("Quilmes","Palomar","Morón")

2. Pulsemos el botón de hoja de datos y habremos excluido los registros de estas

1 1 9

mailxmail - Cursos para compartir lo que sabes

Page 120: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

2. Pulsemos el botón de hoja de datos y habremos excluido los registros de estaslocalidades, por lo que se mostrarán aquí sólo los registros que nos se mostraron enla consulta anterior.

Observemos además que la expresión debió encerrarse entre paréntesis.

Podemos probar este nuevo operador combinándolo con todas las condiciones quehemos establecido anteriormente:

Negado p*, Negado <365*2, Negado <#22/11/94#, etc.

1 2 0

mailxmail - Cursos para compartir lo que sabes

Page 121: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

68. Otras posibilidades de selección

Cómo seleccionar registros por campos vacíos

Cuando necesitemos seleccionar registros que contengan algo en un determinadocampo numérico, es decir, mostrar aquellos registros que contengan un número, yasea positivo, negativo o cero, utilizaremos la expresión negado nulo o es negadonulo. Por ejemplo, si en nuestra con-sulta de selección de clientes ingresamos eltexto nulo en la celda Criterios de la columna TELE-FONO, seleccionaremos todoslos registros de clientes que no tengan teléfono.

Por el contrario, si colocamos negado nulo, aparecerán los registros que tengan algún texto en el campo TELEFONO.

Cómo seleccionar por la fecha del día

Si deseamos buscar un registro que tenga la fecha del día de hoy (fecha actual)introduci-remos en la celda Criterios, correspondiente a ese campo: Fecha().

1 2 1

mailxmail - Cursos para compartir lo que sabes

Page 122: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

69. Agreguemos una segunda tabla a la base

Siguiendo un camino similar al de clientes, crearemos ahora la tabla de Vendedores.

1. En el cuadro Base de datos pulsemos el botón correspondiente a Tablas y luegoel botón Nuevo.

2. Aparecerá el cuadro de opciones de la figura 5.6 en donde optaremos por VistaDiseño y pul-saremos Aceptar.

Figura 5.6

Esta es otra alternativa para crear una tabla, en lugar de utilizar el icono Crear unatabla en vista Diseño, que empleáramos en el Capítulo 2.

3. Escribiremos en la cuadrícula de diseño los siguientes campos de datos:

CodVend Numérico Código del Vendedor

NomVend Texto Nombre del Vendedor

PorComis Numérico Porcentaje de Comisión

4. En la cuadrícula inferior asignaremos respectivamente los siguientes formatos(figura 5.7):

CodVend Tamaño=Byte Requerido=Sí Indexado=Sí, sin duplicados

NomVend Tamaño=30

PorComis Tamaño=Simple Requerido=Sí Indexado=No

1 2 2

mailxmail - Cursos para compartir lo que sabes

Page 123: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 5.7

Cómo designar un campo como Clave principal

5. Pulsemos sobre el primer campo y luego pulsemos el botón Clave principal quese encuentra en la barra de botones de la ventana de Access. Veremos enseguida laprimera ventaja de disponer de una Clave principal.

6. Por último guardaremos la tabla con el nombre Vendedores.

7. Pasemos al modo hoja de datos y carguemos los siguientes datos:

1  Pedro  8.00

2  Erika  10.00

3  Mario  7.00

El resultado será similar al de la figura.

Modifiquemos nuevamente la tabla de Clientes

Ya agregamos un par de columnas a nuestra tabla de Clientes; ahora seguiremosagregan-do campos. Se trata del campo nexo que relacionará la tabla Clientes con lade Vendedores.

1. En el cuadro de diálogo Base de datos pulsemos el botón Tablas y resaltemosCLIENTES.

2. Pulsemos el botón Diseñar para pasar a la cuadrícula de definición de la tabla.

1 2 3

mailxmail - Cursos para compartir lo que sabes

Page 124: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

2. Pulsemos el botón Diseñar para pasar a la cuadrícula de definición de la tabla.

3. Debajo del último campo agregaremos:

CodVend     Numérico Código del Vendedor

El nombre de este campo es el mismo que hemos utilizado en el correspondiente dela tabla Ven-dedores. Veremos cómo se produce una Inscripción automática entredos tablas por campos con el mismo nombre.

En el panel inferior cambiemos: Tamaño=Byte, Requerido=No, Indexado=No

Agreguemos otro campo más que utilizaremos más adelante:

CodIva Texto Código tipo de Inscripción

Y en el panel inferior: Tamaño=2, Requerido=No, Indexado=No, Formato >

El símbolo > en Formato significa que toda entrada que se coloque en ese capo seráconvertida a MAYÚSCULAS.

4. Pulsemos el botón Grabar para guardar los cambios del diseño. Aparecerá uncartel de adver-tencia, a la que contestaremos No.

5. Para completar esta tabla carguemos los códigos de vendedor a cada uno de losregistros de Clientes, escribiendo los valores 1, 2 o 3.

1 2 4

mailxmail - Cursos para compartir lo que sabes

Page 125: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

70. Cómo mostrar datos de dos o más tablas

Crearemos una consulta que mostrará toda la información que contiene la tabla deClientes, más el nombre y el porcentaje de comisión del vendedor asignado, siendoestos últimos datos tomados de la tabla de Vendedores mediante la combinaciónentre ambas tablas.

Creemos una consulta con dos tablas combinadas

1. Si no estamos en el cuadro Base de datos pulsemos el icono correspondiente.

2. Repitamos los pasos 1 a 4 del principio del capítulo para obtener la disposiciónde ventanas de la figura 5.2.

3. Agreguemos ahora la tabla de Vendedores al panel de la consulta de la mismamanera que lo hicimos con la tabla de Clientes en los pasos 3 y 4 del mencionadoejercicio y cerremos el cuadro Mostrar tabla (de la figura 5.1).

El panel de definición de consultas tendrá ahora el aspecto de la figura 5.8.

Notemos que al cargar la segunda tabla apareció indicada la combinación (figura5.8). Ob-servemos que Access combinó automáticamente ambas tablas por elcampo CodVend, debido a que detectó que hay dos campos con el mismo nombrey el mismo tipo de datos y que uno de ellos, en una de las tablas, es claveprincipal.

Figura 5.8

Para obtener una representación gráfica como la de la figura, debemos pulsar elbotón de desplazamiento hacia abajo en la tabla de Clientes (o estirar esa tablahacia abajo, como en la figura), ya que inicialmente este campo no es mostrado por

1 2 5

mailxmail - Cursos para compartir lo que sabes

Page 126: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

no haber espacio suficiente. Pulsando sobre le borde inferior o el superior de estaventana podremos estirarla y así disponer del espacio suficiente en el panel superiorpara mostrar todos los campos de la tabla.

La combinación que muestra la figura legará a la tabla de Clientes y a la deVendedores de manera tal que Access buscará por la Clave principal el registro deVendedores que corresponda al número de vendedor (CodVend) que se encuentrapresente en la tabla de Clientes.

No es necesario que los campos que producen la combinación tengan el mismonombre, pero en el caso de que los nombres sean distintos debemos efectuar lacombinación manualmente (ver más adelante), en cambio, siendo idénticos (igualnombre y tipo de dato, que en este caso es By-te) y siendo uno de ellos Claveprincipal, Access establecerá la relación automáticamente. Lo mismo podemos decirrespecto de la Clave principal: no es necesario que exista una clave princi-pal paraestablecer una combinación como la de la figura, pero en este caso de no existir,tendre-mos que establecerla manualmente.

Utilizar el mismo nombre para los campos que contengan el mismo tipo deinformación pro-porcionará una mayor sencillez al diseño de nuestra base de datos;por otra parte no representa ningún riesgo de confusión, ya que Accessinternamente identifica a todos los campos antepo-niéndoles el nombre del objetoal que pertenecen: tabla, consulta, formulario, etc.

El procedimiento de combinar tablas es muy sencillo en ACCESS ya que se muestranlos objetos y las relaciones entre ellos en forma gráfica.

Si luego de cerrar el cuadro Mostrar tabla (ver figura 5.1) necesitáramos incorporardatos de una nueva tabla, abriremos la consulta en modo diseñoy pulsaremos elbotón mostrado aquí (que se encuentra en la barra de botones de Access) con lo queaparecerá nuevamen-te el cuadro para agregar tablas.

El próximo paso: Agregar campos de las dos tablas

Comenzaremos por una consulta sencilla que incluya, de la tabla de Clientes, elnúmero, nombre del cliente, provincia y número de vendedor y, de la tabla VendedoresVendedores el nombre del ven-dedor y porcentaje de comisión.

1. Pulsando doble clic en los campos correspondientes de las tablas que acabamosde incorpo-rar al panel gris de la consulta, agreguemos a la cuadrícula CodCli, Nombre, CodVend y CodProvin (de Clientes) y NomVend y PorComis (deVendedores).

2. Si es necesario desplacemos la lista de la tabla Clientes para ubicar el campoNombre.

3. Guardemos esta consulta asignándole el nombre Clientes por Vendedor.

4. Pulsemos el botón Modo hoja de datos y veremos el resultado (figura 5.9) que sedistingue de una tabla sólo por su título, el que nos indica que se trata de una Consulta de selección.

1 2 6

mailxmail - Cursos para compartir lo que sabes

Page 127: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 5.9

Hemos mostrado algunos datos del cliente y los datos de vendedores y en adelantepodre-mos manejarlos como si pertenecieran a una misma tabla. Ahora hagamos losiguiente:

1. Pulsemos en una fila cualquiera que contenga datos, pulsemos sobre CodVend,escribamos otro valor y pulsemos luego Return para confirmarlo. Observemos queautomáticamente cambia el texto del campo NomVend de esa misma fila encorrespondencia con el valor ingresado en el código. Esto nos muestra que larelación se encuentra activa y responde inmediatamente.

2. Ahora, en el mismo o en cualquier otro registro, escribamos para CodVend otrovalor que no exista en la tabla de Vendedores, por ejemplo 4 .

3. Pulsemos Flecha abajo para pasar a otro registro y así dar por aceptado elregistro actual. Aparecerá el cartel de la figura 5.10.

Figura 5.10

No se nos permitirá abandonar el registro ni será aceptado el valor ingresado por noencon-trarse en la tabla de Vendedores.

4. Pulsemos Aceptar para cerrar este aviso y luego Esc para recuperar el estadoanterior del/los campos modificados.

5. Pulsemos Flecha abajo para confirmar el cambio.

Qué ocurre al cambiar datos de la tabla relacionada

Cuando creamos una combinación, estamos estableciendo un vínculo quellamaremos Ser-vidor - Cliente. Esto significa que la primera tabla (en este caso Clientes) utiliza un servicio que le presta la tabla Vendedores, que desempeña eneste caso la función de servidor.

1 2 7

mailxmail - Cursos para compartir lo que sabes

Page 128: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Podemos cambiar también los datos que provienen de la tabla servidora y, en esecaso, se actualizarán en la vista todos los registros que mostraban todos esosdatos, visualizándose ahora los nuevos.

1. Mantengamos abierta la consulta y abramos la tabla Vendedores, cuidando queambas se encuentren a la vista.

2. Probemos hacer algún cambio en los campos NomVend y PorComis (de la tabla Vendedo-resVendedo-res) y verifiquemos en cada caso cómo cambian en la consulta todos losregistros que tienen asignado el vendedor que se modificó.

Esto nos confirma que se trata de hojas verdaderamente dinámicas que nosmuestran en cada momento los datos actualizados.

Cómo ingresar nuevos registros en esta consulta

Para que se puedan agregar registros a una consulta de este tipo, debemos tener encuenta un solo detalle: la misma debe incluir el campo CodVend de la tabla de ClientesClientes y no incluir el campo del mismo nombre de la tabla de Vendedores. Estosignifica que no podemos incluir en una consulta el campo nexo de la combinacióndel lado del Servidor.

Esta restricción no representa ningún tipo de impedimento, porque sabemos que elcampo CodVend tendrá siempre el mismo valor en ambos lados de la línea decombinación y por lo tanto no tendremos inconvenientes en incluir siempre elcampo de combinación de la tabla cliente.

Cómo dar altas de Vendedores desde Clientes

Esto no es posible debido a que al existir la combinación se verificará que todo valorque co-loquemos en CodVend exista previamente en la tabla Vendedores,avisándonos en caso contra-rio mediante el cartel de la figura 5.10.

Cómo modificar los datos de Vendedores desde Clientes

Es posible hacerlo y notaremos que al igual que ocurría cuando cambiábamos losdatos de la tabla de Vendedores desde la misma tabla, ahora que lo hacemos desdela consulta se actuali-zarán todos los registros en donde se muestre el dato queestamos modificando.

1. Abramos la consulta Clientes por vendedor y cambiemos el nombre de algúnvendedor.

2. Pulsemos Flecha arriba o Flecha abajo para actualizar el registro y notaremos quehan cambiado también todos los demás registros que utilizaban ese dato.

Lo que vimos constituye una enorme ventaja para aplicaciones personales osistemas utilizados por unas pocas personas pero debemos tomar las necesariasprecauciones si se trata de siste-mas de mayor alcance. Podemos imaginarnos queen un sistema al que acceden muchos usua-rios no podemos permitir a cualquieroperador cambiar datos de la tabla de vendedores desde la misma consulta. Másadelante aprenderemos a limitar las posibilidades de modificación en aque-llosdatos que son críticos para el sistema.

1 2 8

mailxmail - Cursos para compartir lo que sabes

Page 129: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

71. La consulta puede ordenarse por datos de tablascombinadas

Sabemos ya que podemos definir el orden de los registros de la hoja dinámicaseleccionan-do Ascendente, Descendente o sin ordenar en el renglón Orden de lacolumna que deseamos. Esta columna de ordenamiento puede ser también unacolumna proveniente de alguna de las ta-blas combinadas. Por ejemplo, podemosdefinir el orden en la columna NomVend que, como sa-bemos, contiene datos deuna tabla combinada; entonces, los registros de la consulta aparecerán ordenadospor el nombre del vendedor y, de esta forma, aparecerán juntos todos los clientesque tengan asignado el mismo vendedor.

Las consultas se pueden ordenar también con los botones de orden

Así como lo hicimos con las tablas, podemos hacerlo con las consultas o tablasdinámicas.

1. Estando abierta la consulta, pulsemos en un campo de la columna por la quequeremos orde-nar, ésta puede ser también una proveniente de la tabla combinada.

2. Pulsemos el botón correspondiente  y los datos se ordenarán de inmediato.

3. Pasemos a modo diseño.

4. Abramos el cuadro de Propiedades y observemos que el parámetro Ordenar portiene ahora el campo por el que se ordenó la consulta. El orden quedó incorporadocomo una propiedad de esta consulta y podemos manejarlo del mismo modo que lohacíamos con las tablas.

Podemos aplicar filtros por selección o por formulario

Procediendo del mismo modo que aprendimos cuando estudiamos las tablaspodemos ma-nipular la información que tenemos a la vista en una consulta.Aplicaremos filtros por selección o por formulario, los que se incorporarán comopropiedades; luego podremos modificarlas desde el cuadro de Propiedades de laconsulta.

1 2 9

mailxmail - Cursos para compartir lo que sabes

Page 130: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

72. Cómo eliminar una combinación

Eliminaremos ahora la combinación y luego, en el próximo tema, volveremos aestablecerla manualmente. Para eliminar una combinación como la que se muestraen la figura 5.8 haremos lo siguiente:

1. Pulsemos sobre la línea que indica la relación con la tabla de Vendedores; ésta semostrará engrosada.

2. Pulsemos la tecla Suprimir y habremos eliminado la combinación.

3. Si pulsamos sobre la línea con el botón derecho del mouse aparecerá el menúemergente de la figura 5.11.

Figura 5.11

Allí podremos pulsar el botón Eliminar para lograr el mismo efecto.

1 3 0

mailxmail - Cursos para compartir lo que sabes

Page 131: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

73. Cómo establecer una combinación manualmente

Restableceremos la combinación, pero ahora lo haremos manualmente.

1. En la ventana de diseño, accionemos sobre las barras de desplazamiento de lastablas Clien-tes y Vendedores para exhibir los dos campos de la combinación(CodVend).

2. Pulsemos sobre CodVend de la tabla Clientes y, sin soltar, arrastremos hastaubicarlo sobre el campo CodVend de la tabla Vendedores y liberemos el botón.Aparecerá nuevamente la lí-nea que indica la combinación.

Con el método que se mostró, podemos combinar cualquier campo de una tabla concual-quier otro en otra tabla, con la única condición de que ambos campos nexodeben contener el mismo tipo de datos; de lo contrario, cuando ejecutemos laconsulta correspondiente aparecerá el aviso de error de la figura 5.12.

Figura 5.12

En el siguiente capítulo aprenderemos algo más sobre las combinaciones y luegotrabaja-remos con relaciones que son algo similar a estas combinaciones que yavimos pero aplicadas directamente entre las tablas y que son válidas para toda labase de datos. Las relaciones ofrecen algunas posibilidades más que lascombinaciones; aprenderemos varios conceptos acerca de las relaciones que nosayudarán a entender las distintas formas en que pueden aplicarse.

Cómo eliminar una tabla de la consulta

Pulsando sobre el cuadro de la tabla en el sector superior de la consulta paraseleccionarla, podemos pulsar luego la tecla Suprimir para eliminarla de la consulta.

Por supuesto, también habremos dejado sin efecto la relación existente.

1. Pulsemos sobre el botón Mostrar tablas en la barra superior, y de la lista (cuadrode la figura 5.1) arrastremos Vendedores al sector superior de la cuadrícula. Larelación se habrá estable-cido nuevamente en forma automática.

Ejecución directa de una consulta

En general podremos ejecutar cualquier objeto (hacerlo aparecer para visualizarlo otrabajar en el mismo) pulsando doble clic sobre el objeto.

Pulsemos entonces el botón Consultas y, con doble clic, traigamos a la pantalla Clientes por Vendedor.

Cómo mostrar la fila Tabla

En la figura 5.8 podemos ver la fila Tabla debajo de la correspondiente a los

1 3 1

mailxmail - Cursos para compartir lo que sabes

Page 132: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Campos. Esta fila nos muestra de qué tabla proviene el campo que se muestra en lacolumna. Podría suceder que no aparezca en la pantalla; en ese caso podemosactivarla pulsando sobre el menú VER y activando la opción Nombres de tabla.

1 3 2

mailxmail - Cursos para compartir lo que sabes

Page 133: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

74. Cómo cambiar los nombres de campos en lasconsultas

Cuando creamos la consulta, trasladamos a la cuadrícula los propios nombres de loscam-pos de las distintas tablas. Si por alguna razón necesitáramos que el nombredel campo que apa-rece en la hoja dinámica sea distinto del original de la tabla,procederemos como sigue:

1. Accedamos al modo diseño de la consulta.

2. Desplacémonos hacia la derecha, hasta que aparezca el campoFechaPrimeraCompra.

3. Pulsemos a la izquierda del mismo como para editar su contenido; debemosprestar especial atención en cuanto a que el campo no quede resaltado en fondonegro, sólo deberá quedar el cursor titilante al comienzo del campo.

4. Escribamos Fecha de la Primera Compra:: deberá quedar como se muestra en lafigura 5.13. Observemos que el texto agregado deberá terminar con (:).

Figura 5.13

5. Para verificar el cambio, ejecutemos la consulta y veamos la nueva etiqueta de la

columna de fechas correspondiente (el botón  es el de Ejecución y esequivalente, en este caso, al de Ver modo hoja de datos).

Hagamos algo parecido con la propiedad Título

Estando abierta la lista de propiedades de un campo (modo diseño de la consulta)podemos colocar en la propiedad Título, un texto distinto al nombre del campo enla cuadrícula. Este alias se mostrará toda vez que abramos la consulta en modo DatosDatos o abramos un formulario que incor-pora ese campo de la consulta. Esto essimilar a lo que veremos respecto a los datos de las tablas luego, en el Capítulo 8cuando estudiemos las propiedades de los campos.

Esta facilidad de poder mostrar nombres distintos a los de la tabla de origen de losdatos, nos ayudará a hacer diseños más prolijos y claros, especialmente en el casode que la aplicación vaya a ser utilizada por otra persona.

1 3 3

mailxmail - Cursos para compartir lo que sabes

Page 134: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

75. Cómo agregar otra tabla a nuestra base

Continuando con el tema que dejamos en el capítulo anterior, completaremosnuestra con-sulta de Clientes agregándole una nueva tabla combinada y luegoestudiaremos otra forma más específica de establecer relaciones generales,similares a las que ya vimos pero que se aplican a toda la base de datos. Este tipo derelaciones permite proteger la integridad referencial de nues-tros datos, estosignifica, para aclararlo con un ejemplo sencillo, evitar que pueda eliminarse elcliente cuando éste tiene pedidos o facturas pendientes en alguna otra tabla de labase.

Por último, crearemos un formulario con el generador automático llamado Autoformulario, y trabajaremos en los aspectos básicos de los formularios.

Cómo agregar otra tabla a nuestra base

Siguiendo con el desarrollo del esquema de la figura 1.2 (en el Capítulo 1),agregaremos la tabla de categorías de IVA, para luego elaborar una hoja derespuestas dinámicas que nos mues-tre todos estos datos; por último, unformulario en donde aplicaremos todos los campos. El trabajo que sigue es similaral que realizamos cuando creamos la tabla de vendedores en el capítulo ante-rior.

1. En el cuadro Base de datos pulsemos el botón Tabla, luego Nuevo, optemos por Nueva tablaNueva tabla (sin asistente) e ingresemos la siguiente definición:

CodIva Texto Código tipo de Inscripción

DescIva Texto Descripción de la situación I.V.A.

PorcIva Numérico Porcentaje de recargo por I.V.A.

En el sector inferior, asignemos a estos campos los siguientes parámetros:

CodIva Tamaño=2 Requerido=Sí Indexado=Sí, sin duplicados Formato >

DescIva Tamaño=25

PorcIva Tamaño=Simple Requerido=Sí Indexado=No

2. Designaremos al primer campo como clave principal.

3. Pulsemos el botón Guardar y asignemos a esta tabla el nombre Códigos IVA.

4. Pasemos al modo hoja de datos y carguemos en esta tabla los siguientes datos:

RI    Responsable Inscripto    10.50

RN    Responsable No Inscripto    21.00

EX    Exento    0.00

NR    No Responsable    21.00

1 3 4

mailxmail - Cursos para compartir lo que sabes

Page 135: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

76. Una consulta con dos tablas relacionadas

Agregaremos a la consulta del capítulo anterior esta tabla que acabamos de crear, laque automáticamente se relacionará con el campo CodIva que agregáramos en suoportunidad al re-gistro del cliente.

En adelante, cada vez que se muestre un registro de clientes, Access accederátambién a esta tabla de códigos para mostrarnos la categoría de inscripción en elIVA del cliente.

1. De la forma que se explicó al final del Capítulo 2, creemos una copia de laconsulta Clientes por Vendedor, para seguir trabajando sobre la misma consulta ya la vez tener una constancia de lo que hicimos hasta ahora.

2. Accedamos al modo diseño y en lugar de pulsar Mostrar tabla para acceder a lalista de tablas, incorporemos la nueva tabla de códigos IVA de una manera distinta:

En lugar de abrir el cuadro Mostrar tabla, como lo hicimos antes, podemos abrir elcuadro de diá-logo base de datos y pulsar la solapa Tablas para arrastrar desde allílas tablas al sector gris de la cuadrícula de diseño de la consulta.

Como ya están dadas las condiciones, aparecerá indicada la relación de esta tablacon la tabla Clientes mediante el campo CodIva, tal como lo muestra la figura 6.1.

Declaremos los campos

Ahora agregaremos los campos DescIva y PorcIva de la tabla CodIva, a los datos delos clientes y de los vendedores que ya tenía la consulta. En primer lugar,acomodamos las tablas para que se muestren las relaciones de la consulta como selas ve en la figura 6.1:

3. Acerquemos el señalador al borde superior (o inferior) de la ventana de diseño,pulsemos y estiremos para aumentar la altura.

4. Ubiquemos el señalador en la línea que separa el área grisada de las tablas delárea de la cuadrícula. Pulsemos y, manteniendo pulsado, desplacemos hacia abajopara agrandar el área grisada, hasta que tenga la altura que muestra la figura.

5. Pulsemos sobre alguno de los laterales y arrastremos hacia afuera para ensanchar.

6. Pulsando en la barra de títulos de cada una de las barras, ubiquémoslasconvenientemente de modo que las líneas de combinación indiquen claramente quécampos conectan.

7. Pulsemos sobre el campo CodIva de la tabla de Clientes y arrastremos hacia elsector de la cuadrícula.

8. Hagamos lo mismo con los campos DescIva y PorcIva.

9. Pulsemos el botón Guardar, asignando a esta hoja de respuestas dinámicas elnombre Cons-Clientes.

1 3 5

mailxmail - Cursos para compartir lo que sabes

Page 136: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 6.1

1 3 6

mailxmail - Cursos para compartir lo que sabes

Page 137: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

77. La relación verifica la coherencia de los datos delas tablas

Si ejecutáramos la consulta, no nos mostraría ningún registro. Esto se debe alcomporta-miento de la relación que definimos en la consulta. Access creainicialmente relaciones denomina-das estrictas; de acuerdo con los datos delejemplo, esto significa que:

Debe existir, en la tabla de Códigos de IVA, una clave que coincida con el contenidodel campo CodIva del registro del cliente, pues de lo contrario, no se mostrará esteregistro y, genera-lizando a todas las relaciones establecidas en la consulta, debenencontrarse cada uno de los datos relacionados en sus tablas correspondientes.

En este caso, como aún no hemos cargado valores en los campos CodIva de ningúnregis-tro (de la tabla Clientes), los mismos tendrán un valor nulo y, por lo tanto, nocoincidirán con nin-guno de los valores disponibles en las tablas correspondientes;en consecuencia, el resultado de la consulta será una hoja de datos en blanco.

1. Pasemos a modo hoja de datos para ver el resultado de la consulta. La misma,como hemos dicho, aparecerá en blanco.

No podremos entonces acceder a los registros de clientes para completarlos con sucorres-pondiente código impositivo.

¿Cómo solucionamos este problema? ¿Debemos eliminar la tabla recién agregada?No, la solución consiste en modificar la relación recién establecida (del campo CodIvaCodIva con la clave de esta nueva tabla), para que nos muestre todos los registros apesar de que no encuentre coinci-dencias.

2. Volvamos al modo diseño de la consulta.

1 3 7

mailxmail - Cursos para compartir lo que sabes

Page 138: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

78. Cómo modificar las propiedades de una relación

Para hacer visibles todos los registros cambiaremos provisoriamente esta relaciónestricta (relación tipo 1) por otra que nos muestre todos los registros de clientesaunque éstos no cumplan con las condiciones que vimos arriba, llamadas de integridad referencialintegridad referencial.

Modifiquemos ahora, dentro de la consulta ConsClientes, las propiedades de larelación con la tabla de Códigos de IVA.

Veamos cómo se modifican las propiedades de una relación:

1. Ubiquemos el extremo del señalador del mouse exactamente sobre la línea derelación de la tabla Códigos IVA y pulsemos doble clic. Aparecerá el cuadro de lafigura 6.2.

Figura 6.2

Las opciones de este cuadro son suficientemente explícitas, aunque merecenalgunas con-sideraciones que haremos luego.

2. Pulsando sobre el segundo botón, estableceremos una relación que nos permitirátrabajar con el registro del cliente, aún cuando el mismo no cumpla las condicionesde integridad que men-cionábamos antes. Pulsemos luego Aceptar.

Observemos que ha cambiado la línea indicadora de la relación mostrando ahorauna flecha en su extremo derecho.

3. Guardemos los cambios hechos a la consulta, y ...

4. Ejecutemos para comprobar que ahora sí se muestran todos los registros.

5. Si la ventana de la consulta que tenemos abierta no ocupa toda la pantallapulsemos el botón de maximizar.

1 3 8

mailxmail - Cursos para compartir lo que sabes

Page 139: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

6. Desplacémonos hacia la derecha para tener a la vista el campo quecompletaremos (CodIva) y los campos dependientes de la tabla correspondiente.

Completaremos ahora esos datos contando con una validación inmediata yautomática de los mismos.

7. Pulsemos en la columna CodIva del primer registro, escribamos RI Tabulador yobservemos que han aparecido los datos correspondientes en las columnas DescIvay PorcIva.

Si el código que escribimos no existiera en la tabla correspondiente, los camposdependien-tes (DescIva y PorcIva) quedarán en blanco; no obstante, el registropermanecerá visible mos-trando el resto de los campos del cliente.

8. Comprobémoslo ingresando en CodIva un valor inexistente, como por ejemplo XX.

9. Corrijamos este registro colocando un valor válido y luego completemos el restode las casillas de la columna CodIva con valores existentes en la tabla respectiva.

Recordemos que podemos ayudarnos con el Portapapeles.

1 3 9

mailxmail - Cursos para compartir lo que sabes

Page 140: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

79. Distintos grados de control en una relación

Veremos más adelante, en este mismo capítulo, las posibilidades que nos ofreceAccess en cuanto a seguridad en la coherencia de los datos relacionados para todala base de datos. Por ahora seguimos refiriéndonos a las combinaciones, es decir lasrelaciones dentro de la consulta.

El tipo de relación se indica gráficamente empleando las líneas correspondientesdistintos terminales, según sea el caso.

Relaciones estrictas

Ya vimos que la relación de tipo 1 (que se indica con una línea terminada en ambosextre-mos por un punto) es una relación estricta que exige coincidencias con latabla relacionada.

El campo de destino es, por lo general, la clave de acceso o clave principal de latabla rela-cionada.

Access crea las relaciones (ya sea en forma automática o si lo hubiéramos hechomanual-mente) siempre del tipo 1.

Si necesitáramos una relación no estricta debemos luego modificarla, como lohicimos con la de códigos de IVA.

En esta relación, llamada estricta (uno a uno o punto a punto o inner join), el valornexo de-be existir en ambas tablas y se considera como un error de validación elhecho de que no exista en la tabla relacionada el valor que se busca.

Vimos esto en el capítulo anterior, cuando en la figura 5.10 (del Capítulo 5) Dr.Genio nos indica que no se aceptará el presente registro, debido a que no seencontró ningún valor relacio-nado en la tabla correspondiente.

Relaciones no estrictas

La segunda relación de la figura 6.2 se indica también con un punto de origen, peroaparece una flecha en su destino.

Se trata de una relación libre, pues ya vimos en el paso 8 del último ejercicio quecuando en un registro tenemos un campo ligado a otra tabla mediante este tipo derelación, el registro se mostrará igual aunque la relación no encuentre el valor deese campo (campo origen) en la tabla destino.

Este tipo de relación nos permitió trabajar sobre una tabla que conteníainconsistencias res-pecto de sus tablas relacionadas, cuando agregamos los datosde la tabla Códigos de IVA.

1 4 0

mailxmail - Cursos para compartir lo que sabes

Page 141: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

80. Restablezcamos las propiedades de las relaciones

Una vez completados los códigos de IVA y de Vendedores de todos los registros,podemos restablecer ambas combinaciones como t ipo 1 y de ese modo aplicaremosla condición de integri-dad referencial, de acuerdo con la cual no será aceptado elregistro hasta tanto se ingresen valo-res existentes en los campos de relación.

Según la aplicación, puede convenirnos emplear el t ipo 2 para ingresar registroslibremente aunque los contenidos de estos campos no sean coherentes con los delas tablas del sistema.

1 4 1

mailxmail - Cursos para compartir lo que sabes

Page 142: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

81. Podemos relacionar con campos que no sonClave Principal

Como vimos al final del Capítulo 5, no es obligatorio que el campo de destino sea laclave de la tabla; se puede combinar en forma manual cualquier dato. Si la relacióntiene como destino un campo que no es clave, la consulta encontrará de todosmodos los registros correspondien-tes de esta tabla, pero no se nos permitirámodificar ninguno de los campos en esa consulta; será una consulta de sólolectura, con la que no podremos efectuar ningún cambio en las tablas asociadas. Esta característica es común a los tres tipos de relación.

La situación mencionada se presenta, en ese caso, tanto en la relación tipo 1 comoen las tipo 2 y 3, o dicho de otro modo, el tipo de relación incide sólo cuando elcampo de destino es clave de acceso de la tabla relacionada.

Si a pesar de los dicho necesitáramos modificar los datos, podemos acceder a las PropiedadesPropiedades de la consulta y en el parámetro Tipo Recordset elegir Dynaset(Actualizaciones incoherentes).

1 4 2

mailxmail - Cursos para compartir lo que sabes

Page 143: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

82. Origen y destino de las relaciones tipo 2 y 3

Las relaciones tipo 2 y 3 son básicamente lo mismo, sólo cambian el sentido. Encada caso debemos analizar cuál es la tabla principal y cuál la dependiente orelacionada, y si la flecha tiene un sentido inverso (de la que es relacionada a la quecumple funciones de principal) debemos cambiar el tipo de relación (de 3 a 2 o de 2a 3), para lograr en la consulta el resultado que espe-ramos.

1 4 3

mailxmail - Cursos para compartir lo que sabes

Page 144: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

83. Cómo crear un formulario con Autoformulario

Un formulario puede basarse en datos de una tabla o en los de varias tablas si,como en es-te caso, las agrupamos previamente mediante una consulta. La consultau hoja de respuestas dinámicas que elaboramos, agrupa datos de la tabla de clientesy de dos tablas más que se rela-cionan con la misma. Así nuestro formulariomostrará explícitamente el nombre de vendedores y situación de IVA, por la relaciónexistente con las tablas respectivas.

Utilizaremos en este caso el generador de Autoformularios, una herramienta quesimplificará notablemente nuestra tarea.

1. Estando activa la ventana de ConsClientes pulsemos el botón Nuevo objeto  (Autoformu-lario). Aparecerá el aviso de la figura 6.3

El icono Nuevo objeto es un botón multifunción; el que se muestra aquí se hallapreseleccionado como Autoformulario. Si nos llegamos hasta la figura 9.19 (Capítulo9) podemos ver, antes de la misma, el subtítulo "Cómo usar el botón Nuevo objeto",donde podremos conocer su modo de uso y aplicaciones. Entonces, de acuerdo a loque allí se explica, si el botón mencionado no presenta el aspecto que se muestraaquí, pulsemos el icono de extensión que se encuentra a su derecha y, del menúque aparece, seleccionemos Autoformulario.

Figura 6.3

2. Contestemos aquí pulsando el botón Sí.

A continuación se iniciará un breve proceso en el que Access generará un formulario(figura 6.4) que incluye a todos los campos de la consulta o tabla activa.

1 4 4

mailxmail - Cursos para compartir lo que sabes

Page 145: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 6.4

Este formulario contiene todos los campos de la consulta, y observemos quetambién here-dó las características particulares de los mismos.

Por ejemplo, aparece la lista de Provincias, que fuera transferida por herencia de latabla de Clientes a ConsClientes y ahora se transfirió de esta última al formulario.

Ahora sabemos cómo hacerlo, crearemos un formulario para cada una de las tablasauxilia-res. Veremos luego cómo manejar todos estos formularios juntos en lapantalla.

1. Pulsemos el botón base de datos y luego la solapa Tablas.

2. Pulsemos una sola vez sobre Vendedores para seleccionarla y luego Autoformulario. Apare-cerá un formulario para ingresar los datos de los vendedores.

3. Repitamos el paso anterior, pero eligiendo la tabla códigos IVA.

Obtendremos los respectivos formularios mostrando cada uno de ellos un registrode la tabla correspondiente, como lo vemos en la figura 6.5.

1 4 5

mailxmail - Cursos para compartir lo que sabes

Page 146: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

1 4 6

mailxmail - Cursos para compartir lo que sabes

Page 147: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

84. Cómo guardar todos los formularios

Podríamos repetir el procedimiento que ya conocemos para guardar objetos, esdecir, selec-cionar el objeto (en este caso el formulario), pulsar el botón Guardar yasignarle un nombre, pero podemos dejar que Access nos ayude en esta tarea;procedamos como sigue:

1. Seleccionaremos la opción Salir, del menú ARCHIVO, para salir de Access.

Inmediatamente aparecerá la advertencia que nos indica que no hemos grabado(figura 6.6).

2. Contestemos Sí; aparecerá el cuadro de diálogo que muestra la figura 6.7.

3. Pulsemos Aceptar para confirmar el nombre propuesto.

Figura 6.7

Observemos que Access asignó al formulario el mismo nombre de la consulta otabla que le dio origen. Esto no presenta ningún inconveniente porque la tabla (oconsulta) y formulario son distin-tos tipos de objetos y no se confundirán porqueaparecerán en distintas solapas en el cuadro Ba-se de datos. Hay una solaexcepción en cuanto al nombre de los objetos; no podemos utilizar el mismonombre para una tabla y una consulta: esta restricción tiene por objeto evitarnosconfusio-nes, ya que en cuanto a su uso y su aspecto ambos objetos sonequivalentes (donde utilizamos una tabla podemos colocar en su lugar una consultacon los mismos datos).

4. Seguidamente se repetirá este proceso para otro de los formularios que creamos.Repitamos el procedimiento hasta que se cierre Access.

Este método nos resultará conveniente en todos aquellos casos en que hayamosmodificado muchos objetos, ya que nos agilizará la tarea.

1 4 7

mailxmail - Cursos para compartir lo que sabes

Page 148: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

85. Relaciones de una tabla consigo misma

Tal vez no nos parezca lógico relacionar una tabla consigo misma, pero veremos quepuede tener su utilidad.

Supongamos que en un determinado archivo de stock se almacenan datos de ciertaspiezas o componentes y que cada una de ellas puede tener o no otra pieza que es sucomplemento.

Por ejemplo, si se tratara de tornillos, podría estar disponible o no la tuercacorrespondiente a cada una de las medidas de los mismos.

Podemos resolver esta situación sin necesidad de crear una tabla extra con lastuercas, agregando un campo que llamaremos Complemento.

Planteado el problema, en lugar de detallar los pasos a seguir, daremos aquí laexplicación conceptual basada en un ejemplo sencillo, por considerar que a estaaltura del aprendizaje, el lector se encuentra en condiciones de entenderlo yaplicarlo a la solución de una situación concre-ta.

Comenzaremos por agregar al registro de stock un campo "complemento" quecontendrá el valor de la clave de la pieza complementaria.

Por ejemplo, si denomináramos como S a los tornillos y B a las tuercas, el registrocorres-pondiente a un tornillo de 9/16" por 1" de largo tendría en el campo CODP laclave S9/16x1, y po-dría tener en el campo Complemento algo como B9/16, clavecon la cual estarían registrados en esa misma tabla los datos de la tuercacorrespondiente.

Para que esto sea posible, debemos agregar nuevamente la tabla Stock a laconsulta, si-guiendo el procedimiento que ya conocemos para agregar tablas. Nosquedarán así Stock y Stock 1, siendo este último el nombre que asigna Access encaso de que se agregue dos veces la misma tabla a una consulta.

Notemos que Stock y Stock 1 son dos referencias distintas a los mismos datos, yaque en realidad sólo existe una única tabla, Stock.

Seguramente el registro de la tabla incluye una descripción de la pieza y otros datossobre características de la misma. Podemos entonces agregar a la consulta el campo ComplementoComplemento de la tabla Stock y el de Descripción de la tabla Stock 1.

De esta forma, cuando veamos el registro del tornillo, se mostrará también la clave yla des-cripción del complemento del mismo, por ejemplo B9/16 Tuerca forjadafacetada y, si lo deseá-ramos, también podríamos agregar a la consulta el campo existencias de la tabla Stock 1, para conocer las cantidades en existencia de lapieza complementaria.

Podría ocurrir que alguna pieza no tenga su complemento; en ese caso, el campo Comple-mento estaría vacío y, como consecuencia, tampoco se mostraríainformación en el campo de descripción (el referido a Stock 1).

También es posible que una determinada tuerca sea el complemento de más de untornillo y, en ese caso, todos estos tornillos tendrían el mismo valor en su campoComplemento.

1 4 8

mailxmail - Cursos para compartir lo que sabes

Page 149: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

1 4 9

mailxmail - Cursos para compartir lo que sabes

Page 150: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

86. Qué ocurre si ejecutamos una consulta sinrelaciones

En este caso habremos creado lo que se conoce como Producto cartesiano, es deciruna combinación de todos con todos.

Para entender mejor este concepto crearemos una nueva consulta:

1. Pulsando Nuevo en el cuadro de Consultas de Base de datos accedamos a lacuadrícula de Diseño para consultas.

2. En el cuadro Agregar tablas pulsemos doble clic sobre Códigos IVA y Vendedores para agregarlas a la consulta. Por no haber nombres coincidentes, nose habrán creado líneas de relación.

3. Seleccionemos todos los campos de una de ellas y arrastremos hacia lacuadrícula. Hagamos lo mismo con la otra tabla.

4. Pongamos en ejecución esta consulta y obtendremos un resultado similar al de lafigura 6.8.

Figura 6.8

Observemos que teniendo la tabla de Vendedores 3 registros y la de Códigos IVA 4,se han obtenido en la combinación 12 registros.

Cada registro de la tabla de Códigos IVA se combinó con cada uno de los registrosde Ven-dedores.

Debemos tener en cuenta que el resultado de este tipo de consultas, ha de conteneruna cantidad de registros igual al de cada una de las tablas multiplicados entre sí.Podemos imaginarnos que si hacemos esto mismo con un par de tablas quecontengan 1.000 registros, el resultado será la ge-neración de 1.000.000 deregistros, lo que demandaría un tiempo considerable.

1 5 0

mailxmail - Cursos para compartir lo que sabes

Page 151: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

87. Las relaciones generales de la base de datos

En lugar de crear combinaciones entre tablas dentro de la consulta, podemos definirestas relaciones en forma general para toda la base de datos. Las relaciones asídefinidas permiten un mayor grado de control de la integridad y la coherencia de losdatos de las tablas entre sí. Para crear estas relaciones generales procederemoscomo sigue:

1. Traigamos al frente el cuadro de diálogo Base de datos.

2. Pulsemos el botón Relaciones . Se presentará el cuadro de Relaciones de labase de datos (similar a la de la figura 6.9, pero sin contenido por ahora).

Figura 6.9

3. Arrastremos desde el cuadro Tablas de Base de datos hasta este cuadro derelaciones, a aquellas tablas a las que queremos asignar una relación (por ejemploClientes y Vendedores). Podemos también abrir el cuadro Mostrar tabla con elbotón correspondiente y seleccionarlas desde allí.

Notemos que aquí no se crearán relaciones automáticamente, aunque están dadaslas condicio-nes para que ello ocurra. A diferencia de las consultas, en este cuadrolas relaciones se crean únicamente en forma manual.

4. De la forma que ya sabemos hacerlo, originemos una relación (es decir,arrastrando el campo clave de la tabla relacionada, hacia el campo de relación de latabla principal o viceversa). Al liberar el botón aparecerá la relación indicada y sepresentará el cuadro de la figura 6.10.

1 5 1

mailxmail - Cursos para compartir lo que sabes

Page 152: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 6.10

5. Pulsemos Crear, con lo que se cerrará este cuadro y quedará establecida lapresente como relación general de la base de datos (se muestra en la figura 6.9).

El cuadro (figura 6.10) nos muestra nuevas opciones, que no habíamos visto en lasrelacio-nes de la consulta. Estas opciones, llamadas de Integridad referencial, seencuentran inicialmen-te inactivas, por lo que la relación recién creada tendrá lasmismas características que las que utilizáramos dentro de las consultas. Veremosahora qué ocurre cuando las activamos.

Qué significa Integridad referencial

De acuerdo a lo que estudiamos hasta ahora, podríamos abrir cualquiera de lastablas y eli-minar o modificar allí cualquiera de sus registros. Si activáramos luegoalguna consulta que tuviera definida una relación en la que estén involucrados estosdatos modificados y/o eliminados, la misma podría fallar o mostrarnos datosincorrectos.

Por ejemplo, si abrimos la tabla de Vendedores y eliminamos un vendedor,quedarán sin su vendedor algunos registros de Clientes, lo que ocasionará que en laconsulta ConsClientes no se muestren los datos de vendedor en algunos registros.

Por otro lado, si abrimos la tabla de Clientes, podremos ingresar cualquier valor enel campo CodVend aunque éste no exista en la tabla correspondiente, lo queocasionará un efecto similar en la misma consulta.

De este modo, no hay ninguna garantía de que las consultas que utilizan datosrelacionados funcionen correctamente. Nos está faltando un control de coherencia.

Cómo garantizar la coherencia de los datos relacionados

Si en esta relación que establecimos para la base de datos, activamos las opcionesde Inte-gridad referencial, Access impedirá que se modifique o elimine cualquierdato que pudiera perju-dicar dicha relación.

Dicho en otras palabras, la Integridad referencial controlará que en ambos extremosde la lí-nea de una relación, haya el mismo dato.

La excepción a lo dicho son los valores nulos. Por ejemplo, podemos ingresar enel campo CodVend (el del Cliente) un valor nulo para indicar que ese registro no seencuentra rela-cionado. Para colocar un valor nulo en un nuevo registro dejaremos

1 5 2

mailxmail - Cursos para compartir lo que sabes

Page 153: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

encuentra rela-cionado. Para colocar un valor nulo en un nuevo registro dejaremosal campo tal como aparece al crear el registro y, en un registro existente,pulsaremos la tecla Suprimir para eliminar su contenido. En cualquiera de los doscasos el campo quedará vacío.

Para poder activar esta función de Integridad referencial, la relación debeestablecerse con la clave principal de la tabla relacionada (lo cual implica que nohabrá duplicaciones) y deben co-rresponderse los registros de las tablasinvolucradas.

Vimos que es posible vincular tablas de otros formatos a una base Access (porejemplo una tabla externa DBF), y que podemos acceder a estos datos del mismomodo que lo hacemos con las propias tablas de Access, pero aquí viene otraexcepción:

No es posible establecer una relación de Integridad referencial con tablas de otrosformatos.

Como habremos observado, cuando establecimos combinaciones dentro de laconsulta no dispo-níamos de las opciones de integridad que estudiamos aquí.Diremos entonces que para trabajar con verificación de integridad referencialdebemos establecer las relaciones en la base de datos y activar las opcionescorrespondientes en el cuadro de la figura 6.10.

1. Verifiquemos que el contenido del campo CodVend de cada registro de Clientesse corres-ponda con alguno de los vendedores de la tabla Vendedores y luegocerremos ambas tablas.

2. Accedamos al cuadro Relaciones (figura 6.9) y pulsemos doble clic sobre la líneade la rela-ción, para pasar al cuadro de la figura 6.10.

3. Activemos allí la casilla Exigir integridad referencial y pulsemos Crear.

Si apareciera el cartel de la figura 6.11 debemos revisar mejor los datos de la tablapara ve-rificar que cada registro de la tabla Clientes contenga en el campo CodVendun código que exista en la tabla de Vendedores. Corregido este problemarepitamos el ejercicio anterior para que la relación sea aceptada (figura 6.12).

Figura 6.11

Notemos que la línea de la relación se ha transformado. El cuadro de la figura 6.12nos muestra dicho cambio.

1 5 3

mailxmail - Cursos para compartir lo que sabes

Page 154: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 6.12

Este tipo de relación se distingue de las anteriores mediante una simbologíaparticular; en nuestro caso aparece de un lado un símbolo de infinito, el que nosindica que allí (en la tabla de Clientes) puede haber uno, dos o más clientes con elmismo número de vendedor y, en el extremo opuesto, el número 1 nos indica queexiste un valor de clave único.

Una vez activa esta función de integridad, Access impedirá que se eliminen registrosde la tabla relacionada (si éstos están ligados, mediante alguna relación conintegridad referencial, a datos de alguna otra tabla).

De no ser así, la integridad se rompería, debido a que quedarían datos que noencontrarían su clave correspondiente en el otro extremo de la línea de relación.

4. Para comprobarlo, abramos la tabla Vendedores e intentemos eliminar unregistro que se encuentre actualmente relacionado a algún cliente (por ejemplo elvendedor 1). Aparecerá un cartel de error (figura 6.13).

Figura 6.13

No tendremos en cambio inconveniente para eliminar un vendedor que no seencuentre re-lacionado a ningún cliente.

1 5 4

mailxmail - Cursos para compartir lo que sabes

Page 155: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

5. Agreguemos a Vendedores (la tabla que tenemos abierta) un nuevo vendedor, yluego elimi-némoslo.

Tampoco tendremos inconvenientes en cambiar el vendedor en un registro delcliente Cod-Vend por otro vendedor existente en la tabla.

1 5 5

mailxmail - Cursos para compartir lo que sabes

Page 156: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

88. Qué significa actualizar o eliminar en cascada

Una vez establecida la integridad referencial, podemos definir ciertasactualizaciones auto-máticas respecto de la relación.

En el cuadro de la figura 6.10 podremos activar las casillas Actualizar en cascadalos campos relacionados y Eliminar en cascada los registros relacionados; paraque estas op-ciones se habiliten, previamente debemos activar Exigir integridadreferencial.

La palabra cascada, significa aquí que al modificar o eliminar datos relacionados enun ex-tremo de la línea de relación, se actualizarán en correspondencia los datos enel otro extremo de dicha línea.

Supongamos que nos han reasignado el vendedor Pedro (Nº 1), que ahora pasa atener el número 9.

Observemos que aquí se presenta una situación distinta a la que consiste enreasignar el vende-dor de un cliente. Hagamos lo siguiente:

1. En el cuadro Relaciones (figura 6.9) pulsemos doble clic sobre la línea de larelación, para pasar al cuadro de la figura 6.10.

2. Allí activemos las casillas Exigir integridad referencial y Actualizar en cascadacampos relacionados.

3. Cerremos el cuadro; a la pregunta "¿Guarda los cambios?", contestemos Sí.

4. Abramos sólo la tabla de Vendedores, y al vendedor Pedro cambiémosle elnúmero, colocan-do 9 en su lugar.

5. Cerremos la tabla Vendedores y abramos la de Clientes. Observemos que todoslos registros que tenían 1 en CodVend, ahora tienen 9 .

6. Ahora, repitamos el paso 1 y en el cuadro de la figura 6.10 activemos Eliminar encascada los registros relacionados.

7. Cerremos la tabla Clientes, abramos la de Vendedores y eliminemos algúnregistro cuyo ven-dedor se encuentre relacionado con algún cliente; recordemosque para eliminar un registro debemos pulsar el botón de selección de registro, a laizquierda del primer campo y luego la tecla Suprimir. Aparecerá el cartel de aviso dela figura 6.14.

Figura 6.14

Si a este aviso contestamos Sí, se eliminará el vendedor correspondiente de la tablaVendedores y todos los registros de la tabla Clientes que se encuentrenrelacionados con ese vendedor.

1 5 6

mailxmail - Cursos para compartir lo que sabes

Page 157: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Si la tabla de Clientes se encontrara abierta en ese momento, quedarán indicadosallí los registros faltantes, tal como lo muestra la figura 6.15. Esta indicacióndesaparecerá; si cerramos la tabla y la volvemos a abrir ya no se indicarán losregistros eliminados.

Figura 6.15

Observemos que en estos casos, la relación actuó por sí sola; no fue necesario quelas tablas estuvieran incluidas en una consulta ni que estuvieran abiertas. En el casode la actualización, fueron actualizados registros de una tabla que se encontrabacerrada, ocurriendo algo similar con la eliminación de los registros relacionados.

1 5 7

mailxmail - Cursos para compartir lo que sabes

Page 158: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

89. Las nuevas consultas toman la relación de labase de datos

Si creáramos una nueva consulta en la que intervengan las tablas de Clientes y Vendedo-res, la relación se establecerá automáticamente, pero esta vez con integridad referencialintegridad referencial, esto quedará indicado en la línea de la relación mediante lasimbología correspondiente.

Qué ocurre con las relaciones existentes

Si abrimos ahora una consulta que relacione las tablas Clientes y Vendedores, porejemplo ConsClientes, notaremos que a pesar de que no hemos modificado eldiseño de la misma, la relación ha cambiado; se indica ahora, como se aprecia en lafigura 6.10, lo que significa que la definición de relaciones de la base de datos tieneprioridad por sobre las definidas en las consul-tas.

1 5 8

mailxmail - Cursos para compartir lo que sabes

Page 159: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

90. Cómo agregar listas de ayuda en los campos delas consultas

De manera similar a lo hecho con las tablas, podemos asociar una lista de valores aun campo de la hoja dinámica para ayudar a quien luego ingrese los datos.

Al igual que ocurre con las tablas, los campos así definidos presentarán a su derechaun icono que, de pulsarlo, abrirá una lista en la que podremos seleccionar uno desus valores.

Al crear un atributo de lista en la consulta, tendremos una ayuda de tipo lista paraesa co-lumna, sin alterar la configuración de ese campo en la tabla de origen.

También podemos definir atributos de lista en campos calculados (campos que noprovienen en forma directa de una tabla, sino por medio de algún cálculo).

Cómo definir un atributo de lista en la columna

En todos los casos, el procedimiento es idéntico al que explicamos para las tablas,aunque sólo difiere la forma de seleccionar la columna.

1. En la cuadrícula de diseño de la consulta, pulsemos con el botón derecho sobrela columna en la que deseamos crear la lista; aparecerá un menú emergente.

2. Seleccionemos allí la opción Propiedades, para presentar un cuadro similar alque conoce-mos para los campos de la tabla (figura 6.16).

Figura 6.16

3. En el parámetro Mostrar control, de la solapa Búsqueda, seleccionemos laopción cuadro de lista; aparecerán debajo del mismo las opciones que ya vimos enlas figuras 3.14 a .18 del Capítulo 3, prosiguiendo en adelante del mismo modo quelo hicimos para los campos de la tabla.

Las propiedades de lista se heredan de tablas a consultas

La lista que hemos incluido en el Capítulo 3 para el campo CodProvin de la tabla de Clien-tesClien-tes, ya es un atributo de ese campo que se transmitirá a cualquier objeto queutilice el mismo. Por ejemplo:

1. Pulsemos sobre el campo CodProvin en la consulta ConsClientes y observemosque el mis-mo presenta el icono de lista.

1 5 9

mailxmail - Cursos para compartir lo que sabes

Page 160: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Pulsémoslo y se abrirá la lista de provincias. Seleccionemos una de ellas y habrácambiado en la consulta, por consiguiente, se habrá actualizado el campocorrespondiente de la tabla. Esto significa que la consulta hereda el atributo de listadel campo.

1 6 0

mailxmail - Cursos para compartir lo que sabes

Page 161: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

91. Listas de ayuda en base a una tabla

Además, en lugar de crear una lista propia para el campo, podemos utilizar al efectolos da-tos de una segunda tabla. Por ejemplo, podemos definir para el campo CodVendCodVend de la consulta, una lista que nos muestre el código y el nombre delvendedor, tomados de la tabla de vendedores.

También teníamos la posibilidad de tomar una tabla como lista para el campo deotra tabla; obser-vemos (figura 3.15 del Capítulo 3) que entre las opciones para Origen de la fila podemos selec-cionar Tabla/Consulta. Pero esto no esaconsejable, ya que, de hacerlo, la presente tabla depen-dería de una segunda tablay no es conveniente que las tablas sean dependientes por cuanto és-tas son las querealmente contienen la información del sistema.

En cambio, sí podemos utilizar esta facilidad en consultas, ya que éstas son de porsí dependien-tes de la información de una o más tablas.

Para definir una tabla como origen de la lista, debemos elegir en Tipo de origen dela fila, Tabla/Consulta y en Origen de la fila, pulsar para abrir la lista yseleccionar allí la tabla corres-pondiente. El resto de los parámetros cumple lamisma función que en los campos de lista propia.

1 6 1

mailxmail - Cursos para compartir lo que sabes

Page 162: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

92. Cómo utilizar el formulario

Ya hemos analizado la creación de formularios básicos y también hemos visto quepueden abrirse dos o más formularios simultáneamente; ahora veremos cómo sedisponen éstos en la pantalla y comprobaremos luego cómo se muestranactualizados automáticamente los datos pro-venientes de una relación ocombinación.

En la segunda parte del capítulo crearemos un informe con Autoinformes y otro conla ayuda de un asistente, de modo que al finalizar este capítulo habremos adquiridouna visión panorámica y generalizada de las prestaciones de Access.

Cómo utilizar el formulario

El modo Formulario dispone de controles similares a los del modo hoja de datos,que vimos en el Capítulo 2. Estando en el formulario ConsClientes que creamos enel capítulo anterior, hagamos lo siguiente:

1. Pulsemos el botón Avanzar o Av. Pág. para mostrar el próximo registro.

2. Pulsemos Retroceder o Re. Pág. para volver al registro anterior.

3. Pulsemos Primer registro o Control + Flecha arriba para mostrar el primerregistro de la tabla o consulta se-gún el ordenamiento que se encuentre definido.

4. Pulsemos Último registro o Control + Flecha abajo para mostrar el último.

5. Para ubicarnos en algún registro en particular, por ejemplo el tercero, pulsemos ala izquierda del número, borrémoslo con Retroceder y escribamos en su lugar elnúmero 3; finalmente pulsemos Return.

1 6 2

mailxmail - Cursos para compartir lo que sabes

Page 163: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

93. Cómo trabajar con varios formulariossimultáneamente

El objeto del siguiente ejemplo es mostrar de qué modo Access actualizaautomáticamente los datos en la pantalla. Si tenemos dos o más formulariosabiertos (a la vista en la pantalla) y éstos comparten algún dato, al cambiarlo en unode ellos se actualizará inmediatamente en todos los demás. Veamos:

El ejercicio anterior debió dejarnos en la pantalla el formulario ConsClientes, si nofuera así abrámoslo.

1. En el cuadro Base de datos pulsemos Formularios y abramos también losformularios CodI-va y Comisiones.

2. Si la ventana de Access no está ocupando toda la pantalla, maximicemos.

3. Pulsemos el botón minimizar del cuadro Base de datos para dejar el mayorespacio disponi-ble para los formularios.

4. Acomodemos los formularios de modo de tener los tres a la vista en la pantalla.

Es posible dimensionar las ventanas de manera tal que queden a la vista todos losdatos de la base, pero esto depende del modo de video que se haya determinadopara Windows. Podemos decir que con el modo de representación de 1024 x 768tendremos todos los datos a la vista y con el formato de pantalla básico de 640 x480, es posible que el formulario ConsClientes no muestre todos sus datos.

En este último caso tendremos que trabajar con las barras de desplazamiento a finde dejar a la vista el sector que nos interese en el formulario ConsClientes,desplacemos hacia abajo para ver el último campo; perderemos de vista el primero(CODCLI) que por ahora no necesitamos.

Si utilizáramos alguna de las opciones de Mosaico (Mosaico horizontal o Mosaicoverti-cal) del menú VENTANA, se repartirá el espacio en partes iguales para todaslas ventanas.

5. Pulsemos en cualquier parte del formulario ConsClientes, para activar esaventana.

6. Pulsemos el botón Primer registro para ubicar el primer registro de la consulta.Ya sabemos que podemos hacer esto mismo con Control + Flecha arriba.

Modo tabla, modo formulario y uso de filtros

Antes de seguir con el tema propiamente dicho, veremos algo que nos facilitaránuestro tra-bajo con los formularios. Un formulario tiene siempre asociada unatabla o una consulta de donde toma los datos y, por lo tanto, siempre que se abreun formulario, también se está abriendo la ta-bla o ejecutando la consultacorrespondiente.

Como vimos, el formulario nos muestra de a un registro por vez, pero en cualquiermomento podemos visualizar estos mismos datos en modo tabla, pulsando el botóncorrespondiente.

Recordemos que toda vez que un botón va acompañado de un símbolo triangular,

1 6 3

mailxmail - Cursos para compartir lo que sabes

Page 164: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

podemos pulsar este último para abrir una lista con dos o más opciones.

1. Abramos la lista de botones y seleccionemos el tercero, vista hoja de datos.

Con esta vista podemos trabajar como ya sabemos sobre la tabla o consulta en laque se basa el formulario.

2. Seleccionemos ahora el botón Ver formulario para volver al modo anterior yseguir trabajando en modo formulario.

Como podemos observar, en la barra de botones están disponibles para ambosmodos de trabajo los mismos botones de buscar y ordenar, filtro por selección, filtro por formulario, etc.

Qué ocurre al modificar datos en un formulario con datos relacionados

Todo lo que sabemos sobre las combinaciones, que experimentáramos en el modotabla, se aplica también aquí para los formularios. También aquí se actualizaránautomáticamente los datos de la tabla relacionada cuando los cambiemos en elformulario ConsClientes y cambiarán los datos del vendedor o de la categoríacuando cambiemos el campo de relación (código del vende-dor o de categoría).

Cuando ocurría en el modo tabla, los cambios se harán efectivos recién cuandosalgamos del registro activo o cuando cerremos el formulario. En tanto no ocurraalguno de esos dos hechos podremos volver atrás los cambios y restituir los valoresanteriores pulsando ; tal vez debamos pulsar esta tecla varias veces hasta lograr quela totalidad de los campos vuelvan a su estado anterior.

Modifiquemos el dato nexo

Por ser el formulario sólo una forma distinta de mostrar los mismos datos de laconsulta ConsClientes, se repiten aquí las mismas situaciones. Podemos modificar eldato (por ejemplo el nombre del vendedor), tanto en el campo que lo muestra através de la relación (en nuestro caso el campo NomVend del formulario ConsClientesConsClientes), como en la tabla que contiene realmen-te el dato (que esmostrado en el formulario Vendedores), y en cualquiera de los dos casos cam-bianambos ya que se trata de la misma información.

1. Trabajando con el formulario de la figura 6.4, cambiemos el código de vendedor(campo Cod-Vend) por un valor distinto al que contiene (existente en la tabla) ypulsemos Return.

Observemos que NomVend cambió su texto por el nombre del nuevo vendedor.

Sucede aquí los mismo que en la consulta (recordemos cuando completamos con loscódigos de vendedor e IVA): toda vez que se cambie el valor del campo origen deuna relación, la tabla rela-cionada se posicionará de acuerdo con el nuevo valoringresado. Como consecuencia de ello, en el ejemplo, la tabla Vendedores se ubicóen el registro del vendedor correspondiente.

También sabemos que, tal como está planteada la combinación (relación tipo 1,

1 6 4

mailxmail - Cursos para compartir lo que sabes

Page 165: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

estricta), no será aceptado el registro (de ConsClientes) si no se colocan los deCodVend y CodIVA.

Modifiquemos datos de la tabla relacionada

2. Pulsemos el campo NomVend de ConsClientes y cambiemos su descripción,colocando en su lugar Ingrid y pulsemos Return.

3. Pulsemos el botón Próximo registro y luego Registro anterior (o Av. Pág, Re. Pág).Esto es al solo efecto de salir del registro (Access actualizará los elementos quecorrespondan en el momento en que liberemos al registro modificado) para luegovolver al mismo registro.

Si no queremos salir del registro activo, podemos seleccionar la opción Actualizardel menú RE-GISTROS, obteniendo el mismo efecto.

Observemos que el campo homónimo de la tabla de Vendedores ha cambiado,confirmán-dose así que ambos son dos copias en la memoria del mismo dato.

Lo que hemos hecho es cambiar un dato de la tabla de Vendedores desde laconsulta de Clientes.

Esto va más allá del presente registro, ya que en adelante todos los registros de laconsulta que tengan a 2 como código de vendedor, mostrarán "Ingrid" en el campo NomVend.

4. Pulsemos en el campo NomVend de la tabla de Vendedores y reemplacemos sucontenido por Erika, luego pulsemos Return.

De acuerdo con lo que ya vimos, es lógico pensar que si cambiamos el dato en latabla, cambiará en el presente y en todos los registros de la consulta ConsClientesque se refieran al código de vendedor 2 .

Esta es otra demostración de que se trata del mismo dato que se muestra en cadaregistro de clientes y que está relacionado con el registro de Vendedorescorrespondiente al la clave 2 .

1 6 5

mailxmail - Cursos para compartir lo que sabes

Page 166: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

94. Cómo imprimir tablas, consultas y formularios

Ya sabemos imprimir una tabla; del mismo modo podemos imprimir una consulta oun for-mulario. En el caso de las consultas, obtendremos el mismo resultado quecon una tabla ya que, como se explicó, se trata de una hoja de respuestasdinámicas, en donde los datos se ven y se utilizan como si se tratara de una tabla.

Para imprimir cualquiera de los formularios que tenemos actualmente en la pantalla,proce-deremos de igual modo, es decir, pulsaremos sobre el objeto para

seleccionarlo y luego el botón de Imprimir .

1 6 6

mailxmail - Cursos para compartir lo que sabes

Page 167: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

95. Qué es un informe

Un informe es otra modalidad de presentación de los datos, que puede enviarse a lapantalla o imprimirse. Conviene tener presente que en el primer caso se tratasolamente de una visualiza-ción, pues no podremos modificar los datos que nosmuestra la pantalla.

Los informes resultan más adecuados para presentar información agrupada,ofreciendo la posibilidad de agrupar y subagrupar, permitiendo obtener subtotalesde distintos niveles.

Es posible elaborar distintos tipos de informes, adecuados en cada caso a lasatisfacción de distintas necesidades en cuanto a la distribución y presentación delos datos; podríamos citar co-mo ejemplos las etiquetas postales y las tablas.Conviene destacar que dentro de los informes pueden incluirse textos, gráficos,líneas y diversos elementos visuales.

Para la creación de informes resulta particularmente versátil el Asistente parainformes, al que recurriremos para elaborar los informes más frecuentementerequeridos en una oficina.

Mediante este Asistente nos será posible crear informes como columnas simples,grupos con totales y subtotales, etiquetas postales y muchas otras opciones que nosofrece dicho asisten-te, cuyo manejo es similar al del Asistente para formularios.

1 6 7

mailxmail - Cursos para compartir lo que sabes

Page 168: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

96. Generemos un informe con Autoinforme

1. Abramos el cuadro de diálogo base de datos y seleccionemos una tabla oconsulta, por ejem-plo ConsClientes.

El botón Nuevo objeto dispone también de una opción para Autoinformes, que essimilar al botón de Autoformulario, que ya vi-mos. Este botón quedará con laimagen de la última función utiliza-da, por lo que en este caso probablementemostrará el botón de Au-toformulario. Pulsemos entonces el icono de extensión deeste botón y de la lista que aparece (figura 7.1):

2. Pulsemos Autoinforme y, al igual que en el caso de los Auto-formularios, esto estodo lo que debemos hacer para obtener un informe sencillo por columnas (figura7.3 izquierda).

Dada la cantidad de campos que contiene nuestra consulta, es probable que elinforme destine una hoja para cada registro.

Figura 7.1

Cómo elegir el tipo de listado con Autoinforme

Lo que hicimos recién fue simplemente pulsar el botón Autoinforme para generar eltipo de informe predeterminado (Por columnas). Tal vez no resultó de nuestroagrado porque el origen de los datos contiene muchos campos por registro. En estecaso podemos elegir otro tipo de Autoin-forme de la siguiente manera:

1. En la lista de la figura 7.1 podemos elegir Informe. Se presentará la ventana deopciones de la figura 7.2.

2. Allí seleccionemos Autoinforme: en tablas y pulsemos Aceptar para generar uninforme algo más compacto que el anterior (figura 7.3 derecha).

Una forma práctica de crear informes

Como vimos, el Autoinforme se encarga de colocar los campos en los lugarescorrespon-dientes de la página, colocar títulos y pies, numerar las hojas, etc. Si bientodo esto nos ahorrará mucho tiempo, los resultados podrán ser en algunos casos,algo pobres o desprolijos.

1 6 8

mailxmail - Cursos para compartir lo que sabes

Page 169: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 7.2

Uso de los modos de presentación de un informe

Si, estando en el modo Presentación preliminar, pulsamos el botón Diseñopodremos ajustar detalles del listado recién generado. Mejoras tales comoreacomodar campos y títulos y emprolijar el informe en general son fáciles de haceren esta ventana de diseño.

Luego volveremos al modo Presentación preliminar para observar los resultadosdel ajus-te. Podremos repetir este ajuste una y otra vez hasta que estemosconformes con el resultado.

Pulsaremos entonces el botón Imprimir para enviar nuestro informe al papel.

Podría ocurrir aquí que en resultado impreso encontremos algún pequeño defectoque no habíamos notado en la presentación de pantalla y fuera preciso, en ese caso,corregir y repetir la impresión. Pero si previamente hubiéramos hecho los ajustesmás importantes sobre la base de la vista previa, es probable que el trabajo quedeya terminado luego de este modesto ajuste.

El modo Presentación preliminar nos permite hacer una vista general de la página; elseña-lador del mouse tomará la forma de una lupa. Si pulsamos sobre la imagen dellistado, el mismo reducirá su tamaño y nos mostrará una página completa. Pulsandonuevamente retornaremos al modo normal de presentación para observar losdetalles. Podemos hacer esto mismo pulsando el botón Zoom o bien...

1 6 9

mailxmail - Cursos para compartir lo que sabes

Page 170: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Presentar una o dos páginas pulsando el botón correspondiente, y también...

Elegir el tamaño de visualización adecuado colocando el porcentaje de ampliación(valores mayores a 100), o reducción (valores menores de 100), en el campodestinado al efecto.

Si en el presente modo de observación no se mostrará el total del informe,aparecerán las barras de desplazamiento horizontal y/o vertical sobre las queaccionaremos para desplazarnos hacia las partes ocultas.

Disponemos asimismo de controles para avanzar o retroceder de página.

Pulsando el triángulo de la derecha del botón Modo de presenta-ción, se abre unmenú de tres opciones. Sabemos que la primera corres-ponde a Diseño y la segundaal modo Presentación preliminar. Estando en modo diseño de informe disponemosde un tercer botón que nos mos-trará un panorama total del listado. Los datos allíexhibidos no serán váli-dos pero la vista nos servirá para verificar su distribuciónen la página.

1 7 0

mailxmail - Cursos para compartir lo que sabes

Page 171: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

97. Cómo crear un informe con el asistente

Disponemos aún de otro modo semi-automático de generar un informe. El Asistentepara in-formes generará informes automáticos como el Autoinforme, pero en estecaso tendremos la posi-bilidad de decidir algunos detalles generales, como porejemplo no incluir aquellos campos que no sean necesarios.

En los informes que mostramos, habremos visto que el campo Provincia tomademasiado lugar; esto se debe a que el mismo está definido como un Control delista.

Podemos modificar esta situación si agregamos una tabla de Provincias yefectuamos una combinación con el campo CodProvin (que podemos renombrarcomo Provincia) de la tabla Clientes.

Así tendremos la descripción de la provincia del mismo modo que los datos delvendedor. A esta altura de nuestro aprendizaje no tendremos inconvenientes enhacer lo siguiente:

Crearemos la tabla de Provincias con un campo clave principal CodProvin y otro dedes-cripción Provincia.

Ingresaremos en la misma los datos (clave y nombre) de cada una de las provincias.

Abriremos la consulta ConsClientes en modo Diseño y le agregaremos la tablaProvincias recién creada. Aparecerá automáticamente la línea que indica lacombinación del campo CodPro-vin de Clientes con el campo clave principal de latabla de provincias que tiene el mismo nombre.

Hecho esto, llevemos el campo Provincia de la tabla de Provincias a la cuadrículade la consulta, a la derecha del código CodProvin.

Ejecutemos la consulta para verificar que todo funcione correctamente y reciénentonces ini-ciemos el asistente para crear el informe.

1. Estando en el panel de consultas (del cuadro Base de datos) y teniendo resaltadala consulta ConsClientes, pulsemos el icono Informes (eligiéndolo en la lista de lafigura 7.1) y en la ven-tana de selección de la figura 7.2 pulsemos sobre Asistentepara informes.

2. Pulsemos Aceptar para presentar la primera ventana del asistente (figura 7.4).

1 7 1

mailxmail - Cursos para compartir lo que sabes

Page 172: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 7.4

Allí debemos seleccionar qué campos de la tabla o consulta de origen deseamoslistar. El panel de la derecha se encuentra inicialmente vacío; moveremos uno a unolos campos que nece-sitamos.

3. Seleccionándolos en la lista y pulsando luego el botón Mover, iremos colocandouno a uno los campos: CODCLI, NOMBRE, LOCALIDAD, PROVINCIA yMONTOFACTURADO.

Ya está definida la parte básica del informe; notemos que se habilitó ahora el botón Finali-zar. Tenemos entonces la alternativa de pulsar este botón y generar uninforme básico, o bien pulsar Siguiente para agregar más condiciones, parámetros,etc., y así definir informes más espe-cíficos o más complejos, cosa que dejaremospara el Capítulo 12.

4. Pulsemos entonces Finalizar para obtener nuestro primer informe con asistente.En la venta-na de vista previa aparecerá una imagen similar a la que muestra lafigura 7.5.

1 7 2

mailxmail - Cursos para compartir lo que sabes

Page 173: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 7.5

 

1 7 3

mailxmail - Cursos para compartir lo que sabes

Page 174: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

98. Access permite manejar todo tipo de información

Profundizaremos aquí en todos aquellos aspectos del manejo de Access quecontribuirán a proporcionar a los datos de nuestras bases una mayor seguridad,facilidad de manejo y mejor pre-sentación.

Access permite manejar todo tipo de información

Hasta ahora sólo vimos los tipos de datos de uso generalizado, pero Access es unmoderno sistema de bases de datos que permite manejar todo tipo de información,por lo que podemos incluir, dentro de una base, textos de varias páginas, imágenes,sonidos e hipervínculos (direccio-nes de Internet a las que podremos acceder desdeel registro de la tabla, consulta o formulario).

Las propiedades de los campos son hereditarias

Como vimos ya en algunos ejemplos, todo campo proveniente de una tabla conservasus propiedades cuando es colocado en una consulta, formulario o informe.Teniendo en cuenta esta característica, podremos ahorrarnos mucho tiempo ytrabajo si dotamos a cada campo de todas las propiedades de formato, validación ypresentación que necesite, en la tabla misma.

1 7 4

mailxmail - Cursos para compartir lo que sabes

Page 175: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

99. Cómo establecer y modificar el tipo de datos deun campo

La clase de dato que contiene un campo, se especifica en la columna Tipo de datosde la cuadrícula de definición de la tabla (modo diseño).

Pulsando sobre esa columna a la altura del campo a definir, aparecerá un icono quenos permitirá desplegar hacia abajo, una lista con los tipos de datos admitidos porAccess.

Figura 8.1

Pulsando sobre alguna de sus opciones definiremos el tipo de dato que contendrá enade-lante el campo activo.

Podemos también pulsar sobre algún campo ya definido y modificar el tipo de dato,pero de-bemos tener especial cuidado en hacerlo si la tabla ya tiene cargadainformación.

Cómo establecer y modificar otras propiedades del campo

Cuando definimos las tablas, vimos que dependiendo del tipo de dato que contengael cam-po, el cuadro inferior de propiedades puede variar, y esto es lógico ya quecada tipo de dato tiene sus condiciones particulares como, por ejemplo, la cantidadde decimales en los de tipo numérico.

Para examinar las propiedades de un determinado campo de una tabla, debemosacceder al modo diseño para esa tabla y pulsar sobre el renglón correspondiente alcampo en cuestión.

Figura 8.2

1 7 5

mailxmail - Cursos para compartir lo que sabes

Page 176: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

El cuadro inferior nos mostrará las propiedades del campo activo. Pulsando sobrelas casi-llas correspondientes podemos modificar cada una de ellas; en algunoscasos abriremos listas de opciones para elegir (como en la figura 8.2) y en otrosescribiremos valores.

Siempre disponemos, en el sector derecho, de la información sobre la propiedad oparáme-tro que se encuentra; por ejemplo, en la figura 2.3 del Capítulo 2 podemosleer el texto explicativo correspondiente al campo activo (obsérvese el cursor en elparámetro Descripción). Veremos a continuación algunas de las propiedades másimportantes de los distintos tipos de datos, ahora referidas a la figura 8.3.

1 7 6

mailxmail - Cursos para compartir lo que sabes

Page 177: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

100. Propiedades para los campos tipo Texto

Tamaño

Define la cantidad de caracteres que albergará el campo. El valor predefini-do paraAccess es de 50 caracteres, más que suficiente para alojar cual-quier descripción,dirección, nombre, etc.

Podemos cambiar fácilmente ese tamaño reemplazando el valor 5 0 por cualquierotro, comprendido entre 1 y 2 5 5.

Formato

Define la configuración de los datos que se ingresen en el campo:

< Fuerza los caracteres a minúsculas

> Fuerza los caracteres a mayúsculas

@;"Nada" ó @;Nada coloca el texto "Nada" cuando el campo está vacío

Máscara de entrada

Aplica un determinado diseño a los datos, por ejemplo:

{ / / } para las fechas

{( ) / } para los números telefónicos

Pulsando sobre este campo aparecerá el símbolo o icono del Generador (figura 8.3),una utilidad que nos ayudará a crear máscaras y otras cadenas de caracteres queemplearemos en búsquedas, formularios, etc.

Figura 8.3

Si el campo tiene el tipo de dato texto o fecha, pulsando este icon , iniciaremos el Asistente para máscaras de entradaAsistente para máscaras de entrada (figura 8.4).

1 7 7

mailxmail - Cursos para compartir lo que sabes

Page 178: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 8.4

Es probable que esta función del asistente no sea encontrada debido a queefectuamos el proce-so de instalación Típica.

Volviendo al cuadro de la figura 8.4, diremos que lo que utilizaremos del mismomodo que lo hicimos en el Capítulo 4, seleccionando una de las opciones. Sipulsamos en el campo Probar: aparecerá la máscara elegida y podremos escribirnuestros datos para ver cómo encajan dentro de la misma; para concluir pulsemos FinalizarFinalizar.

Título

Cuando diseñamos el formulario, vimos que en el mismo aparecen etique-tas paracada campo, las mismas de la tabla o consulta que le dieron ori-gen; si colocamosaquí algún texto, éste reemplazará al del nombre del campo pero sólo en elencabezado de la columna. Si creamos una consulta que tome este campo, en lacuadrícula de diseño veremos el nombre origi-nal, pero luego, en la vista hoja dedatos de la consulta, nos mostrará el texto que el campo tiene como título,propiedad que fue heredada de la ta-bla. Por ejemplo, si el campo se llama DIRLEG,podemos definir para for-mularios e informes una etiqueta más descriptiva, como Dirección LegalDirección Legal. Este cambio en la propiedad título es equivalente (en las tablas) alo que vimos para las consultas en "Hagamos algo similar con la propiedadTítu-lo..." al final del Capítulo 5.

Valor predetermi-nado

Definiremos aquí el valor (o texto) que Access colocará en el campo cuando se creeun nuevo registro. Por ejemplo, éstos son en su mayoría domicilia-dos en Capital, yen el campo correspondiente a la localidad definimos a esta propiedad como CapitalCapital, cada nuevo registro que ingresemos a la ta-bla tendrá ese texto en elcampo Localidad, por lo que en la mayoría de los casos nos ahorraremos elescribirlo.

Debemos tener precaución con este parámetro ya que puede ocurrirnos que, porerror, definamos un valor predeterminado no válido de acuerdo con la definición del

1 7 8

mailxmail - Cursos para compartir lo que sabes

Page 179: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

error, definamos un valor predeterminado no válido de acuerdo con la definición delcampo correspondiente (por ejemplo, si definiéramos "Capital" como valorpredefinido para el campo CodProvin de la tabla de clientes de nuestro ejemplo). Enese caso, cuando pasemos al modo tabla para ingresar datos, aparecerá un cuadrode error indicándonos que el dato es demasiado largo para el campo, al pul-sarsobre la última línea de la tabla para ingresar un registro.

Regla de validación

Podemos colocar aquí una expresión que limitará los valores que se po-dríaningresar para ese campo. Recordemos que ya disponemos de una validacióninherente al tipo de datos definida para el campo (no podemos, por ejemplo,colocar letras en un campo definido como numérico). Colo-cando una expresión,como por ejemplo > d, este campo no admitirá tex-tos que comiencen con letrasinferiores o iguales a d en el orden alfabéti-co.

Si aplicamos alguna regla de validación de este tipo a una tabla que ya contienedatos, Access deberá revisar los mismos para verificar si la cumplen y nos loinformará mediante el cartel de la figura 8.5.

Figura 8.5

Si contestamos Sí a esta pregunta, se iniciará el proceso de revisión, en todos losregistros de la tabla, del campo al que se le modificó la regla de validación y, si seencuentran inconsisten-cias, se presentará un nuevo cartel que nos lo informará.

En ese caso podremos optar por Sí o por No y en ambos casos se abandonará lacompro-bación. La diferencia entre estas alternativas es que en el caso deresponder en forma negativa, se restablecerá la regla de validación anterior alcambio (o se dejará al campo sin regla de valida-ción, si es que anteriormente no latenía).

Texto de validación

Una vez cumplido el paso anterior (que sólo se iniciará si la tabla tiene da-toscargados), la regla de validación quedará establecida y toda vez que ingresemos omodifiquemos un dato en ese campo, el mismo será verifica-do, mostrándose elcartel de la figura 8.6 en caso de infringirse la regla im-puesta.

Para este caso podríamos escribir un texto algo más explícito en el campo Texto devalidación, como por ejemplo: Ingresar apellidos de la E a la Z únicamente, y deeste modo, cuando el usuario del sistema cometa ese error, obtendrá unaexplicación más clara de lo que ocurre (figura 8.7).

1 7 9

mailxmail - Cursos para compartir lo que sabes

Page 180: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 8.6

Figura 8.7

Como ya hemos dicho, los objetos creados en base a una tabla heredarán suspropiedades, entre ellas la regla y texto de validación. Observemos que el cartel dela figura se refiere a la consulta cuando, en realidad, el control se incorporó aldiseño de la tabla utilizada por esa consulta y esta última heredó de aquella.

Requerido

Pulsando este renglón aparecerá a la derecha una flecha de lista con las opciones Sí/ No. Seleccionando para esta propiedad el valor Sí, Access exigirá luego que secoloque algún valor en el campo correspondiente. Ello implica que con esteparámetro nos aseguraremos de que Access no gra-bará ningún registro quecontenga para ese campo valores nulos (figura 8.8) y, combinando esta propiedadcon alguna regla de validación, podre-mos estar seguros de que la tablacorrespondiente contendrá sólo valores válidos para ese campo.

Figura 8.8

Permitir longitud cero

Este campo es similar al anterior y determina, para el caso de los campos tipo texto,la admisión de textos nulos (sin caracteres).

Indexado

1 8 0

mailxmail - Cursos para compartir lo que sabes

Page 181: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Activando esta propiedad (valor Sí), Access mantiene un índice para ese campo. Estofacilitará las búsquedas y ordenamientos cuando sean reque-ridas dichas funcionespor alguna consulta o filtro.

Esta propiedad es obligatoria en caso de que deseemos definir algún cam-po comoclave de acceso de la tabla.

Compresión

Unicode

Los campos se graban, por opción predeterminada, en modo Unicode, un formatode compresión de datos. El formato comprimido es manejado en forma automática,de manera que toda vez que se muestre o extraiga in-formación de un campo, lamisma será previamente descomprimida. Si, debido a algún requerimiento, debemosguardar la información en modo no comprimido, podremos hacerlo estableciendoeste parámetro en No.

1 8 1

mailxmail - Cursos para compartir lo que sabes

Page 182: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

101. Propiedades para los campos de tipo numérico

Algunas propiedades de este tipo son idénticas a las explicadas para los campostipo texto, o bien no se aplican en campos tipo numérico, por lo que aquí no lasdescribiremos; se trata de Máscara de entrada, Título, Valor predeterminado, Reglade validación, Texto de validación, Re-querido e Indexado.

Figura 8.9

Tamaño del campo

Define el tipo de valores que podemos almacenar en el campo. Pulsando en la flechase abrirá la lista de posibilidades que muestra la figura 8.9. el cua-dro que estádebajo muestra los valores numéricos que se pueden almace-nar para cada subtipode los de la lista:

De acuerdo con el cuadro, podemos decir que sólo aceptan decimales los últimosdos tipos, siendo los tres primeros para valores enteros.

Si necesitáramos guardar valores monetarios, deberíamos seleccionar Tipo de datos Moneda, en lugar de Numérico. Veremos este formato más adelante.

Formato

Pulsando este renglón del cuadro de diseño se abre una lista de posibili-dades; enel sector derecho se muestra un ejemplo de cada una de ellas.

Figura 8.10

1 8 2

mailxmail - Cursos para compartir lo que sabes

Page 183: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

El formato se refiere a la forma de presentación de los datos; en caso de que el valorin-tervenga en algún cálculo, el mismo se hará en un formato interno de mayorprecisión, pero el resultado será presentado tal como lo determine el formatoelegido.

Lugares decimales

Define la cantidad de decimales que se muestran en el campo.

1 8 3

mailxmail - Cursos para compartir lo que sabes

Page 184: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

102. Propiedades para los campos fecha/hora

Los valores de fechas se guardan internamente como números enteros, y los valoresde horas como decimales. Esto permite sumar y restar fechas y horas como si setratara de números. Veamos el siguiente ejemplo:

1. Pulsemos el botón Base de datos, seleccionemos la solapa Tabla y pulsemos elbotón Nuevo. Mediante la opción Modo ver diseño accederemos a la ventana dediseño de tablas que ya conocemos.

2. Creemos un campo del tipo Numérico con el nombre Probar fechas y en lapropiedad Tama-ño (del cuadro inferior) seleccionemos Doble.

3. Grabemos esta tabla asignándole el nombre todos los tipos y pasemos a modohoja de da-tos.

4. En el único campo escribamos 1 .

5. Pasando al modo Diseño, pulsemos en la casilla de la columna Tipo de datos yoptemos por Fecha/Hora.

6. En el modo hoja de datos, observaremos que el campo ahora contiene 3 1 / 1 2 / 1 8 9 93 1 / 1 2 / 1 8 9 9. ¿Qué sig-nifica esto?: Internamente Access representa esa fecha con elvalor 1 . El día siguiente (01/01/1900) será representado con el valor 2 , el02/01/1900 con 3 y así sucesivamente.

7. Escribamos (ahora que estamos en el formato fechas) 27/08/1997, cambiemos elformato por numérico y observemos el valor almacenado en el campo: 35669. Estevalor representa la cantidad de días transcurridos desde el 31/12/1899 hasta lafecha ingresada.

8. Volvamos al modo diseño y agreguemos un nuevo campo Numérico y Doble conel nombre Probar horas.

9. En el modo hoja de datos escribamos en ese campo los valores: 0 .25 .5 .75. Parahacer esto colocaremos en el campo Probar horas el valor 0 en el primer registro (elque contiene el valor 35669 en el campo Probar fechas), y crearemos otros tres conlos valores solicitados en el campo Probar horas.

10. Pasamos a modo Diseño, cambiemos el formato de este campo por Fecha/Horay observe-mos el valor de los registros:

12:00 AM 06:00 AM 12:00 PM 06:00 PM

ó 0:00 06:00 12:00 18:00

La forma de representación de las fechas y las horas es afectada también por losparámetros es-tablecidos para Windows. Así podemos tener la fecha representadacomo DD/MM/AA (día-mes-año), MM/DD/AA, o AA/MM/DD (en el Capítulo 4hemos visto cómo se ajustan estos parámetros).

Haciendo cuentas, llegaremos a la conclusión de que lo que se almacena comohoras, es en realidad la fracción equivalente del día (12:00 = .5 = medio día).

Un mismo valor puede contener fechas y horas

1 8 4

mailxmail - Cursos para compartir lo que sabes

Page 185: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

El hecho de que el formato sea uno solo (fecha/hora) para fechas y horas, tieneentonces una razón de ser.

Un mismo valor puede contener una fecha en su parte entera y una hora en su partedeci-mal. Hagamos esta otra prueba:

1. En el campo Probar Fechas escribamos 35669.5

2. Pasemos a modo diseño y asignemos a ese campo en Tipo de dato: Fecha/Hora

3. En el cuadro inferior de Propiedades pulsemos sobre Formato, para abrir la listade la figura 8.11.

4. Seleccionemos Fecha corta.

5. Volviendo al modo hoja de datos, obtendremos la fecha 2 7 / 0 8 / 9 7. Por lo vistono cuentan aquí los decimales, pues arrojó el mismo resultado con el valor 35699que con 35699.5.

6. Pasando al modo Diseño, pulsemos sobre el primer campo; en el cuadro de Propiedades pul-semos Hora larga, grabemos y pasemos a la hoja de datos.

El campo nos mostrará sólo la hora (en este caso, ha sido despreciada su parteentera y se nos muestra la hora equivalente a su parte decimal: 0.5 = 12:00 o 12:00PM según el formato de fechas de Windows) pero...

Figura 8.11

7. Volvamos a diseño y asignemos un formato Fecha general (ver figura 8.11), y enmodo hoja de datos observemos que el campo nos muestra ahora ambos datosjuntos:

27/08/97 12:00 PM

Esta propiedad de mostrarnos fecha y hora en un mismo campo se logra entoncesasignando el tipo de datos Fecha/hora y en el cuadro de propiedades de abajo Fecha generalFecha general. Seguramente deberemos ensanchar la columna para apreciar lafecha y la hora. Luego, respetando el mismo formato, podemos ingresar o modificar

1 8 5

mailxmail - Cursos para compartir lo que sabes

Page 186: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

fecha y la hora. Luego, respetando el mismo formato, podemos ingresar o modificarambos datos.

Siguiendo con estos razonamientos, si al campo del ejemplo le sumáramos .5, elresultado sería 35700 (28/08/97), y la ecuación equivalente en el formato Fecha/horaFecha/hora sería

27/08/97 12:00 + 12 horas = 2 8 / 0 8 / 9 7

Formato

Ya vimos, en el ejercicio anterior, cómo se trabaja con este parámetro en el caso delas fechas. Observemos que la lista de parámetros es distinta cuando se trata de uncampo de dato Numérico (comparemos las figuras 8.9 y 8.11).

Las restantes propiedades para los campos tipo fecha, son similares a las que seexplicaron para los tipos texto y numérico.

 

1 8 6

mailxmail - Cursos para compartir lo que sabes

Page 187: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

103. Algunos ejemplos de formatos Fecha y Hora

Fecha general          13/01/94 18:02:00

Fecha larga             Viernes 13 de Enero de 1994

Fecha mediana        13-Ene-94

Fecha corta             13/01/94

Hora larga               18:02:00

Hora mediana          06:02 PM

Hora corta              18:02

1 8 7

mailxmail - Cursos para compartir lo que sabes

Page 188: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

104. Campos tipo Autonumérico (contador)

Se trata de un tipo de campo automático. Access asigna un número creciente oaleatorio a ese campo en cada nuevo registro que se agregue a la tabla. Es ideal parael caso en que deba-mos numerar los registros por orden de llegada. Este campo NONO es accesible al usuario, por lo tanto, no se lo puede modificar.

1 8 8

mailxmail - Cursos para compartir lo que sabes

Page 189: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

105. Propiedades de los campos tipo Moneda

Se trata de un caso particular del tipo numérico, con parámetros adaptadosespecialmente para representar montos o valores monetarios. También depende delo que se haya definido res-pecto de valores monetarios en la configuración deWindows.

El tipo de dato Moneda asigna por omisión también la propiedad Moneda comoformato (primer parámetro de la pantalla de propiedades), pero podemos cambiar elmodo de representa-ción, por ejemplo a científico (3.45E06)

Este formato aplica el tipo de moneda ($, Pta, etc.) y la separación de decimales ymiles que se encuentren establecidas para Windows.

Ejemplos de formatos numéricos

Repasando lo que vimos sobre formatos numéricos daremos algunos ejemplos:

Ingresamos 1234.5

Formato Veremos

Número general 1234,5

Moneda $ 1.234,50

Fijo 1235

Estándar 1.234,50

Científico 1,23E+03

Si en el parámetro Formato (debajo de Tamaño) elegimos, por ejemplo, Porcentaje,e in-gresamos en modo tabla el valor 0,824, éste se presentará como 82,40 %.

En el formato Fijo, podremos especificar el número exacto de decimales; Accessredondea-rá y agregará ceros para cumplir con la cantidad de decimales fijados.

1 8 9

mailxmail - Cursos para compartir lo que sabes

Page 190: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

106. Campos de tipo Sí/No

Se trata de campos que sólo admiten un valor por sí o por no. Aparecen en la tablacon la forma de una casilla de verificación. Cuando se trata de registrar si un hechoocurrió o no, este tipo de dato nos dará la seguridad de que sólo cuenta con unvalor activo (la casilla correspon-diente contiene un tilde) o inactivo (la casilla semuestra vacía).

1 9 0

mailxmail - Cursos para compartir lo que sabes

Page 191: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

107. Cómo aplicar reglas de validación a un campode la tabla

Con esta propiedad de campo limitaremos el rango de datos que podremosingresar. Si qui-siéramos ingresar un valor fuera de dicho rango. Access no lopermitirá, ya que no cumple con los requisitos introducidos como Regla devalidación.

Esta propiedad que, como vimos, se utiliza junto con Texto de validación, mostraráel men-saje definido en este último parámetro cuando no se cumplan los requisitosintroducidos en la re-gla de validación.

Algunas expresiones comunes de validación

Las reglas de validación nos permiten determinar si se admite o no ingresar uncierto valor en un campo determinado. Veamos:

< > 0

Determina que el valor deberá ser distinto de 0 (cero)

0 o >100

El valor a ingresar deberá ser 0 o superior a 100

Como "L??"

El valor deberá tener 3 caracteres y comenzar con L

< # 1 / 1 / 9 4 #

La fecha a introducir deberá ser anterior a 1994

> = # 1 / 1 / 9 2 # Y < # 1 / 1 / 9 3 #

La fecha deberá ser del año 1992

>=Fecha0

La fecha no podrá ser anterior a hoy

Como ya vimos, cuando agreguemos o modifiquemos alguna regla de validación enuna tabla que ya contiene datos, Access nos advertirá que estos datos podrían nocumplir con las nuevas reglas y es, por lo tanto, nuestra responsabilidad modificarpreviamente aquellos datos que pudieran no cumplir con las nuevas condiciones.

1 9 1

mailxmail - Cursos para compartir lo que sabes

Page 192: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

108. Cómo utilizar la propiedad Indexado

Ya mencionamos los índices en el Capítulo 2 (figura 2.5), cuando dijimos que Accessnos recomienda asignar un índice para cada tabla que agreguemos al sistema.Crearemos un índice estableciendo la propiedad Indexado en alguno de los camposde la tabla. Access se encargará de mantener la tabla ordenada por el contenido deese campo respecto de los registros que incor-poremos o modifiquemos en lamisma. Podremos establecer la propiedad Indexado solamente para campos tipoTexto, Moneda, Numérico o Fecha/hora.

Las alternativas de esta propiedad son:

Valor del parámetro Indexado

Actúa como...

No

Elimina el índice existente o no crea un índice con este campo

Sí (con duplicados)

Crea un índice

Sí (sin duplicados)

Crea un índice único sin repeticiones

Si aplicamos la propiedad Sin duplicados, Access no nos permitirá introducir unvalor en este campo si este valor ya existe para otro registro. Para que un campopueda ser la clave princi-pal de una tabla, es requisito que el mismo sea un índice sin duplicados. Esta propiedad puede aplicarse a un solo campo de la tabla y suefecto es similar al del parámetro Ordenar (en el cua-dro de Propiedades de latabla) aunque nos permite un acceso más rápido.

El parámetro Ordenar tiene prioridad por sobre el Indexado, incluso aunque éstetenga agregada la propiedad Clave principal.

Cómo funciona aquí la Clave principal

Si, estando ubicados en un campo del diseño de la tabla, pulsamos Clave Principal,el campo será designado como clave principal de la tabla y automáticamentequedará establecida la propiedad Indexado (Sin duplicados).

1 9 2

mailxmail - Cursos para compartir lo que sabes

Page 193: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

109. Cómo cambiar el tipo de dato en una tabla enuso

Cuando definimos una tabla, utilizamos en cada caso el tipo de campo que más seadecue al dato que ha de contener. Al mejor diseñador de sistemas Access se lepueden escapar detalles que recién percibe con el sistema en funcionamiento y condatos cargados en todas sus tablas. Ante la necesidad de modificar el tipo de datode algún campo, debemos observar las siguientes consideraciones:

Texto a Numérico

Debemos verificar que el nuevo tipo de campo pueda aceptar los datos quecontenga la tabla. Por ejemplo, si un campo texto no contiene sólo números, NOpodrá ser convertido a numérico.

Sí/No a Texto y a Numérico

No hay ningún inconveniente en convertir este tipo de campo a numérico o a texto;en el primer caso, los campos que contienen Sí, serán convertidos al valor numérico - 1- 1 y el contenido No, al valor numérico 0 .

Inversamente, si convertimos un campo numérico a Sí/No, todo valor distinto de 0será convertido a Sí y los valores 0 serán convertidos a No.

En el caso de la conversión a texto obtendremos las palabras Sí o No recostadassobre el borde izquierdo del campo.

Cuando se convierte de texto a Sí/No, Access interpreta como Sí a las palabras yes, on y 1 y como No a las palabras No, Off, 0 y a los campos que contienen espacios.

Texto a Memo

Si optamos por modificar un campo texto a un tipo de campo Memo (más de 255caracteres) debido a que, por ejemplo, lo almacenado en éste es muy extenso,debemos tener en cuanta que este último tipo de campo no permite crear índices.Cuando, por el contrario, deseemos pasar de Memo a Texto, este último campotomará sólo los 255 primeros caracteres, perdiéndose en la conversión loscaracteres sobrantes.

Tamaño de los campos

numéricos

En los campos de tipo numérico, el tamaño depende del tipo establecido (byte,entero, entero largo, doble o simple) y pode-mos cambiar su tamaño sininconvenientes, siempre que pase-mos a un tamaño más grande o de mayorcapacidad. En el caso inverso, debemos asegurarnos de que todos los valorespueden tener cabida en el nuevo tamaño.

Contador a numérico

Este cambio se efectúa sin inconvenientes pero debemos estar seguros en cuanto ala necesidad del cambio antes de concre-tarlo, ya que luego no nos será posiblereconvertir un campo numérico al tipo contador.

1 9 3

mailxmail - Cursos para compartir lo que sabes

Page 194: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Qué hacer ante un posible error de conversión

Access mostrará una advertencia toda vez que no le sea posible convertir undeterminado campo al tipo de dato solicitado. Si en el cuadro de avisocorrespondiente pulsamos Cancelar, podremos volver a definir las conversiones, encambio con Aceptar, se guardarán todos los cam-bios, se harán las conversionesposibles y se borrarán los datos que no se pudieron convertir.

1 9 4

mailxmail - Cursos para compartir lo que sabes

Page 195: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

110. Campos tipo Memo

Estos campos son particularmente adecuados para dotar a cada registro de la tablade un lugar para escribir todo tipo de comentarios. No es necesario definir sulongitud, ya que la misma se maneja de manera automática, extendiéndose amedida que se le agrega información.

El texto allí colocado no dispone de ninguna posibilidad de formato, ni de carácterni de pá-rrafo, y como un ejemplo de ello podemos mencionar que al pulsar lasteclas Tabulador ó Return pasare-mos al siguiente campo, es decir que nopodremos utilizar siquiera el tabulador o el avance de línea. Veremos de inmediatouna mejor forma de guardar textos en los campos.

1 9 5

mailxmail - Cursos para compartir lo que sabes

Page 196: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

111. Campos tipo OLE: cómo colocar en una tablainformación de otros programas

Este formato nos permite definir campos que aceptarán cualquier tipo de datoproveniente de aplicaciones OLE compatibles (del inglés OLE = Object Linking andEmbedding: vinculación e Incrustación de objetos). En esos campos podremosincluir elementos tales como imágenes de Paint, textos de Word, Sonidos, etc.

La técnica consiste en que cuando nos ubicamos en un campo OLE y pulsamos doble clicdoble clic, Access llama a la aplicación correspondiente para que maneje lainformación contenida en el mismo.

Por ejemplo, un campo OLE puede contener un documento de Word y, en ese caso,pul-sando doble clic sobre el campo, Access llamará a Word y le pasará en bloquelos datos allí con-tenidos, que no son ni más ni menos que un documento Word,para que la propia aplicación (Word) se encargue de manejarlos. Una vez que Wordtoma control de la información la presenta en la ventana correspondiente. A partirde ese momento estaremos trabajando en Word y dispon-dremos de todo el poderde esta aplicación como procesador de textos.

La aplicación que presta el servicio (Word en el ejemplo) es llamada servidora y laque lo so-licita (Access), es llamada cliente. Algo similar ocurre entre Access y Paint,y de esta forma po-dremos incorporar imágenes a nuestra base de datos.

Cuando hayamos concluido de trabajar con la aplicación servidora, no debemosguardar la información del modo habitual; en este caso, al salir de la aplicación, éstadevolverá el paquete de información a Access para que lo guarde en el registrocorrespondiente de la tabla; de este modo, regresamos a Access para seguirtrabajando normalmente.

Esta posibilidad multiplica el poder de los programas; combinamos todas lasfacilidades de manejo de bases de datos de Access con la versatilidad para laautoedición de Word, lo que nos permitiría en este caso hasta incluir imágenes enestos textos. De esta forma, cada programa se especializa en lo suyo, lográndoseasí rendimientos óptimos que difícilmente se conseguirán con una sola aplicaciónque incluyera ambos procesos.

1 9 6

mailxmail - Cursos para compartir lo que sabes

Page 197: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

112. Objetos OLE en formularios

Si creamos un campo OLE en una tabla y luego colocamos este campo en unformulario (esto es un control del formulario conectado con un campo OLE),podemos sacar el máximo pro-vecho de la información que contenga. Veamos cómo:

1. En el cuadro de diálogo Base de datos pulsemos el botón Tablas y abramos lacuadrícula de diseño de tablas.

2. Colocaremos un único campo que llamaremos Campo OLE, y le asignaremos, enla columna Tipo de dato, la opción Objeto OLE.

3. Pasemos a modo hoja de datos, guardemos la nueva tabla como PruebaOLE,contestemos No a la pregunta sobre la clave principal y pulsemos luego el botónAutoformulario para obte-ner un formulario que nos muestre el campo OLE reciénincorporado a la tabla (figura 8.13).

Figura 8.13

Este campo, por ser de tipo OLE, es multipropósito, lo que significa que puedeaceptar in-formación de distinto tipo, como por ejemplo documentos Word,imágenes mapa de bites (Paint), sonidos, etc.

La información, incluso, puede diferir de un registro a otro. Podemos colocar en elcampo OLE del primer registro una imagen, en el del segundo un sonido, en el deltercero un documento Word, etc. En suma, podemos colocar allí informaciónproveniente de cualquier aplicación OLE compatible (que para los tipos de datomencionados podrían ser Paint, Grabadora de sonidos y Word respectivamente).

1 9 7

mailxmail - Cursos para compartir lo que sabes

Page 198: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

113. Qué posibilidades nos ofrece OLE

En principio, OLE nos permite manejar información que es desconocida para AccessUn do-cumento de Word, una imagen de Paint, un sonido digitalizado, etc.),posibilitándonos de esta forma almacenar y manejar cualquier tipo de informacióndentro de una base de datos.

Podemos cargar (incrustar) estas distintas piezas de información extra-Access encampos de una tabla, o bien vincularla a los mismos. En el primer caso, el bloque deinformación que constituye el objeto es copiado al campo y pasa a formar parte dela tabla y en el segundo caso se crea un vínculo con este objeto (o mejor aún, con elarchivo que contiene ese objeto) que perma-nece fuera de la base de datos, pero seaccede a él automáticamente toda vez que sea leído el registro que contiene dichovínculo.

Cómo colocar distintos objetos en campos OLE

De alguna manera (hay varias posibles), creamos una copia del objeto o pieza deinforma-ción extra-Access y la colocamos en el campo OLE de alguno de losregistros de la tabla. Junto con el objeto, Access guardará la información necesariapara identificar a la aplicación servidora (la que se utilizó para crear el objeto o quepermite modificarlo) de manera tal que luego podamos llamarla cuando necesitemosmodificar dicho objeto.

A partir del momento en que fue copiado al campo correspondiente, podemosmodificar o eliminar el objeto original sin que ello afecte a la copia que quedó yaalmacenada dentro de un campo de una tabla en la base de datos.

Por ejemplo, para insertar una imagen bitmap, o documentos Word o WordPad,podemos hacerlo a partir de los respectivos archivos .BMP o .DOC, arrastrando elicono que representa a dicho objeto (en la ventana Mi PC o del comando Buscar) alrecuadro del objeto OLE en el formu-lario o bien al campo de la hoja dinámica si esque estamos visualizando la información de ese modo.

Si se trata de un documento .DOC (Word o WordPad), podemos abrir el mismo en laaplica-ción correspondiente y, valiéndonos de las herramientas de selección, tomarsólo una parte del objeto y luego arrastrar al campo OLE, siendo este métodoparticularmente adecuado para colocar parte de un objeto.

Debemos tener en cuenta que, en el caso de que arrastremos, el documento originalquedará en blanco (el sector seleccionado), ya que en ese caso estaremosejecutando el comando Mover de la aplicación servidora (Word o WordPad). Siqueremos conservar intacto el documento original, luego de mover los datos alcampo OLE debemos pulsar sobre la ventana del documento y ejecu-tar el comando DeshacerDeshacer (Control + Z), el que actuará sólo sobre la aplicación servidora,restituyendo lo que se quitó y permaneciendo sin cambios la información que secolocó en el campo OLE.

Mencionaremos una tercera forma de hacer esto mismo (y que es válida tambiénpara el programa Paint que maneja imágenes bitmap). Luego de seleccionar, enlugar de arrastrar pode-mos utilizar (en la aplicación servidora, Word o Paint), elcomando Control + C para copiar el fragmen-to seleccionado al portapapeles, luegopulsar sobre el campo OLE y allí colocar la información del portapapeles con las

1 9 8

mailxmail - Cursos para compartir lo que sabes

Page 199: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

teclas Control + V. Si nuestra idea fuera recopilar textos escritos en aplicacionesviejas (archivos TXT o DOC´s de Word 5.5, Word 2.0, Word 6.0, etc.), nos resultaráconveniente abrir cada uno de ellos en Word 2000 (este programa hará lasconversiones necesarias al nuevo formato) y luego pegar lo que nos interese en loscampos OLE, de la forma que ya se explicó.

Qué es un objeto vinculado

En lugar de obtener una copia, podemos vincular el objeto original. Vincular quieredecir que sólo existirá el objeto original (no hay copias). Este objeto original serámostrado en el cuadro del campo correspondiente en el formulario Access, y podremos modificarlo del mismo modo que a los objetos incrustadospodremos modificarlo del mismo modo que a los objetos incrustados. Entenderemosesto mejor con un ejemplo:

Supongamos que el dibujo correspondiente al logotipo de una empresa resida en unarchivo del tipo .BMP (imagen de Paint). Este archivo de imagen puede estarcolocado en todos los for-mularios de la empresa mediante lo que se denomina un vínculo dinámicovínculo dinámico.

Si en alguna oportunidad esta empresa decide modificar su logotipo, el diseñadorabrirá ese archivo .BMP con Paint, modificará su diseño y lo grabará actualizado.

En adelante, todos los formularios de la empresa que incluyan un vínculo hacia eseobjeto lo mostrarán con su nuevo diseño, ya que se trata del mismo objeto.

Ya sea que se trate de objetos incrustados o vinculados, al pulsar doble clic sobre elcampo correspondiente llamaremos a la aplicación servidora para trabajar sobredichos objetos. En el primer caso, una vez actualizados los objetos, la informaciónserá devuelta al campo de la tabla y en el segundo se actualizará el archivo original,para que en adelante todos puedan tomar la nue-va versión del mismo.

No siempre es conveniente utilizar vinculaciones; por ejemplo, si se tratara de unatabla de legajo con fotos, nos convienen los objetos incrustados, ya que de estaforma las fotos de cada sujeto estarán guardadas en el registro correspondientedentro de la base de datos y podrán mo-dificarlas únicamente quienes tenganderecho de acceso a la misma.

1 9 9

mailxmail - Cursos para compartir lo que sabes

Page 200: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

114. Incrustemos objetos OLE compatibles

Recién vimos los casos más comunes, referidos a documentos Word o a imágenesPaint, pero podemos colocar en un campo OLE objetos provenientes de cualquieraplicación que dis-ponga de compatibilidad OLE, requisito que cumplen casi todaslas aplicaciones modernas para Windows 3.1 o Windows 95/98.

En el campo OLE que hemos agregado a la tabla Prueba OLE, colocaremos treselementos de distinto tipo y origen: imágenes, sonidos y un documento de Word.

1. Estando en el formulario en que nos dejó el último paso del ejercicio anterior,pulsemos sobre el nuevo campo con el botón derecho y seleccionemos Insertarobjeto; aparecerá el cuadro de diálogo de la figura 8.14.

Este cuadro nos muestra todas las aplicaciones cuyos objetos podemos insertar (ovincular) en campos o formularios Access. El contenido de esta línea depende de lasaplicaciones que ten-gamos actualmente instaladas. En la instalación de donde setomó la imagen de la figura 8.14 disponemos para insertar, entre otros, de archivosde CorelDraw 9.0, hojas de cálculo y gráficos de Excel, etc.

A la izquierda se nos presentan dos alternativas: la opción Crear nuevo que llamaráa la aplicación seleccionada en la lista para que mediante la misma creemos unnuevo objeto, o Crear desde archivo, con la que incorporaremos el objetoleyéndolo directamente desde el archivo que lo contiene.

Hasta aquí hemos visto los pasos que son comunes a cualquier tipo de objeto queinserte-mos. Veremos seguidamente cómo proceder según el tipo de objeto ainsertar.

Figura 8.14

Cómo incrustar una imagen desde un archivo

2. Activemos la opción Crear desde un archivo

Aparecerá en el cuadro anterior un campo Archivo con su correspondiente botón

2 0 0

mailxmail - Cursos para compartir lo que sabes

Page 201: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Examinar.

3. Para seleccionar un objeto de imagen pulsemos sobre el campo Archivo yescribamos, por ejemplo, C:\Windows\Burbujas.bmp y pulsemos aceptar, o bien...

4. Pulsemos examinar y, en el cuadro de la figura 8.15, seleccionemos cualquierarchivo que se encuentre en nuestra PC o en alguna otra de la red local.

Figura 8.15

Como vemos, este cuadro nos permite una total libertad de elección, pero debemostener en cuenta que (como ya lo dijimos) sólo podremos insertar objetosprovenientes de aplicaciones OLE compatibles (las que se muestran en la lista delcuadro Insertar objeto de la figura 8.14).

5. En caso de haber optado por Examinar, una vez encontrado el objeto pulsemos AceptarAceptar, lo que nos regresará al cuadro de la figura 8.14 en donde pulsaremosnuevamente aceptar para que de este modo quede colocada una copia del archivoelegido en el campo tipo OLE de la tabla.

El método explicado, como vimos, en general, ya que nos permite insertar cualquierpieza de información proveniente de aplicaciones OLE compatibles.

Cómo colocar un sonido

Veremos ahora los pasos a seguir para insertar un objeto de sonido:

Para trabajar con sonidos debemos disponer de una placa de sonido correctamenteinstalada.

1. Pulsemos sobre el campo OLE del nuevo registro con el botón derecho yseleccionemos nuevamente la opción Insertar objeto.

2. Activemos la casilla Crear desde archivo, pulsemos Examinar y en el cuadro dela figura 8.16 ubiquemos la carpeta

C:\Windows\Media\Microsoft Office 2000

2 0 1

mailxmail - Cursos para compartir lo que sabes

Page 202: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

A continuación, tomaremos un objeto de sonido del tipo WAV; disponemos devarios de ellos en esta carpeta. Ocurre que además de estos archivos de sonido, lalista podría contener muchos otros de distinto tipo, por lo tanto, para que semuestren sólo los que necesitamos, haga-mos lo siguiente:

3. En el campo Nombre del archivo escribamos *.Wav y pulsemos el botón Abrir.

4. Aparecerán en la lista sólo archivos de sonido. Seleccionemos cualquiera de ellos,por ejem-plo, Camera.wav y pulsemos el botón Abrir.

5. Ya de vuelta en la ventana Insertar objeto de la figura 8.14, pulsemos Aceptar yquedará co-locada una copia del archivo de sonido Camera.wav en el campo OLE dela tabla.

Cómo insertar un objeto nuevo

Dejando activa la casilla Crear nuevo (cuadro de la figura 8.14), podremosseleccionar una aplicación compatible en la lista correspondiente; haremos unejemplo con un objeto de CorelDraw 9.0. Si no tenemos instalada esta aplicación,no aparecerá el elemento CorelDraw 9.0 Gráfico en la lista que se menciona en elpaso 2 del próximo ejercicio; siendo así podremos seleccionar cual-quier otraaplicación que encontremos allí, como por ejemplo WordPad o Word.

1. Pulsemos sobre el campo OLE con el botón derecho y optemos por Insertarobjeto.

Por si no hubiera quedado claro, repetiremos que todas las operaciones relativas ainserción y uso de objetos extra-Access, mediante OLE se pueden llevar a cabo tantoen el recuadro de objeto que presenta el formulario (figura 8.14), como en cualquiercampo tipo OLE en la tabla o la consul-ta.

2. Pulsemos CorelDraw 9.0 Gráfico (o, en su defecto, la aplicación que hayamoselegido) y lue-go Aceptar. Esto nos traerá al escritorio la ventana CorelDraw y, porlo tanto, podemos aplicar aquí todo lo que sabemos de este programa para elaborarun gráfico.

3. Una vez concluida la elaboración del gráfico, seleccionaremos en CorelDraw laopción Salir y volver a Prueba OLE: Tabla del menú ARCHIVO, y con ello lainformación gráfica que elabo-ramos pasará al campo OLE de la tabla.

2 0 2

mailxmail - Cursos para compartir lo que sabes

Page 203: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

115. Cómo visualizar y actualizar un objetoincrustado

Si trabajamos en modo tabla, no tendremos a la vista los objetos OLE que hemosinsertado porque sería imposible mostrarlos en un espacio tan reducido, pero sítenemos una indicación del tipo de objetos de que se trata (figura 8.16).

Figura 8.16

1. Abramos la tabla Prueba OLE (no es necesario cerrar el formulario) y pulsemos doble clicdoble clic en el formulario sobre el objeto indicado como Imagen de mapa de bits(recordemos que había-mos insertado una imagen desde el archivo Burbujas.bmp ocualquier otro a elección).

Aparecerá el programa Paint con la imagen que contiene el campo OLE. Si lodeseáramos, podríamos modificar allí la imagen.

2. Una vez que hayamos concluido con los retoques o cambios a la imagen,pulsaremos sobre el menú ARCHIVO de Paint. Notaremos que el mismo hacambiado las opciones relativas a salir y guardar (figura 8.17).

En este menú la opción Guardar ha sido reemplazada por la de Actualizar PruebaOLE: Tabla y la opción Salir por Salir y regresar a Prueba OLE: Tabla.

Estos cambios se deben a que la aplicación Paint está actuando ahora comoservidora y, por lo tanto, no puede guardar el archivo de imagen porque el origendel mismo es un registro de una tabla Access; por ello, en lugar de guardar, debeactualizar en el campo OLE la nueva versión de la imagen que modificamos.

Tampoco puede salir y regresar a Windows porque la aplicación no se ejecutó desdeWin-dows sino que ha sido llamada por Access, por lo que debe retornar al mismo.

2 0 3

mailxmail - Cursos para compartir lo que sabes

Page 204: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 8.17

3. Seleccionemos la opción Salir y regresar a Prueba OLE. Con esta acción,volveremos a Ac-cess y devolveremos el objeto de imagen, ya actualizado, al campocorrespondiente de la ta-bla.

Si, estando en Paint, efectuamos algún cambio en el objeto de imagen, este cambioquedará almacenado en el campo.

4. Pulsemos ahora doble clic sobre el campo en que hemos incrustado el sonido; elmismo se escuchará.

Observemos que en el caso de los sonidos no tenemos la posibilidad de editar elobjeto; veremos luego cómo podemos acceder a un objeto de sonido para editarlo.

5. Por último, volvamos a repetir los tres primeros pasos, para el objeto CorelDraw.

Cómo cambiar un objeto de imagen incrustado

Puede ocurrirnos que necesitemos reemplazar una imagen en lugar de modificarla.En este caso, podemos abrir la nueva imagen en la aplicación correspondiente,seleccionarla y luego arrastrarla dentro del campo OLE (que actualmente nos estámostrando la imagen anterior). Esto podría no funcionar, dependiendo de laaplicación de que se trate (de hecho, no podemos hacer esto con Paint) y en estecaso, seleccionaremos la imagen o parte de la misma en la aplicación, enviaremosuna copia al Portapapeles con el comando Copiar y luego, seleccionando el campoOLE, colocaremos la copia con el comando Pegar.

Nada nos impide que estando en el paso 1 del ejercicio anterior abramos unaimagen en cualquier programa adecuado (como por ejemplo PaintShop o AdobePhotoshop), copiemos una parte de la misma (o en su totalidad) al portapapeles yluego la peguemos en Paint. Precisamente eso es lo que hicimos en el ejercicio, paratomar una imagen de la carpeta:

C:\Windows\Programa de Instalación.bmp

Los campos OLE se muestran en los formularios

1. Seguramente tenemos abierto el formulario Prueba OLE (si no fuera así,pulsemos el botón Formularios, del cuadro Base de datos, y abramos Prueba OLE).

En el menú VENTANA disponemos entonces de los elementos Prueba OLE (elformulario) y Prueba OLE: Tabla (recordemos que en su oportunidad generamos el

2 0 4

mailxmail - Cursos para compartir lo que sabes

Page 205: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Autoformulario a partir de la tabla y le asignamos el mismo nombre que a ésta).

2. Seleccionemos la ventana del formulario.

Utilizaremos el menú VENTANA si la ventana en la que deseamos trabajar seencuentra abierta pero no se visualiza en la pantalla. Si la misma apareciera visible,aunque parcialmente, bastará con pulsar sobre la parte visible para que toda laventana pase al primer plano.

El formulario aparecerá en la pantalla mostrándonos su primer registro. PulsemosAv. Pág y/o Re. Pág. hasta ubicar el registro que contiene la imagen; ésta semostrará como se observa en la figura 8.18.

Figura 8.18

Esta imagen fue tomada del archivo Programa de Instalación.bmp que seencuentra en la carpe-ta C:\Windows. Si la misma no se muestra como deseamos,podemos modificar el modo de ex-hibición de la misma. Esto se explica sobre elfinal del Capítulo 11 bajo el título "Cómo modificar propiedades de los objetos deimagen".

3. Pulsemos sobre le botón de Avanzar registro y veremos el siguiente registro,aunque por con-tener en ese campo otro tipo de información, tendrá un aspectodiferente. Por ejemplo, si se trata de un documento o de un gráfico de CorelDraw,se mostrará el objeto, pero si el mismo es un sonido se mostrará un icono de bocina.

4. Ubiquemos entonces el objeto de sonido; pulsemos doble clic sobre el mismo yescuchare-mos el sonido.

5. Pulsemos nuevamente Avanzar registro y tendremos probablemente en la pantallauna parte del documento Word (por su tamaño, el campo no alcanza a mostrar eldocumento completo).

6. Guardemos este formulario, asignándole el nombre Prueba OLE.

Cómo trabajar sobre los campos OLE

Sabemos que ya se trate de un formulario o de una tabla, podemos pulsar doble clicsobre el objeto de imagen (o gráfico, o documento) para que Access llame a laaplicación servidora y le pase la información del mismo. Así podemos trabajar

2 0 5

mailxmail - Cursos para compartir lo que sabes

Page 206: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

aplicación servidora y le pase la información del mismo. Así podemos trabajarnormalmente con el objeto y su aplicación, esto es, seguir dibujando o modificar unaimagen con Paint, agregar o modificar textos de un do-cumento con Word, etc.

Repetimos que no ocurre lo mismo con los sonidos; al pulsar doble clic sobre labocina sólo escuchamos el sonido, sin la posibilidad de modificarlo. Veremos másadelante cómo podemos editar este tipo de objetos. Por ahora...

1. Estando abierto el formulario Prueba OLE, ubiquémonos en algún registro quecontenga una imagen de mapa de bits y pulsemos doble clic sobre la misma.Cuando hicimos esto mismo sobre la tabla, accedimos a la ventana del programaPaint, pero ahora aparece una ventana parecida, pero no es el programa Paint. ¿Quéha ocurrido?

2 0 6

mailxmail - Cursos para compartir lo que sabes

Page 207: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

116. Qué es OLE2

Para usuarios de anteriores versiones de Windows, diremos que ésta es una nuevacaracte-rística de las aplicaciones Windows 95/98, una nueva forma de incrustacióny vinculación de obje-tos, conocida como OLE2.

Anteriormente (con aplicaciones OLE compatibles de Windows 3.1), al pulsar dobleclic so-bre el objeto incrustado, aparecía en todos los casos la ventana de laaplicación servidora; luego de trabajar en la misma, mediante la opción Salir yvolver a... del menú ARCHIVO, devolvíamos el objeto modificado al formulario deAccess para seguir trabajando con los comandos de base de datos de Access.

Las nuevas aplicaciones compatibles OLE2 permiten, en cambio, trabajar dentro dela mis-ma ventana (en este caso el formulario de Access).

Al pulsar doble clic sobre el objeto de imagen (tal como lo hicimos), aparecerá unmarco de líneas con rayas oblicuas rodeando al mismo y, aunque seguimosvisualizando el formulario nota-remos que la ventana ha cambiado las barras deherramientas y menú de Access por las corres-pondientes de Paint (figura 8.19)

Si el objeto ocupa un espacio mayor que el que le destinamos en el marco de objetodel formulario, cuando accedemos a la aplicación servidora (Paint, en este caso),aparecerán las ba-rras de desplazamiento propias de esta aplicación.

Figura 8.19

En estos casos podemos pulsar sobre los bordes de la figura o en el ángulo inferiorderecho del marco (aparecerá una doble flecha) y arrastrar hacia abajo y a la derechahasta alcanzar el máximo tamaño posible. También, aunque todo esto entorpece elmanejo y edición del objeto.

Recomendamos, por consiguiente, acceder al modo diseño (pulsando fuera de laimagen y luego el botón Diseño) para extender el cuadro del objeto al máximo que

2 0 7

mailxmail - Cursos para compartir lo que sabes

Page 208: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

nos permita el lugar dis-ponible. Luego, cuando accedamos nuevamente alformulario, nos resultará más fácil trabajar so-bre el objeto.

Si a pesar de todo lo dicho, el formulario no nos resultara cómodo para trabajarsobre la imagen (o cualquier otro tipo de objeto de que se trate) pulsemos fuera delobjeto, luego pulsemos dentro del mismo con el botón derecho, seleccionemos delmenú emergente la opción Objeto xxx para pre-sentar otro submenú del queelegiremos Abrir. De esta forma se abrirá la ventana completa de la aplicacióncorrespondiente al objeto, tal como ocurría con los objetos insertados en tablas.

1. Estando en las condiciones que muestra la figura 8.19, tomemos la herramientade Rellenar con color y pulsemos sobre un color de la paleta, por ejemplo el amarillo, para tomarlos.

2. Pulsemos ahora sobre algún sector oscuro de la imagen; este elemento cambiaráa color ama-rillo.

3. Pulsemos en cualquier lugar del formulario, pero fuera del marco de imagen,habremos vuelto a Access y veremos la imagen modificada. Podemos ahora utilizarlos comandos del formulario para pasar a otro registro, hacer búsquedas de datos,etc.

Procediendo en forma similar, o sea pulsando doble clic sobre el objeto incrustado,podre-mos editar el documento Word que tenemos en otro de los registros. Comoya dijimos, junto con el objeto se guarda cierta información que permite que encada caso se abra la aplicación servidora que corresponda al tipo de objeto encuestión.

Si el objeto insertado fuera un documento Word, estando en modo edición (o sealuego de pulsar doble clic, cuando aparecen las barras de herramientas Word)podemos definir columnas, tablas y hasta pegar una imagen, procediendo en todoslos casos del mismo modo que lo hace-mos habitualmente dentro de documentosWord.

Cuando luego pulsemos fuera del marco del objeto, comprobaremos que semuestra texto e imagen dentro de los límites del recuadro del objeto.

2 0 8

mailxmail - Cursos para compartir lo que sabes

Page 209: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

117. Cómo manejar un sonido incrustado

El caso del registro que contiene el objeto de sonido es conceptualmente igual al delos otros dos objetos, pero hay una pequeña diferencia respecto de su manejo. Sipulsamos doble clic sobre el campo en cuestión, sabemos que escucharemos elsonido. Para poder editar el obje-to de sonido, disponemos de un comando en elmenú EDICIÓN; la opción Objeto de archivo de sonido o bien la misma opción enel menú emergente del botón derecho. Veamos cómo se opera.

1. Pulsemos con el botón derecho sobre el icono de bocina que aparece en elcampo OLE.

2. Del menú emergente pulsemos y optemos por Objeto de archivo de sonido(figura 8.20).

Figura 8.20

Si ahora pulsáramos sobre la opción Reproducir, obtendríamos la mismareproducción del sonido que cuando pulsamos doble clic.

3. Pulsaremos, en cambio, la opción Edición, y accederemos a la aplicación Grabadora de so-nidos (figura 8.21).

Haremos un cambio sólo para demostrar que podemos editar los sonidosalmacenados en Access del mismo modo que lo hacemos con las imágenes y lostextos. Al sonido que escuchábamos al pulsar doble clic sobre el campo,agregaremos uno nuevo, por lo que en adelante escu-charemos este último sonidoa continuación del anterior.

4. En la Grabadora de sonidos (figura 8.21) optemos por EDICIÓN, Insertar archivo.Aparecerá un cuadro estándar de selección de archivos en donde debemos ubicar lacarpeta C:\Windows\Media\Microsoft Office 2000.

5. Una vez ubicada esta carpeta, se mostrarán los archivos de sonido: Applause.wavApplause.wav, Cash-reg.wav, Clap.wav, etc. Pulsemos sobre alguno de ellos yluego sobre Abrir.

6. Pulsemos, en la ventana de la Grabadora, sobre el botón Play, para probar lacombinación de sonidos efectuada.

2 0 9

mailxmail - Cursos para compartir lo que sabes

Page 210: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 8.21

7. Pulsemos el botón Cerrar de la aplicación de la figura 8.21; la grabadoraentregará a Access la nueva información; Access tomará el control y guardará en elcampo activo el nuevo sonido recibido.

8. Ahora pulsemos doble clic sobre el campo OLE y escucharemos un nuevo sonidoque se agregó a continuación del anterior.

Si tuviéramos instalada alguna aplicación de edición de sonidos más completa, éstasería llamada en lugar de la grabadora. Dispondremos en ese caso de muchas másposibilidades para elaborar sonidos pero siempre, como toda aplicación servidora,devolverá del mismo modo el con-trol a Access y le transferirá la informaciónactualizada.

2 1 0

mailxmail - Cursos para compartir lo que sabes

Page 211: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

118. Cómo vincular un objeto

Vincularemos ahora un objeto de imagen Paint a un campo de un registro de latabla. Como ya hemos dicho, para que un objeto pueda ser vinculado debe existiren la forma de un archivo grabado en la unidad de almacenamiento, por lo quetrabajaremos sobre un objeto de imagen existente.

Los archivos de imagen BMP provistos por Windows/Office son algo pobres pero silo deseamos, tenemos la alternativa de elegir alguna imagen en formato JPG, comopor ejemplo Columna con contenido_image001.jpg, un archivo de imagen provistocon Office 2000 que se encuentra en la carpeta C:\Archivos de programa\MicrosoftOffice\Templates.

Como la siguiente operación modificará definitivamente el archivo quevincularemos, es conve-niente que previamente hagamos una copia del mismo.Accedamos con Mi PC a la carpeta C:\Windows (o la otra que mencionamos para laimagen alternativa), ubiquemos el archivo de imagen (Burbujas.bmp, o bienColumna...), mantengamos pulsada la tecla Control y simultáneamente pulsemossobre el nombre del archivo en la lista, arrastremos y soltemos dentro de la mismaven-tana. Esto creará en la misma carpeta el archivo Copia de... que utilizaremospara el ejemplo.

1. Pulsemos dentro de la ventana de Access para visualizar el formulario de la figura8.18 (si es que ya no lo tenemos a la vista).

2. Pulsemos Av. Pág. hasta ubicarnos en un registro en blanco.

3. Pulsemos sobre el campo OLE con el botón derecho y seleccionemos, del menúemergente, la opción Insertar objeto.

4. Activemos el botón de selección Crear desde un archivo y luego activemos lacasilla Vincu-lar.

5. Pulsemos el botón Examinar. Aparecerá la ventana de la figura 8.15.

6. Abriendo la lista Buscar en: ubiquemos la carpeta C:\Windows (o bien comoalternativa la carpeta C:\Archivos de programa\Microsoft Office\Templates).

7. En el campo Nombre del archivo escribamos la clave genérica *.bmp (o *.jpg sinos decidi-mos a cargar la imagen alternativa) y pulsemos Abrir. Con esto nosquedaremos en el mismo cuadro, pero se mostrarán en la lista sólo los archivos deltipo elegido.

8. Ubiquemos el archivo de imagen Copia de... que hemos creado en un pasoanterior y pulse-mos el botón Abrir.

9. Ya de vuelta en el cuadro Insertar objeto, éste tendrá el aspecto que se muestraen la figura 8.22. Pulsemos Aceptar.

2 1 1

mailxmail - Cursos para compartir lo que sabes

Page 212: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 8.22

Aparecerá la imagen, que es en realidad un vínculo al archivo correspondiente.

Cómo se actualizan los objetos vinculados

Toda vez que se cambie ese archivo, se modificará también esta imagen vinculada.

Comprobaremos que la imagen del campo OLE que acabamos de insertar respondeinme-diatamente a un cambio en su objeto de origen. Para hacerlo, podríamosacceder al archivo Copia de Burbujas.bmp con el propio programa Paint,modificarlo y grabarlo. De esta forma, una vez que lo grabemos, se mostrará con sunuevo aspecto en todos los lugares en donde se encuentre vinculado.

Pero, como sabemos, también desde Access se puede actualizar el objeto vinculado.Vincu-laremos entonces este objeto de imagen a otro registro más, en uno de elloslo modificaremos y verificaremos luego en el otro que la imagen aparece modificada.

1. Repitiendo los pasos del ejercicio anterior vinculemos la misma imagen a unregistro nuevo o en blanco.

2. Abramos el formulario y ubiquemos el primero de los registros que contiene laimagen para que ésta quede a la vista (observemos que debajo se muestra elnúmero de registro).

3. Pulsemos doble clic sobre el campo vinculado; esto llamará al programa Paint, oal que co-rresponda a la imagen, que nos mostrará en su ventana la imagen delobjeto vinculado.

Notemos que en este caso aparece completa la pantalla de Paint o la del programacorrespon-diente a la imagen, en lugar de lo que ocurría con los objetosincrustados en donde se incorpora-ban al formulario las barras de este programa;esto se debe a que ahora estamos trabajando di-rectamente sobre el archivo deimagen.

4. Pulsemos sobre el formulario y con la barra de desplazamiento inferior pasemosal otro regis-tro que contiene el mismo vínculo.

5. Volvemos a pulsar sobre la ventana del programa de edición de la imagen.

2 1 2

mailxmail - Cursos para compartir lo que sabes

Page 213: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Ahora, las dos imágenes que tenemos a la vista provienen de dos registros distintos,si bien ambos se encuentran vinculados al mismo archivo.

6. Como lo hiciéramos en otro ejercicio anterior, cambiemos algún color con laherramienta Re-llenar con color. Por ejemplo, habiendo tomado la herramientacitada, pulsemos con el botón derecho sobre el fondo negro o el cielo de la imagen,éste cambiará a blanco. La imagen que muestra el formulario también cambiará(recordemos que ésta pertenece a otro registro).

2 1 3

mailxmail - Cursos para compartir lo que sabes

Page 214: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

119. Dónde podemos colocar objetos OLE

Vimos hasta ahora la colocación de objetos OLE en un campo de una tabla, perotambién podemos colocarlos en los formularios o en los informes como dato fijo, esdecir, no dependiente de los datos de la tabla.

Podemos hacer esto con la herramienta Marco de objeto, tema que se estudia sobreel final del Capítulo 11 bajo el título "Cómo colocar imágenes con las herramientas".Debe quedar claro que podemos colocar objetos vinculados o incrustados, ya sea aun campo de una tabla o a un formulario o informe, por cuanto el destino del objetono depende del tipo de colocación que hagamos.

2 1 4

mailxmail - Cursos para compartir lo que sabes

Page 215: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

120. Cómo vincular nuestros archivos con Internet

Disponiendo de un servicio de conexión a Internet, podemos vincular registros delas tablas con direcciones de Internet, es decir que utilizando un campo del tipo hipervínculohipervínculo podemos acce-der a una determinada página WEB desde un formulario,desde una consulta o directamente des-de ese campo de vinculación externa.

Qué es un hipervínculo

Al integrarse en Windows 98 los recursos locales con los de Internet, se establecióun for-mato estándar de direccionamiento llamado URL (por Uniform Resource Locator, Localizador Uni-forme de Recursos) que permite a cada página Web (a lasque accedemos mediante Internet) tener una dirección única en el mundo.

Un hipervínculo es un código que contiene una dirección URL y es conocido comotal por Windows 95/98 y sus aplicaciones. En cualquier aplicación que se nosmuestre unos de estos hipervínculos podemos pulsar sobre el mismo para acceder ala pieza de información que corres-ponda a esa dirección URL.

Esta propiedad nos permitirá crear hipervínculos dentro de nuestros documentospara acce-der a:

- Recursos locales, alojados en el disco de la propia PC.

- Recursos de la Red Local (otras PC conectadas a la nuestra).

- Recursos de la WEB que pueden estar ubicados en cualquier servidor alrededor delmun-do (veremos enseguida los conceptos básicos de esta red mundial).

Windows 98 incorpora en su núcleo operativo al Internet Explorer y es por ello quela venta-na principal de este sistema, Mi PC, es capaz de procesar hipervínculos.

Básicamente, podemos decir que cuando se pulsa sobre un hipervínculo, Windows98 inicia un proceso que establece las conexiones necesarias y nos abre el objeto alque ese hipervínculo hace referencia.

Si se tratara de un objeto local o de red, directamente lo abrirá, y si es un recurso dela Web, activará el Internet Explorer, iniciará el proceso de conexión telefónica (si nose encontrara una conexión activa), enviará el pedido a la red mundial y recibirá lainformación que devuelva el ser-vidor correspondiente (si la dirección es válida, elservidor referido en la misma contestará envian-do la información requerida).

El hipervínculo no muestra el objeto, sino un texto que se distingue de los demáspor su co-lor.

El tipo de dato hipervínculo

El paso previo para conectarnos a Internet desde Access sería entonces agregar uncampo cuyo tipo de dato sea precisamente hipervínculo. Se trata de un tipo de datoque podemos asignar de la misma manera que lo hacemos con los tipos numéricoso de texto.

Nos resultará aún más sencillo, ya que este tipo de dato no requiere de ningún tipode pa-rámetros.

1. Accedamos a una tabla en modo diseño; podemos elegir en este caso la última

2 1 5

mailxmail - Cursos para compartir lo que sabes

Page 216: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

1. Accedamos a una tabla en modo diseño; podemos elegir en este caso la últimatabla utilizada.

2. En la grilla de trabajo de modo diseño de la tabla (figura 2.1 del Capítulo 2)ubiquémonos en la primera fila libre y escribamos Prueba Vínculo.

3. Pulsando Tabulador pasamos a la columna Tipo de datos, allí abrimos la lista(figura 8.1), y selec-cionamos Hipervínculo.

4. Pasamos a modo hoja de datos, guardamos los cambios efectuados al diseño, yya estamos en condiciones de crear vínculos con páginas WEB en todos los registrosde la presente tabla.

Teniendo el campo adecuado, lo que sigue es cargar datos en el mismo (la direccióncon la que deseamos vincular). Del mismo modo que ocurre con otro tipo de datos,podemos trabajar sobre este campo para crear o modificar hipervínculos en todaconsulta o formulario en que se encuentren incluidos. El procedimiento que sedescribe a continuación se aplica, por lo tanto, al campo de hipervínculodondequiera que éste se encuentre (tabla, consulta o formulario).

Cómo insertar un hipervínculo

Disponiendo ya de un campo capaz de almacenar información de hipervínculo,hagamos lo siguiente:

5. Pulsemos sobre el campo tipo hipervínculo con el botón derecho.

6. Aparecerá un menú emergente cuya última opción es Hipervínculo. Pulsemossobre la misma y se abrirá un submenú similar al de la figura 8.23.

Figura 8.23

7. Pulsemos sobre Modificar hipervínculo... y se presentará el cuadro Insertarhipervínculo de la figura 8.24.

8. El segundo campo de esta ventana está indicado con el título: Escriba el nombredel archivo o página Web; allí podemos escribir la dirección de un recurso de la PClocal, como por ejem-plo la ubicación de un archivo de texto referido a Access:

C:\Archivos de programa\Microsoft Office\Office\Acleame9.txt

Una dirección de recurso en otra PC de la red local:

//Gaby/backup/Monet/Beach.jpg

o bien una dirección de página Web como:

http://www.clarin.com.ar

2 1 6

mailxmail - Cursos para compartir lo que sabes

Page 217: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

9. Pulsemos Aceptar para volver al documento; visualizaremos el hipervínculo encolor azul y subrayado

Si la dirección colocada fuera la correcta, al pulsar sobre el hipervínculo se abrirá lapieza de información correspondiente.

En el caso del objeto local se abrirá la ventana de WordPad mostrándonos eldocumento de texto, aunque antes aparecerá un cartel de aviso debido a que eldocumento es demasiado grande para abrirlo con Notepad que es el programanaturalmente asociado con los archivos .txt.

Figura 8.24

En el caso de la dirección de WEB se abrirá el Internet Explorer mostrándonos lapágina Web en el formato HTML (el formato de las páginas Web).

Qué hacer si no sabemos la dirección exacta

Bastará el más mínimo error en la dirección ingresada para que la conexión no seaposible y es por ello que, a menos que estemos muy seguros, nos resultará másconveniente buscar esa dirección.

Una vez encontrada quedará colocada en el documento y tendremos la seguridad deque es la correcta.

Busquemos la dirección de un documento local

Ya aprendimos a ubicar un archivo cuando utilizamos el cuadro Abrir archivo. Aquíproce-deremos del mismo modo, con la única diferencia de que no abriremos elarchivo, sino que crea-remos el hipervínculo para que luego, al pulsarlo, aquél deabra.

1. Repitamos los pasos 5 a 7 del ejercicio anterior para llegar al cuadro de la figura8.24.

2. Pulsemos el botón Archivo para abrir el cuadro vincular a archivo.

2 1 7

mailxmail - Cursos para compartir lo que sabes

Page 218: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Buscaremos esta vez algún documento (.doc) de los que se copian en el proceso deinstala-ción de Windows 98.

3. Abramos el campo Buscar en (sector superior) y de la manera que ya sabemosubiquemos el documento C:\Windows\Script.doc.

Observemos que la dirección del vínculo que buscamos se encuentra cargada en elsegun-do campo de este cuadro.

4. Pulsemos Aceptar para regresar a la tabla.

Este vínculo nos conecta ahora con el documento Script.doc; probémoslo.

5. Pulsemos sobre el texto azul subrayado (el hipervínculo que recién creamos) y seabrirá Word 2000 mostrándonos el documento.

Si observamos el sector superior de la ventana (de Word), notaremos que la ventanaagregó una barra más a las habituales. Se trata de la barra Web, un conjunto decomandos que utilizare-mos para navegar (recorrer una cadena de documentosenlazados mediante hipervínculos) y que vemos en la figura 8.25.

 Particularmente, en el extremo izquierdo se ha habilitado una flecha celeste.Se trata del botón Atrás que es una de las flechas de navegación y en este caso nospermite volver al documento desde donde vinimos, sin cerrar el actual.

6. Pulsemos entonces el botón Atrás para regresar a la tabla.

 Debido a que existe un documento abierto por el que ya estuvimos"navegando", se agrega-rá a la ventana de Access una barra similar a la que vimosrecién en Word y en particular, se mostrará habilitado el botón Adelante.

Figura 8.25

Observemos que el hipervínculo ha cambiado el color azul por un color morado;esto significa que el documento Script.doc ya ha sido visitado. Este cambio de colornos resultará muy útil en redes de documentos más complejas y también en la WEB,para saber los hipervínculos a los que hemos accedido ya y aquellos que nos faltaver aún.

7. Pulsemos Adelante para volver a abrir el documento vinculado.

En este caso, en lugar de Adelante podríamos haber pulsado sobre el hipervínculopara volver a acceder a Script.doc. Los botones Adelante y Atrás nos permiten ir yvenir por el mismo camino que ya hemos recorrido.

Aunque al momento de cerrar Access, el hipervínculo se encontrara en color morado(visitado), al volver a abrir este programa todos los hipervínculos de la tablavolverán al color azul (no visitado).

Cómo cargar una dirección desde Internet

2 1 8

mailxmail - Cursos para compartir lo que sabes

Page 219: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Si, en cambio, el sitio o página WEB con el que queremos establecer el vínculo seencuentra en algún servidor de Internet, hagamos lo siguiente:

1. Repitamos el paso 1 del ejercicio anterior para llegar al cuadro de la figura 8.24.

2. Pulsemos el botón Página WEB, que nos llevará directamente al InternetExplorer (o el ex-plorador habitual de Internet que tengamos instalado).

El curso a seguir a partir de aquí es un tema propio de Internet que, en parte,depende del servidor al que estemos conectados y del programa que utilicemoscomo explorador.

Una vez ubicada la página WEB, ésta se mostrará en la pantalla del Explorador.

3. Minimicemos la ventana del Explorador, con lo que aparecerá visible nuevamentela ventana de la figura 8.24, que ya tendrá cargada la dirección de la página WEB queacabamos de vi-sualizar en el campo Vincular al archivo o dirección URL.

Saldremos de este cuadro pulsando Aceptar, con lo que dicha dirección quedaráahora car-gada en el campo de tipo Hipervínculo de donde partimos.

Cómo funciona el hipervínculo

Sabemos que el color es importante ya que nos indica si la página correspondienteha sido accedida (en terminología de Internet diremos "visitada") o no. En este caso,una dirección recién establecida se mostrará en color azul, lo que nos indica queaún no la hemos visto (aunque como hemos dicho tuvimos que verla antes deasignarla). Si pulsamos sobre la misma, se efectuará la conexión con la página WEBcorrespondiente.

El modo de llevar a cabo la mencionada conexión dependerá del tipo de instalaciónde In-ternet presente en nuestra PC o del explorador que hayamos instalado.

Podrá presentarse la ventana del Microsoft Internet Explorer o la del explorador quehaya-mos definido como predeterminado, o bien el asistente de conexión a redesde Windows 95/98.

Por cualquiera de estos medios, se establecerá la conexión telefónica y luego detransferirse la información por esa vía, se nos mostrará la página correspondiente.

Podemos en este momento cerrar el explorador y la conexión telefónica (lo cual esreco-mendable para no seguir acumulando pulsos telefónicos) o simplemente volvera Access para continuar nuestra tarea con la base de datos.

En este último caso, podemos seguir utilizando el Explorador en formaindependiente, para visitar otras páginas WEB.

Ya de vuelta en Access, observaremos que en el campo del hipervínculo al queaccedimos, la dirección correspondiente se muestra ahora en color morado, lo quenos indica que ya hemos visto (visitado) esa página.

2 1 9

mailxmail - Cursos para compartir lo que sabes

Page 220: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

121. Cómo definir columnas calculadas

En este capítulo tomaremos como base la consulta ConsClientes del Capítulo 6para des-arrollar nuevos conceptos sobre las consultas de selección; más adelanteanalizaremos otros tipos de consultas que efectúan diversas tareas específicas.

Cómo definir columnas calculadas

Hasta ahora hemos definido el contenido de cada columna de la consulta, comoproveniente de un campo de una determinada tabla.

Podemos crear columnas que muestren el resultado de cálculos en los queintervienen valo-res provenientes de uno o más campos de la tabla, combinadoscon valores fijos y operadores matemáticos: expresiones, como por ejemplo MONTOFACTURADO * 0,15MONTOFACTURADO * 0,15, para que en la misma se muestre el 15 % del valor delcampo MONTOFACTURADO de la tabla, o MONTOFACTURA-DO > 1000, para quela columna nos muestre como dato el resultado de esta expresión lógica, que será - 1 (verdadero) para todos aquellos clientes con montos facturados mayores que1000 y, por el contrario, será 0 (falso) para el resto de los clientes.

En estas expresiones pueden intervenir uno, dos, o más campos de cualquiera delas tablas que se encuentran en el sector superior de la cuadrícula de diseño de laconsulta; tomaremos ahora un par de estos campos.

1. Ubiquémonos primeramente en la consulta ConsClientes en modo diseño.

Ahora, para agregar una columna:

2. Pulsemos en la barra de selección de la columna MONTOFACTURADO (en la partesuperior de la misma). La columna quedará seleccionada (resaltada en negro).

3. Pulsemos Insert para crear una columna en blanco a la izquierda deMONTOFACTURADO.

4. Pulsemos en la primera casilla de esta nueva columna (renglón Campo) yescribamos:

MONTOFACTURADO*PORCOMIS/100

5. Pasemos a modo tabla y desplacémonos a la derecha con la barra inferior hastavisualizar la nueva columna. Esta mostrará el resultado del cálculo indicado paracada registro, bajo el en-cabezado Expr1.

Selección por comparación numérica respecto de un valor calculado

Ahora que disponemos del valor calculado lo utilizaremos para seleccionarregistros, del mismo modo que lo hacemos con los campos directos.

Seleccionaremos ahora los registros correspondientes a un monto de comisiónmayor o igual a $ 200.

6. En la casilla Criterio, de la nueva columna, escribamos: > = 2 0 0.

7. Ejecutemos y observemos la nueva selección. Si el objetivo de este criterio fuerasólo el de seleccionar, podríamos ocultar la columna.

2 2 0

mailxmail - Cursos para compartir lo que sabes

Page 221: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Como podemos apreciar, el modo de expresar los criterios, ordenamientos, etc., estotal-mente explícito. No debe preocuparnos el tener que crear dos, tres o máscolumnas auxiliares ya que, como vimos, la consulta es un objeto virtual y por lotanto las nuevas columnas no ocuparán ningún lugar extra ni en las tablas ni en labase.

2 2 1

mailxmail - Cursos para compartir lo que sabes

Page 222: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

122. Cómo activar el cuadro de propiedades

Estando en modo Diseño, pulsemos el botón Propiedades para presentar el cuadrodel mismo nombre (figura 9.1), que quedará visible en la ventana de Access y nosmostrará las pro-piedades de cualquier objeto que seleccionemos. Este cuadropermanecerá visible toda vez que nos encontremos en modo Diseño, hasta tanto lodesactivemos (pulsando nuevamente el mismo botón).

Figura 9.1

Cambiemos el nombre de la columna calculada

El nombre de la columna, Expr1, no es el más adecuado; sabemos que es muy fácilcam-biarlo. En el cuadro de Propiedades de la figura 9.1 pulsemos sobre elparámetro Título y escri-bamos Importe de Comisión.

Cómo modificar otras propiedades de un campo de consulta

Habremos notado que el nuevo campo no tiene el mismo formato queMontofacturado. Para cambiar el formato del mismo, recurriremos al cuadro de PropiedadesPropiedades.

1. Pulsemos en cualquier parte del nuevo campo para mostrar sus propiedades.

2. Seleccionemos Moneda y 2 en las casillas correspondientes (Figura 9.2).

2 2 2

mailxmail - Cursos para compartir lo que sabes

Page 223: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 9.2

3. Pulsemos el botón modo tabla para ejecutar la consulta.

Ahora aparece la columna en su formato correcto y lleva el encabezamiento reciéndefinido, que tiene prioridad por sobre el nombre que podamos colocar en lacuadrícula (recordemos el otro modo de cambiar el nombre de una columna quevimos al final del Capítulo 5).

Otro ejemplo de selección con campos calculados de fechas

1. Pulsemos en la casilla Campo de la columna FECHAPRIMERACOMPRA,ubiquemos el cur-sor a la izquierda de la F y agreguemos Fecha()- de modo quepara esa columna nos quede la expresión:

Fecha() - FECHAPRIMERACOMPRA

2. En el cuadro de propiedades coloquemos: Antigüedad en la casilla Título.

3. Ejecutemos y observemos que la nueva columna contendrá la diferencia en díasentre la fecha actual (Fecha()) y la fecha de facturación de cada registro.

4. Volviendo al modo Diseño, en la casilla de los criterios coloquemos para estacolumna el texto: > = 3 6 5 * 2

5. Ejecutemos y veremos los clientes cuya antigüedad es igual o mayor a 2 años.

Cómo modificar el cálculo para un campo calculado

Del mismo modo que ingresamos la fórmula de cálculo, procederemos a sumodificación:

6. En modo Diseño pulsemos sobre el encabezado de la nueva columna y luegosobre las teclas Shift + F2 (Recordemos que esta combinación activa el comandoZoom).

Modifiquemos de manera tal que nos quede la siguiente expresión:

(Fecha() - FECHAPRIMERACOMPRA) / 365 y pulsemos Return.

El comando Zoom nos facilitó la tarea, pero no es obligación utilizarlo; podemosmodificar di-rectamente el dato o bien ensanchar la columna para trabajar con máscomodidad.

2 2 3

mailxmail - Cursos para compartir lo que sabes

Page 224: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

7. En la propiedad Formato para ese campo seleccionemos Fijo, lo que eliminará elexceso de decimales que genera la expresión.

8. Debemos ahora cambiar el criterio ya que el valor que se expresaba en días, ahorase expresa en años y fracción; en la casilla de criterios reemplacemos por > = 2

9. Ejecutemos y aparecerán seleccionados los mismos registros que con el criterioanterior, ya que 365*2 equivale a 2 años.

2 2 4

mailxmail - Cursos para compartir lo que sabes

Page 225: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

123. Cómo resolver un problema utilizandoexpresiones

Calculemos el recargo en función del tiempo de atraso en el pago de una factura.

Si la fecha de la factura se encuentra en el campo FECHAFACTURA, el monto enMONTO-FACTURADO, y se nos especifica que se aplicará un recargo de 4 % porcada 30 días de atraso, podemos crear una columna que contenga para cadaregistro, el importe del recargo que se debe-rá abonar, con la siguiente expresión:

MONTOFACTURADO * 0.04 *(FECHA() - FECHAFACTURA) / 30

El término (FECHA() - FECHAFACTURA) da como resultado los días de atraso en elpago. Los días de atraso divididos por 30 arrojan como resultado la cantidad demeses (y fracción) de atraso.

El término MONTOFACTURADO * 0.04 nos da como resultado el importe de recargopor cada mes de atraso.

Finalmente, el producto de estos dos últimos términos dará el resultado esperado,que po-dremos ver como una columna más en la consulta. Si creamos un informebasado en esta consul-ta, podremos enviarle a cada cliente una notificación de losmontos adeudados, el tiempo de atra-so (podría ser otra columna con la expresiónFECHA() - FECHAFACTURA) y los intereses punito-rios devengados.

2 2 5

mailxmail - Cursos para compartir lo que sabes

Page 226: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

124. Cómo combinar campos: el operador &

Además de las expresiones matemáticas y las lógicas, podemos emplearexpresiones de cadenas de caracteres. En nuestra tabla Clientes tenemos un campopara la localidad y otro para el código de provincia. Podemos crear en la consultauna columna en la que se combinen el códi-go de provincia con la localidad.

1. Agreguemos una nueva columna y en la casilla superior, Campo, escribamos:

Localidad& ","&CodProvin

Sabemos que la expresión que coloquemos en esta casilla determina el contenido dela co-lumna.

2. Estando abierto el cuadro de propiedades pulsemos sobre este campo reciéncreado, verifi-quemos que el parámetro Formato esté en blanco y coloquemoscomo Título: Locali-dad/Prov.

3. Ejecutemos la consulta y observemos el nuevo formato: Manantiales/SL.

2 2 6

mailxmail - Cursos para compartir lo que sabes

Page 227: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

125. Trabajemos con las propiedades generales dela consulta

Estando en modo Diseño, pulsemos el botón Propiedades para presentar el cuadrode la fi-gura 4.17 (mostrado ya en el Capítulo 4, cuando estudiamos la función delparámetro Mostrar Todos los campos).

Cómo mostrar valores únicos cuando éstos se repiten

Supongamos que se nos pide que elaboremos un informe con la lista de laslocalidades en las que opera la empresa. Utilizaremos a este efecto la propiedad dela consulta Valores único aplicándola al campo Localidad de la tabla Clientes.

Estando activa esta propiedad, el resultado de la consulta mostrará la informaciónde mane-ra tal que no se repitan dos registros con todos los campos iguales odicho en otras palabras, la combinación de valores de todos los campos tiene queser única para un registro dado que se va a incluir en los resultados.

Mientras que Valores únicos sólo contempla el resultado de la consulta (evita dos omás registros que muestren los mismos datos) Registros únicos toma comoreferencia el registro de origen; en este caso seleccionará registros únicos en latabla (o consulta) origen y los mostrará como resultado.

La diferencia entre ambos modos se presenta en el caso de que no sean incluidostodos los campos del origen en la tabla dinámica. Si el origen de los datos tiene dosregistros que se dife-rencian sólo por el contenido de campos no mostrados, elresultado para Registros únicos nos dará dos registros con los datos mostradosidénticos mientras que Valores únicos mostrará uno solo.

Por el hecho de establecer cualquiera de estas propiedades el resultado se mostraráorde-nado de izquierda a derecha por el valor de todos los campos.

Distintos modos de trabajo de las tablas dinámicas

Si abrimos el parámetro Tipo Recordset (figura 9.3) se presentarán tres opciones.

Figura 9.3

La primera opción: Dynaset es la predeterminada, y como ocurrió en todas lasconsultas que utilizamos hasta ahora, podíamos modificar los datos y esos cambiosse guardan en la tabla origen.

Consultas sin verificación de coherencia

Dynaset (Actualizaciones incoherentes) nos permite actualizar datos que resultaríanlue-go en incoherencias respecto de las combinaciones que contiene la consulta.Para comprobarlo con un ejemplo, hagamos lo siguiente:

1. Abramos la consulta ConsClientes e intentemos en cualquiera de los registroscolocar un có-digo de provincia no válido, sabemos que esto será mostrado comoun error (recordemos el cartel de la figura 5.10 del Capítulo 5).

2 2 7

mailxmail - Cursos para compartir lo que sabes

Page 228: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

2. Ahora accedamos al cuadro de Propiedades, abramos la lista del parámetro TipoRecordset (figura 9.3) y cambiemos a Dynaset (Actualizaciones incoherentes).

3. Repitamos el paso 1 y luego pulsemos para pasar a otro registro y confirmar asíque el có-digo no válido ahora sí fue aceptado.

Esta forma de trabajo no es recomendable, pero puede servirnos si tenemos ciertaurgencia para ingresar registros en una consulta sin tener los datoscorrespondientes en la/s tabla/s rela-cionada/s; por ejemplo, ingresar Clientes sinasignar el vendedor en una consulta que lo exija co-mo verificación de coherencia.

Sabemos que podríamos hacer esto fácilmente abriendo la tabla e ingresando losdatos allí pero no tendremos a la vista los datos de otras tablas combinadas que talvez necesitemos.

Consultas de sólo lectura (vistas)

Volviendo a las opciones de la figura 9.3, si elegimos para nuestra tabla dinámica laopción Archivo SnapShot, ésta generará una vista que sólo nos mostrará los datosno permitiendo su modificación, por lo que la consulta será de sólo lectura.

2 2 8

mailxmail - Cursos para compartir lo que sabes

Page 229: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

126. Qué es una hoja secundaria de datos

Es algo similar a una consulta con una combinación uno a varios, pero que podemosabrir para cada registro de la tabla principal. Supongamos que tenemos un registrode Calificaciones en donde se almacenan el nombre del alumno, la fecha delexamen y su calificación. Esta tabla contendrá todos los exámenes que se les hatomado a todos los alumnos durante el año. Podría-mos ordenar esta tabla por elnombre del alumno para ver juntas las calificaciones de cada alum-no a lo largo delaño, o bien ordenar por fecha y así controlar qué alumnos estuvieron presentes encada uno de los exámenes. Pero podemos hacer estas dos cosas de una maneramejor si aprovechamos las propiedades de las hojas secundarias de datos.

El uso de hojas secundarias es muy sencillo, por lo que no nos detendremos en unejercicio detallado, sino que daremos una explicación general referida a cómohacerlo.

Hagamos un ejercicio con hojas secundarias

Primeramente crearemos una tabla Calificaciones, en donde incluiremos trescampos: Alumno, Fecha y Nota.

Luego creamos la tabla Alumnos, con sólo el nombre de cada uno de los alumnos(sólo un campo: Alumno) y otra tabla Exámenes, que será sólo la lista de las fechasen las que se tomaron los exámenes (sólo el campo Fecha).

Para la facilidad del ejercicio, coloquemos el mismo nombre de campo para elnombre del alumno en las tablas de Alumnos y Calificaciones y utilicemos elmismo nombre para el campo de fechas en Calificaciones y Exámenes.

Tanto en la tabla de Calificaciones como en la de fechas de exámenes, debemosutilizar para la fecha un formato de texto de 8 caracteres de longitud. Esto se debe aque las funciones de relación para hojas secundarias de datos, no se puedenestablecer en base a una clave de tipo fecha.

Para ayudarnos en el ingreso de las fechas podemos agregar al campocorrespondiente el atributo de máscara (será necesario hacer esto en la tabla de Exámenes ya que una vez ingresa-das las fechas en esa tabla, las tomaremos de allípara agregarlas a cada registro de calificacio-nes). Para crear una máscara,recordemos lo que estudiamos en el Capítulo 4 y seleccionemos el formatomostrado en la figura 4.11.

Ya creadas las tablas, ingresemos el nombre de cada uno de los alumnos en la tablaAlum-nos y la fecha de los exámenes en Exámenes.

Ya no tendremos que volver a ingresar fechas y nombres en la tabla decalificaciones. Abramos la tabla de Calificaciones en modo diseño, seleccionemosel campo Alumno, pulsemos abajo la solapa Búsqueda y coloquemos los datos quese muestran en la figura 9.4 (izquierda).

Pulsemos en el campo Fecha, luego la solapa Búsqueda e ingresemos lo que semuestra en la misma figura (a la derecha).

2 2 9

mailxmail - Cursos para compartir lo que sabes

Page 230: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Hecho esto abramos Calificaciones en modo hoja de datos. Ingresemos el nombredel alumno y la fecha, pulsando el botón de extensión del campo correspondiente yeligiéndolos de la lista desplegada, como se muestra en la figura 9.5.

Figura 9.5

Ahora definamos las hojas secundarias

Abramos la tabla Alumnos en modo diseño y habilitemos el cuadro de Propiedades(figura 9.6 izquierda).

Allí, en el campo Hoja secundaria de datos, abramos la lista y seleccionemos Ta-bla.CalificacionesTa-bla.Calificaciones. Escribamos Alumno en los dos campos Vincular(recordemos que el campo de vinculación se llama igual en ambas tablas).

Seguidamente abriremos en modo diseño la tabla Exámenes, y en el cuadro PropiedadesPropiedades colocaremos los parámetros que se muestran en la figura 9.6 (derecha).

 

2 3 0

mailxmail - Cursos para compartir lo que sabes

Page 231: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

127. Utilicemos la Hoja Secundaria de Alumnos

Abramos las tablas Alumnos y Exámenes (ambas en modo tabla). Observemos quea la izquierda se presenta un símbolo [+] (Figura 9.7).

Si pulsamos sobre ese icono, el mismo cambiará a [-] y aparecerá allí mismo unalista de to-dos los exámenes de un alumno (si lo hacemos en la tabla Alumnos) ouna lista de todos los alumnos de un examen si hacemos lo propio en la tabla ExámenesExámenes (figura 9.8).

La consulta de parámetros

Las consultas que vimos hasta ahora tienen ya determinados los criterios deselección, pero podemos elaborar también lo que se llama Consulta de parámetros;en este tipo de consulta, el valor de la casilla de Criterios no se encuentraestablecido y es solicitado al operador en el mo-mento de ejecución; ello nospermitirá decidir qué datos queremos ver en el momento de ejecutar la consulta.

Cómo construir una consulta de parámetros

Este tipo de consulta sólo se diferencia de las anteriores en la casilla de Criterios.En ese lugar, en vez de colocar el valor que queremos buscar, colocaremos unaleyenda adecuada para solicitar dicho valor, encerrada entre corchetes [ ].

Creemos una nueva consulta, agreguemos la tabla de Clientes y definamos losdatos de la cuadrícula como se muestra en la figura 9.9.

2 3 1

mailxmail - Cursos para compartir lo que sabes

Page 232: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 9.9

Al ejecutar esta consulta aparecerá la ventana de la figura 9.10.

Figura 9.10

Escribamos, por ejemplo, BA y pulsemos Intro para visualizar los datoscorrespondientes a la provincia de Buenos Aires.

Apliquemos lo que aprendimos en el Capítulo 5

Cuando ejecutamos una consulta de este tipo, Access procede a un reemplazo deparáme-tros antes de ponerla en funcionamiento; simplemente colocó BA en lacasilla Criterios de la co-lumna correspondiente, en reemplazo del texto entrecorchetes.

Esto nos permite utilizar en las consultas de parámetros todas las condiciones deselección que aprendimos en el Capítulo 5.

Por ejemplo, podemos colocar en la fila de criterios de una columna:

Como [Ingrese los caracteres que recuerde del nombre]

Recordemos que si una expresión de selección se inicia con Como, el valor delparámetro será tomado en forma genérica y no de manera literal.

Por ejemplo, si necesitamos encontrar un apellido difícil, cuando en la ejecución dela con-sulta se nos pida el parámetro, ingresaremos CZ* si sólo recordamos quecomienza con esos ca-racteres, para encontrar, tal vez, apellidos como CZARNIECKI,CZORNIAK o CZULO. Si no hubié-ramos incluido el parámetro Como, deberíamosrecordar el apellido exacto y completo para que se mostrara el registrocorrespondiente.

Por otro lado, una cosa no nos impide la otra; si cuando ingresamos el texto debúsqueda no empleamos los caracteres * y ?, la consulta exigirá el texto exacto ycompleto, siendo equivalente a la misma consulta sin el parámetro Como.

Si bien en el ejemplo de las provincias no resultó necesario utilizar Como, portratarse de un código de dos letras, en la mayoría de los casos le facilitaremos latarea al operador si a las claves de búsqueda o selección les anteponemos esta

2 3 2

mailxmail - Cursos para compartir lo que sabes

Page 233: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

palabra clave.

Podemos definir dos o más parámetros

Si, en una consulta, definimos varias columnas con criterios entre corchetes, alejecutarla nos pedirá uno a uno los parámetros especificados y recién después nosmostrará los datos.

Apliquemos la palabra clave Entre

Podemos utilizar la función Entre, que vimos en el Capítulo 5, en una consulta deparáme-tros.

Si, por ejemplo, en la columna MontoFacturado definimos el criterio:

Entre [Mostrar importes a partir de] y [pero no superiores a]

Al ejecutar la consulta aparecerán sucesivamente los cuadros de la figura 9.11,pidiéndonos los topes mínimo y máximo de los importes que queremos mostrar.

Colocaremos allí los valores correspondientes y estaremos restringiendo el resultadoa sólo los valores comprendidos entre esos límites.

Podemos combinar los dos ejemplos anteriores en una sola consulta para que éstanos pida primero una clave genérica para seleccionar nombres y luego los límitesmáximo y mínimo para mostrarnos, por ejemplo, los clientes cuyos apellidoscomienzan con una determinada letra y cu-yos montos de compra esténcomprendidos entre determinados límites.

Otro ejemplo con fechas

Podemos hacer algo similar con el campo de fechas. En la fila de criterios de uncampo de fecha podemos colocar Entre [desde] y [hasta]; no tenemos queespecificar nada en especial por tratarse de fechas; la verificación de las mismas sehará cuando sea solicitado el parámetro.

Cómo cambiar el orden de los parámetros

Si necesitáramos una definición más precisa deberíamos, además de especificar lospará-metros, preparar una tabla especial destinada a los mismos (figura 9.13).

Lo que coloquemos en cada una de las filas deberá tener el mismo texto que el queence-rramos entre corchetes para cada uno de los parámetros.

Así, si en la columna CodProvin colocamos el parámetro [¿Qué provincia quierever?] y en la columna MontoFacturado agregamos Entre [Mostrar importes apartir de] y [pero no superiores a] tendremos que escribir en la tabla deparámetros, lo que se muestra en la figura 9.13.

Esta tabla servirá sólo para determinar el orden en que se piden los parámetros (elorden será el que defina la tabla) y el formato o tipo de dato que se aceptará.

2 3 3

mailxmail - Cursos para compartir lo que sabes

Page 234: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

1. Estando en la ventana de diseño pulsemos con el botón derecho sobre el panelsuperior (zo-na gris). Aparecerá el menú emergente de la figura 9.12.

2. Del mismo seleccionemos Parámetros, con lo que aparecerá el cuadrocorrespondiente (figu-ra 9.13, izquierda).

También, definiendo los parámetros mediante este cuadro podemos determinar quétipo de datos aceptaremos en cada uno de estos parámetros.

Los parámetros serán solicitados en el mismo orden en que aparecen en el cuadro.

Colocaremos en la columna de la izquierda los textos (que como hemos dichodeberán coin-cidir exactamente con los textos encerrados entre corchetes en la fila CriteriosCriterios) y en la de la dere-cha seleccionaremos el tipo de dato que se aceptará encada caso.

2 3 4

mailxmail - Cursos para compartir lo que sabes

Page 235: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

128. Cómo calcular totales en nuestras consultas

Si, estando en modo diseño, pulsamos el botón Totales  de la barra de botonesaparece-rá la fila Total en la cuadrícula (figura 9.14).

El botón mencionado actúa como conmutador, activando y ocultando esta fila.

La función de esta fila de totales es separar los registros de la consulta en distintosgrupos, y mostrar sólo un registro por grupo con el resultado del cálculocorrespondiente. Por ejemplo, agrupar los registros por provincia para mostrar eltotal facturado en cada una de ellas.

Podremos calcular sumas, promedios, mínimos, máximos, etc., respecto del grupode los registros seleccionados por el criterio.

Figura 9.14

Cómo utilizar la fila Totales para calcular sobre grupos

Veremos ahora qué debemos colocar en la casilla de la fila de totales para lasdistintas co-lumnas, según la función que cumplirán en la obtención del total:

La columna en la que se basa el cálculo (en los ejemplos utilizaremosMONTOFACTURADO), debe tener en la fila de Totales la función que se quiereejecutar, SUMA, PROMEDIO, etc. Es-tos serán los campos de resumen; allí semostrará el resultado de aplicar la función especifi-cada a los valores de todos losregistros del grupo (por ejemplo la suma de MontoFacturado de todos los registrosde La Pampa).

Mín

Para mostrar el valor mínimo de cada grupo.

Máx

Para mostrar el valor máximo de cada grupo.

2 3 5

mailxmail - Cursos para compartir lo que sabes

Page 236: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Suma

Para mostrar la suma de los valores del grupo (para ese campo).

Promedio

Para mostrar el promedio o media del grupo.

DesvEst

Para mostrar la desviación estándar de los valores del grupo.

Var

Para mostrar la varianza calculada con los valores del grupo.

La o las columnas en las que se basa el criterio de agrupamiento (por ejemplo laprovincia) debe tener en la fila de Totales la función por omisión Agrupar por.Puede tener también, en la fila de los Criterios, algún criterio definido paraseleccionar los registros sobre los que se ha de totalizar.

No podemos resumir (sumar, promediar, etc.) columnas de texto, pero podemosaplicar a las mismas las siguiente funciones:

Cuenta

Para que nos muestre la cantidad de registros que se acumularon en cada grupo.

Primero

Para que se nos muestre el contenido de ese campo del primer registro del grupo.

Ultimo

Para que se nos muestre el contenido de ese campo del último registro del grupo.

No tiene sentido que una consulta de este tipo contenga otras columnas ya que,como vimos, no podrían mostrarse a menos que se les especifique alguna función.No obstante, si desea-mos conservar otras columnas, debemos deshabilitar lavisualización de las mismas seleccio-nando en la fila de Totales la función Dónde.Esto desactivará automáticamente la casilla Mostrar de la columna correspondientey evitará que cumpla cualquier otra función que pudie-ra alterar la presentación deltotal buscado.

El siguiente cuadro (figura 9.15) muestra de manera esquemática qué tipo deoperaciones se pueden efectuar, y en base a qué tipos de campo podemos aplicarlas.

Podemos mostrar más de un cálculo basado en el mismo campo. Para ellocrearemos nue-vas columnas con ese mismo campo, colocando en cada una de ellasla función deseada.

2 3 6

mailxmail - Cursos para compartir lo que sabes

Page 237: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Por ejemplo, podríamos crear una consulta de totales de montos facturados que nosmues-tre además, la mínima, la máxima y el promedio, agregando tres columnascon MontoFacturado y aplicando a cada una de ellas las funciones mencionadas.

Veamos algunos ejemplos

Mostraremos la disposición de los parámetros en la cuadrícula y debajo un prototipodel re-sultado que obtendremos al ejecutar la consulta.

En las distintas figuras sólo se verán las columnas que intervienen en la obtencióndel resu-men, que deben ser las únicas de la consulta. Si consideramos necesarioconservar alguna/s otra/s columna/s reiteraremos que éstas no intervendrán ni enel agrupamiento ni en los cálculos y para que la consulta funcione correctamente,deberá elegirse para todas ellas el descriptor de operación = Dónde, como semuestra en el margen izquierdo de la página siguiente.

Una consulta con los totales para cada provincia

Una consulta de totales para Buenos Aires y San Luis

Una consulta agrupando por provincia / localidad

Suma los registros correspondientes a la misma localidad (en cada provincia) ymuestra uno solo, con el total de cada caso.

2 3 7

mailxmail - Cursos para compartir lo que sabes

Page 238: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 9.18

Una consulta con el total general de ventas

Figura 9.19

Una consulta con los promedios de venta por provincia

2 3 8

mailxmail - Cursos para compartir lo que sabes

Page 239: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 2.20

Una consulta con la cantidad de clientes por provincia

Figura 9.21

 

 

2 3 9

mailxmail - Cursos para compartir lo que sabes

Page 240: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

129. Uso de expresiones en la fila Campo

En la fila Campo podemos colocar cualquiera de los nombres de campos de lastablas que tiene agregadas la consulta (las que aparecen en el sector superior de lacuadrícula). Como vimos en los casos de campos numéricos, podemos colocar allícualquier expresión que tomara a los campos de la tabla como variables, perotambién podemos crear expresiones con campos de tex-to, utilizando funcionesespecíficas para el manejo de cadenas de caracteres. Veamos un ejemplo:

Una consulta por la primera letra del nombre

En este caso, para la columna de nombres, en lugar de incluir el campo Nombre dela tabla de clientes, debemos utilizar una expresión de cadena de caracteres: en elrenglón correspondien-te a Campo, para la primera columna escribiremos laexpresión izq(Nombre),1.

Esta expresión utiliza la función IZQ, y significa tomar sólo un carácter de laizquierda del campo Nombre, por lo que en la primera columna, en lugar de ver elnombre completo del cliente, veremos sólo su primera letra.

De esta manera, al estar el campo ordenado alfabéticamente, la función Agruparpor de la fila de totales acumulará todos los clientes que comiencen con la mismaletra. Por lo demás, com-pletemos los datos como se muestra en la figura 9.22.

Figura 9.22

Pulsemos en la primera columna y en el campo título del cuadro de propiedadesescribamos Clientes con, y a la segunda columna le asignamos, del mismo modo, eltítulo Cantidad.

Ejecutemos la consulta y obtendremos un resultado similar al de la figura 9.23

Figura 9.23

Otra forma de resolver este problema

2 4 0

mailxmail - Cursos para compartir lo que sabes

Page 241: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Obtendremos el mismo resultado con este diseño:

Figura 9.24

No es obligatorio que la columna se refiera a algún campo de una tabla, puede sertambién un texto o un valor fijo, o cualquier expresión numérica o de cadena decaracteres. Como resulta-do se mostrará el mismo valor de la expresión en todoslos registros, lo cual no tendría mucho sentido, pero...

En lugar de MontoFacturado, en la casilla Campo para esa columna escribamos 1 .Esta simple expresión creará el valor 1 en ese campo para todos los registros quemuestre luego la hoja de respuestas dinámicas (ejecución de la consulta).Cambiamos también la expresión Cuen-ta por Suma, es decir que sumaremostodos los unos y esa suma nos dará igualmente como re-sultado la cantidad declientes que contiene cada agrupación. Según nuestras necesidades, po-demoscolocar en la fila Campo cualquier expresión numérica o de cadena de caracteres,que tome o no datos de uno o más campos de las tablas incorporadas a la consulta.

2 4 1

mailxmail - Cursos para compartir lo que sabes

Page 242: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

130. Cómo visualizar todos los registros en unaconsulta de totales

Estando en modo Diseño podemos activar o desactivar la fila de totales pulsando elbotón correspondiente. De esta manera transformaremos una consulta de totales enuna consulta de selección normal, la que nos mostrará todos los registros (deacuerdo con los criterios que tenga definidos). Volviendo a pulsar el mismo icono,obtendremos nuevamente la consulta de totales que nos mostrará los datosagrupados y acumulados.

2 4 2

mailxmail - Cursos para compartir lo que sabes

Page 243: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

131. Qué son las consultas de acción

Hasta ahora, todas las consultas que hemos hecho no modificaron los datos de lastablas y es por eso que se las denomina Consultas de selección. Las consultas deacción, en cambio, eje-cutan alguna acción en forma automática, realizando elproceso que se les haya indicado median-te los correspondientes parámetros, y sonparticularmente adecuadas para hacer cambios simila-res en una gran cantidad deregistros.

Utilizaremos entonces las consultas de acción para crear tablas nuevas, tomandocomo base los campos de otras tablas o modificando tablas ya existentes.

Las consultas de acción utilizan los mismos criterios que las de selección para laclasifica-ción, distribución, y selección de los datos. La principal diferencia quepresenta este nuevo tipo de consultas radica en que ejecutan los cambios o generanlos nuevos registros por sí solas.

Figura 9.25

Cuáles son los tipos de consulta de acción

Si, estando en modo diseño, pulsamos el icono de abrir el botón Tipo de consulta,se abrirá una lista, tal como lo muestra la figura 9.25.

El primer icono de la lista representa a las consultas de selección que ya estudiamos.

Consulta de tablas de referencias cruzadas

Genera una tabla de doble entrada a partir de los datos de una tabla o consulta.

Consulta de creación de tabla

Crea una nueva tabla a partir de datos de otra tabla.

Consulta de actualización

Modifica datos de un grupo de registros.

Consulta de datos anexados o consulta de agregar

Agrega a una tabla registros de otra tabla.

Consulta de eliminación

Elimina los registros existentes en tablas según los criterios especificados

También aparecerá un menú similar al de la figura 9.25 si elegimos la opción Tipode consulta en el menú emergente de la figura 9.12.

2 4 3

mailxmail - Cursos para compartir lo que sabes

Page 244: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

de consulta en el menú emergente de la figura 9.12.

2 4 4

mailxmail - Cursos para compartir lo que sabes

Page 245: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

132. Cómo crear una consulta de acción

Para crear una consulta de acción crearemos primero una consulta de selección y,una vez en la cuadrícula de diseño, abriremos la lista de tipos de consulta, como semostrara oportuna-mente, y pulsaremos el botón correspondiente a la consulta deacción elegida.

Podemos también tomar una consulta de selección existente, en el modo diseño, ypulsar uno de los botones que mostramos para transformarla en una consulta deacción, lo que no impli-ca modificar la consulta original, ya que debido a quecambiamos el tipo de consulta, en el mo-mento de grabar se nos pedirá que leasignemos un nuevo nombre, creándose así un nuevo obje-to.

Cómo utilizar el botón nuevo objeto

Ya vimos que dentro del cuadro de diálogo Base de datos dispo-nemos de unbotón Nuevo para crear nuevos objetos del tipo correspon-diente al de la solapaactiva.

En la barra de herramientas disponemos de un botón con el mismo propósito;pulsando el botón Nuevo objeto se desplegará el menú de la figura 9.26.

Figura 9.26

Consultas de creación de tablas

Estas consultas son las más parecidas a las de selección; veamos cómo se crean:

Figura 9.26: Menú para la creación de nuevos obje-tos

1. Pulsemos el botón Nuevo objeto y del menú de la figura 9.26 seleccionemos laopción Consul-ta.

2. Aparecerá el cuadro Nueva consulta en donde se mostrará seleccionada laopción Vista di-seño; pulsemos Aceptar.

3. Si el cuadro Mostrar tablas no se encontrara presente, pulsemos el botóncorrespondiente, seleccionemos Clientes, pulsemos Agregar y cerremos estecuadro pulsando Cerrar.

4. Pulsemos sobre el campo CODCLI, luego pulsemos la tecla y manteniéndolapresionada, pulsemos sobre el último campo. De este modo quedarán seleccionados

2 4 5

mailxmail - Cursos para compartir lo que sabes

Page 246: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

presionada, pulsemos sobre el último campo. De este modo quedarán seleccionadostodos los campos.

5. Pulsemos sobre la selección y, sin soltar el botón del mouse, arrastremos sobre laprimera columna de la cuadrícula. Habremos agregado todos los campos de la tablaa la nueva consul-ta.

6. Pulsemos en la casilla Criterio de la columna NOMBRE y escribamos:

Como ([¿Qué clientes desea copiar? (x*): ])

Lo que hicimos hasta ahora no nos es desconocido, ya que se trata de una consultade pa-rámetros.

7. Probemos esta consulta y verifiquemos que funcione correctamente.

8. Volvamos al modo Diseño.

9. Pulsemos el botón Tipo de consulta y del menú elijamos Consulta de creación detabla.

Aparecerá un cuadro de diálogo Crear tabla pidiéndonos el nombre de la tabla quegenera-remos con los datos de la consulta (figura 9.27).

Figura 9.27

10. Escribamos Borrador de clientes y pulsemos Aceptar.

11. Ejecutemos la consulta y aparecerá la ventana de parámetros de la figura 9.28.

Figura 9.28

12. Escribamos, como se muestra en la figura: p* y pulsemos Aceptar. Estecomando creará una nueva tabla: Borrador de clientes, con los datos seleccionadospor la clave p*, por lo que pre-viamente presentará el cartel de aviso de la figura9.29.

2 4 6

mailxmail - Cursos para compartir lo que sabes

Page 247: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 9.29

13. Guardemos esta consulta asignándole el nombre Selecciona por primera letra.

Si ahora pasamos al cuadro Base de datos y pulsamos la solapa Tablas, podremosabrir la tabla que acabamos de crear.

Si el resultado no nos conformara, haremos las correcciones o ajustes necesarios yvolve-remos a ejecutarla, para sobrescribir la tabla Borrador de clientes con losnuevos datos.

En esta segunda ejecución ya no será necesario indicar el nombre de la tabla;tomará el mismo nombre que se nos pidió la primera vez.

Si quisiéramos cambiar el nombre asignado, deberíamos acceder a la consulta enmodo Di-seño, y en el cuadro de propiedades, cambiar el contenido del campo Tabla de destinoTabla de destino por el nuevo nombre.

Qué es una consulta de datos anexados (añadir datos)

Este otro tipo de consulta, como la anterior, copia datos pero en lugar de borrar latabla y crear una nueva, agrega los datos a una tabla existente.

Los campos que se copien deben tener el mismo tipo de dato en las tablas de origeny des-tino.

Para crear este tipo de consulta, elaboraremos primeramente una consulta deselección in-cluyendo los campos de la tabla de origen que queremos copiar.Podemos también aplicar condi-ciones de selección si lo que buscamos es copiarsólo determinados registros.

Luego, la transformaremos en consulta de Datos anexados (pulsando el botóncorrespon-diente); nos pedirá el nombre de la tabla de destino y, una vez asignado,aparecerá la nueva fila Anexar a:

Si en la tabla de destino se encuentran columnas cuyos nombres y tipo de datoscoinciden con los de la tabla de origen, éstos se asignarán automáticamente.

Esta asignación automática supone que campos de igual nombre contienen el mismodato, aunque podría no ser así; por ejemplo, cuando en la tabla de origen existieraun campo llamado RR (por Provincia) y en la de destino otro de igual nombre, peroreferido al código del Proveedor.

Es muy sencillo asignar o modificar las asignaciones manualmente, abriremos lalista de la fila Anexar a:, de la columna correspondiente; allí aparecerán losnombres de todos los campos de la tabla destino para elegir el que corresponda.

Así, uno a uno asignaremos los campos que recibirán los datos en la tabla destino.

2 4 7

mailxmail - Cursos para compartir lo que sabes

Page 248: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

En el caso del ejercicio, por tratarse ambas tablas (origen y destino) de copias de unmismo original, al seleccionar la tabla de destino, los campos homónimos (todos) seasignarán automáti-camente.

Creemos una consulta de datos anexados

La ejecución de la consulta anterior creó una copia de la tabla original con unsubgrupo de sus registros (aquellos cuyo nombre comienza con la letra P). Ahora,crearemos una nueva con-sulta, idéntica a la anterior, pero del tipo de datosanexados, la cual agregará a Borrador de clien-tes los registros agrupados según laletra inicial que se solicite. Agregaremos así los registros co-menzados con la letra"P" y en una posterior ejecución los de la letra "C".

Copiemos la consulta anterior (de creación) para transformarla luego en unaconsulta de agregar datos.

1. Accedamos a la ventana de Consultas pulsando la solapa correspondiente delcuadro Base de datos.

2. Pulsemos Control y mientras mantenemos pulsada esta tecla pulsemos sobre laúltima consulta creada: Selecciona por primera letra, arrastremos y soltemosdentro del mismo cuadro base de dato. Obtendremos una nueva consulta, copia dela anterior, llamada Copia de Selecciona por primera letra.

3. Estando seleccionada esta última volvamos a pulsar sobre su nombre; esteaparecerá recua-drado.

4. Escribamos un nombre en reemplazo de éste: Añade por primera letra.

5. En el cuadro de diálogo Base de datos pulsemos con el botón derecho del mousesobre la nueva consulta y del menú emergente seleccionemos la opción Vista Diseño.

6. Estando en la cuadrícula de diseño abramos la lista de Tipos de consulta y delmenú de la figura 9.25 seleccionemos Consulta de datos anexados. Aparecerá elcuadro de la figura 9.30 para que indiquemos a qué tabla hemos de agregar losdatos.

Figura 9.30

7. Pulsemos Aceptar y volveremos a la cuadrícula.

8. Ejecutemos esta consulta de añadir. Mediante una operatoria similar a la queempleáramos con la consulta anterior, aparecerá un cuadro como el de la figura9.28 en donde especificare-mos L* para que se agreguen ahora los clientes quecomienzan con L. Aparecerá un cartel que nos avisa de la operación que estamospor hacer.

2 4 8

mailxmail - Cursos para compartir lo que sabes

Page 249: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

9. Pulsemos Sí y la tabla habrá incorporado los nuevos registros.

10. Pulsemos Guardar.

11. Cerremos el cuadro de diseño de la consulta y luego, en el cuadro de diálogo base de datos, pulsemos doble clic sobre la nueva consulta, para ejecutarla.

12. De la misma forma que en los casos anteriores, agreguemos ahora los clientesque comienzan con G (G*).

13. Abramos la tabla Borrador de clientes (actualizada) y verifiquemos que se hanagregado los grupos de registros solicitados.

Cómo crear consultas de actualización

Este tipo de consultas permite modificar uno o más campos de la tabla, eligiéndoselos re-gistros con los criterios de selección que ya conocemos, y aplicándose a lascolumnas de cambio expresiones que nos son también conocidas, para modificarsus datos. Este caso es distinto de los anteriores, en los que había una tabla deentrada y una de salida. Aquí la consulta trabajará sobre una sola tabla.

Utilizaremos esta consulta para ajustar el campo importe de los registrosseleccionados, de acuerdo a un coeficiente determinado.

1. Creemos una copia de la última consulta y asignémosle el nombre Actualizaimportes.

2. Pulsemos el botón Diseño en el cuadro Base de datos y ya en la cuadrículaeliminemos todas las columnas, excepto las que corresponden a los campos Nombre y Montofacturado.

En este tipo de consultas pueden agregarse sólo aquellos campos que seannecesarios, y en este caso necesitaremos el campo Nombre para seleccionar losregistros, y el campo Monto-facturado para ajustar el importe contenido en elmismo.

En la fila de criterios de la columna Nombre ya tenemos el criterio de selecciónestablecido, por lo tanto, la dejaremos como está.

Debe quedar claro que no es necesario que este tipo de consulta trabaje conparámetros (criterios con [ ]); tenemos total libertad para aplicar todo lo queconocemos en cuanto a criterios para la selección de los registros.

3. Del mismo modo que lo hicimos anteriormente, cambiemos el tipo de consultaseleccionando esta vez (figura 9.25) la opción Consulta de actualización.

Aparecerá una nueva fila: Actualizar a: en la cual debemos indicar, medianteexpresiones qué operaciones queremos realizar para cada columna de la tabla.

Si no hubiéramos eliminado las columnas que no se utilizan, éstas no actuarán sidejamos su fila Actualizar a: en blanco.

En estas expresiones podemos referirnos a campos de la tabla asignada o decualquiera que se encuentre relacionada con la misma (y, por supuesto, incorporadaen la parte superior de la cuadrícula de diseño).

Toda referencia a campos debe encerrarse entre corchetes. Veremos ahora un

2 4 9

mailxmail - Cursos para compartir lo que sabes

Page 250: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

ejemplo sencillo.

4. En la casilla de la fila Actualizar a: correspondiente a la columna MontofacturadoMontofacturado, ingrese-mos la siguiente expresión: [Montofacturado]*1,15. Lacuadrícula tendrá ahora el aspecto de la figura 9.31.

Figura 9.31

Si el parámetro Separador de decimales de Windows estuviera en modo punto {.}utilicemos el punto en lugar de la coma en la fórmula de Montofacturado.

Esta expresión multiplicará el monto facturado por 1,15, es decir que le aplicará unaumento del 15%, pero recordemos que al ejecutar la consulta podremos seleccionara qué clientes aplicar ese cálculo.

De esta forma, con consultas de este tipo, podremos aplicar cambios a conjuntos deregis-tros de una tabla.

5. Ejecutemos la consulta, seleccionemos algún grupo de registros (C*, Cas*, etc.) ycomprobe-mos que sólo a éstos se les ha aplicado el cambio.

6. Guardemos esta consulta.

También podemos colocar parámetros en Actualizar a:

En lugar de la expresión [Montofacturado]*1,15 podemos emplear esta otra:

[Montofacturado]*[Ingrese el coeficiente]

y de esta forma, podremos también decidir al momento de ejecutar la consulta cuálserá el coefi-ciente que aplicaremos.

Cómo crear consultas de eliminación

Una consulta de este tipo permite eliminar registros en forma selectiva. Utilizandolos crite-rios podremos elegir cuáles registros eliminaremos y cuáles no.

Como en todos los casos que vimos, aquí también previamente podemos probarcomo con-sulta de selección, y así exhibir en forma de hoja de respuestas dinámicasy revisar los registros que luego eliminaremos de la tabla.

En este tipo de consultas sólo es obligatorio incluir los campos que nos serviránpara identi-ficar los registros que borraremos.

Estableceremos los criterios de selección necesarios, revisaremos esos datos en lapantalla como consulta de selección y, por último, la transformaremos en consulta

2 5 0

mailxmail - Cursos para compartir lo que sabes

Page 251: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

de eliminación, para finalmente ejecutarla.

1. Copiemos la consulta anterior, asignémosle como nombre elimina según clave yquitémosle luego el campo Montofacturado, ya que no lo necesitamos.

2. Pasemos a Diseño; en Criterios, podemos dejar la selección de parámetros de laconsulta anterior o bien colocar en su lugar cualquier criterio de selección. Sólocambiemos en la pre-gunta que está entre corchetes la palabra copiar por eliminar.

3. Transformemos len consulta de eliminación. La cuadrícula tomará el aspecto de lafigura 9.32.

Figura 9.32

4. Ejecutemos esta consulta de eliminación; aparecerá la ventana de la figura 9.33.

Figura 9.33

 

2 5 1

mailxmail - Cursos para compartir lo que sabes

Page 252: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

133. Cómo crear consultas de tablas de referenciascruzadas

Este tipo de consulta nos muestra la información resumida en un formatocompacto, similar a una hoja de datos. De esta manera podemos presentar una grancantidad de información pro-veniente de una tabla o de otra consulta, en unespacio reducido.

Tomando la consulta ConsClientes como dato de entrada, crearemos (figura 9.34)una ta-bla de doble entrada que nos muestre la siguiente información.

Figura 9.34

Utilizaremos en este caso el asistente para consultas de referencias cruzadas (antesde co-menzar con el ejercicio, debemos abrir en modo Diseño la consulta ConsClientes y eliminar todos los criterios que se encuentren establecidos en suscampos, guardando los cambios al cerrarla):

1. En el cuadro Base de datos pulsemos el botón Consultas y luego el botón Nuevo,para acce-der así a la lista de asistentes de la figura 9.35.

Figura 9.35

2. En este cuadro seleccionaremos la opción Asistente para consultas de tabla dereferencia cruzadas y pulsemos Aceptar. Aparecerá el cuadro de selección de losdatos de entrada (fi-gura 9.36).

2 5 2

mailxmail - Cursos para compartir lo que sabes

Page 253: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 9.36

Este cuadro nos permite seleccionar cualquier tabla o consulta de la base de datosactiva. Nos explica también que si necesitáramos datos de más de una tabla,debemos crear previamente una consulta que las incluya (como por ejemplo ConsClientesConsClientes) y luego emplear esta consulta como entrada.

3. En el recuadro Ver se encuentra normalmente preseleccionada la opción Tablas,por lo que en el cuadro de selección se muestran todas las tablas de la base dedatos. Pulsemos el botón Consultas y seleccionemos ConsClientes.

4. Pulsemos el botón Siguiente. El próximo cuadro de este asistente (figura 9.37)nos pregunta qué dato se va a emplear como nombre de las filas.

Figura 9.37

2 5 3

mailxmail - Cursos para compartir lo que sabes

Page 254: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

Figura 9.38

5. Según el esquema propuesto (figura 9.36) debemos seleccionar el nombre de losvendedores, por lo tanto, seleccionemos en la lista de la izquierda el campo NomVendNomVend y luego pulsemos el botón Incluir para colocarlo en el panel derecho.

6. Pulsemos el botón Siguiente. Aparecerá el próximo cuadro del asistente (figura9.38). Aquí debemos seleccionar cuál será el campo que servirá comoencabezamiento de las columnas de esta nueva consulta de referencias cruzadas.

7. Seleccionemos el campo CodProvin y pulsemos Siguiente. Aparecerá el cuadro dela figura 9.39.

Figura 9.39

En este cuadro debemos indicar cuál es el campo que contiene el dato que es objetode la consulta (MontoFacturado), y cuál será la operación (Suma) que se hará con elgrupo de registros que tengan la misma provincia y el mismo vendedor.

Inicialmente, el cuadro mostrará una expresión propuesta; Access tomó el primercampo de la izquierda (Nombre) y le aplicó la primera operación de la derecha(Cuenta), generando así la expresión Cuenta(Nombre) pero no es eso lo quequeremos hacer.

8. Seleccionemos MontoFacturado en la lista izquierda y Suma en la derecha, con loque se generará la expresión Suma(MontoFacturado) tal como se muestra en la

2 5 4

mailxmail - Cursos para compartir lo que sabes

Page 255: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

figura 9.39. Luego pulsemos Siguiente, aparecerá la pantalla final, en la cualdaremos un nombre a la consulta para así grabarla (figura 9.40).

Figura 9.40

El nombre propuesto es muy largo aunque indica claramente que se trata de unaconsulta de referencias cruzadas que toma como base a la consulta ConsClientes.

9. En lugar del nombre propuesto escribamos Ventas por Vendedor y Provincia ypulsemos Terminar.

Concluido el proceso de generación la consulta quedará grabada y luego seráejecutada pa-ra mostrarnos un resultado similar al de la figura 9.41.

Figura 9.41

Si pulsamos el botón Diseño, veremos que el diseño de este tipo de consultas(figura 9.42) incorpora la fila Tab Ref Cruz. Además, hace uso de la fila de Totales,en la que se encuentra especificado el parámetro Agrupar por en los campos deselección, el parámetro Suma en el campo que se debe acumular y una nuevacolumna (la segunda) para los totales de cada vende-dor.

Si fuera necesario, podríamos agregar criterios de selección, por ejemplo paraexceptuar a algunos clientes de la estadística.

También podríamos crear esta tabla mediante un procedimiento manual, de manerasimilar a la que utilizamos en las consultas anteriores.

Al pulsar el botón Consulta de tabla de referencias cruzadas (recordemos que elmismo se encuentra en el menú de la figura 9.25) para definir el tipo de consultaaparecerá la fila correspon-diente Tab Ref Cruz, en donde asignaremos lasfunciones de cada una de las columnas, tal como se muestra en la figura.

En caso de definir este tipo de consultas en modo diseño, debemos crearmanualmente la columna de Totales generales que mencionábamos (la primeracolumna de importes que se muestra en la figura 9.42). Para ello, agregaremos el

2 5 5

mailxmail - Cursos para compartir lo que sabes

Page 256: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

campo MontoFacturado (arrastrándolo a una columna libre) y le asignaremos lafunción Suma en la fila Total, y Encabezado de fila en la fila Tab Ref Cruz.

Podríamos cambiar el nombre de la columna colocando uno más adecuado, comopor ejemplo, Totales del Vendedor. Esto también podemos hacerlo en la consultarecién creada con el asistente.

Figura 9.42

2 5 6

mailxmail - Cursos para compartir lo que sabes

Page 257: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

134. Consultas de buscar datos duplicados

Utilizando la opción Obtener datos externos, del menú ARCHIVO, podemosvincular o in-corporar en Access información de otros sistemas de base de datos,para aplicar sobre la misma todo lo que hemos aprendido respecto de hojasdinámicas y consultas especiales de eliminación, actualización, etc. Esto, agregado alas posibilidades de combinación que nos ofrecen las consul-tas de datos anexados,nos permitirán utilizar a Access como una excelente herramienta de con-versión,análisis, mantenimiento y actualización de datos.

En los casos en que recopilemos datos de orígenes diversos se podrá presentar elinconve-niente de la información duplicada. Puede ocurrir que al reunir los datosencontremos registros duplicados o bien registros que han sido ingresados más deuna vez por distintos operadores, con pequeñas diferencias entre ellos.

Estas inconsistencias se detectan fácilmente creando una Consulta de buscar datosdu-plicados.

Las consultas de este tipo son creadas por un asistente, por lo que no abundaremosaquí en detalles, dedicándonos en cambio al aspecto conceptual del tema.

Como ocurre en la mayoría de los casos, podemos tomar como origen de los datoscual-quier tabla o consulta o, lo que es lo mismo, podemos encontrar duplicados encualquier hoja di-námica.

En el cuadro de la figura 9.35 seleccionaremos Asistente para búsqueda deduplicados y pulsaremos Aceptar.

Esto pondrá en funcionamiento el asistente correspondiente que nos pediráprimeramente que seleccionemos la tabla o consulta en la que deseamos buscarduplicados. Una vez definido el origen de los datos, debemos elegir cuáles son loscampos en los que sospechamos que existe información duplicada.

Este proceso no trabaja por claves, por lo tanto, podremos elegir aquí uno, dos omás campos cualesquiera de la hoja dinámica. Por ejemplo Localidad, Código deVendedor y Observaciones.

Debemos entender que si la consulta sólo nos mostrara aquellos datos que estánrepetidos (los campos que seleccionamos hasta ahora) la misma nos servirá comoun diagnóstico del pro-blema, ya que nos mostrará series de datos todos iguales;sólo sabremos que hay datos duplica-dos y cuántas veces se repiten, aunque nopodremos identificar el origen de cada uno de ellos.

Es por eso que a continuación (cuando pulsamos el botón Siguiente) se nosmostrará una lista con aquellos campos que aún no hemos seleccionado; porejemplo, si existieran pedidos du-plicados, seleccionaremos en la ventana anteriorcomo campo de dato duplicado, el número de pedido y en esta ventana, comocampo de identificación, el código de vendedor. De esta forma, ante un pedidoduplicado (o triplicado, etc.) podremos saber quiénes fueron los vendedores que loingresaron para así determinar cuál de ellos es válido y cuál no lo es.

Seleccionaremos entonces, aquellos campos que suponemos contienen lainformación que nos permitirá establecer la diferencia entre los repetidos,pulsaremos Siguiente, para llegar a la pantalla final en la que pulsaremos Terminar,

2 5 7

mailxmail - Cursos para compartir lo que sabes

Page 258: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

donde podremos observar el resultado con la infor-mación duplicada junto con lano duplicada.

En el caso de que esta consulta nos muestre mucha información duplicada en todoslos campos, podemos crear nuevamente la consulta, pero seleccionando todos loscampos de la tabla como de duplicado y así saber, por la menor cantidad deregistros obtenidos esta segunda vez, en cuántos casos disponemos de informaciónidentificatoria y en cuántos no.

2 5 8

mailxmail - Cursos para compartir lo que sabes

Page 259: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

135. Consulta de buscar no-coincidentes

En este tipo de consultas intervienen dos tablas y nos permiten hallar los casos dedatos no coincidentes entre ambas.

Cuando trabajamos con relaciones, vimos que las relaciones estrictas sólo muestranaque-llos casos en que hay coincidencia. Las relaciones no estrictas (o de tipo 2 ó 3)nos mostrarán en cambio todos los casos, pero en aquellos en que no haycoincidencia, los datos provenientes de la tabla relacionada estarán vacíos.

Por lo tanto, para ver los datos de la tabla "A", que no se encuentran en unasegunda tabla "B", debemos crear una consulta que incluya a las dos tablas, con lassiguientes características:

a. Una relación no estricta (tipo 2) de "A" hacia "B" (sabemos que este tipo derelación nos mostrará tanto los casos de coincidencia como los de no-coincidencia).

b. Incluir, además de los datos necesarios del registro de "A", el campo de destinode la rela-ción. Este, por provenir de la tabla relacionada "B", se encontrará vacío(nulo) en aquellos casos en que no fuera encontrada la clave de destino.

c. En la fila Criterio de ese campo colocar la palabra reservada Es nulo, para indicarque sólo se muestren los registros en los que ese campo contiene un valor nulo, quese corresponde-rán justamente con aquellos casos en los que no hubo coincidencia.

d. No tiene mayor sentido mostrar un campo en el que sabemos (según el parámetroque hemos colocado en Criterio) que no hay información, por lo tanto, para esacolumna inhabili-taremos la casilla Mostrar de la cuadrícula.

Cuando ejecutemos esta consulta, sólo aparecerán aquellos registros de "A" cuyocampo de relación no encontró el correspondiente en "B".

Podemos crear este tipo de consultas con el asistente que se muestra en últimotérmino en el cuadro de la figura 9.35, aunque, habiendo comprendido losconceptos explicados arriba, segu-ramente nos resultará más sencillo crear laconsulta manualmente.

2 5 9

mailxmail - Cursos para compartir lo que sabes

Page 260: Microsoft Access 2000 - mailxmail.comimagenes.mailxmail.com/cursos/pdf/2/microsoft-access-2000-7042... · Pero lo que resulta realmente importante destacar en esta breve introducción

136. Cómo utilizar Access como complemento deotros sistemas

Por último, diremos que aplicando las capacidades de hoja dinámica que vimos,podremos crear consultas, informes y formularios que trabajen sobre informaciónelaborada por otros siste-mas de bases de datos, a la que se podrá acceder (en casode que utilicemos vinculación), simul-táneamente con el sistema administrativo quelas utiliza, constituyendo así verdaderas aplicacio-nes con las que, por ejemplo,analizaremos información de clientes y vendedores en una tabla de referenciascruzadas, buscaremos pedidos duplicados, crearemos información estadísticautili-zando consultas de totales, etc., constituyendo un interesante complemento deestadística y con-trol para cualquier sistema de producción.

2 6 0

mailxmail - Cursos para compartir lo que sabes