Sistemas Informacionales Tanto Access como Excel, permiten generar informes a partir de los datos almacenados (en forma de tablas) o importados de fuentes externas (como veremos el complemento Power Pivot de Excel es el que más formatos admite). Sin embargo, dada la importancia de los datos (permanentes) para una organización, éstos quedarán almacenados (preferiblemente) en Access. Excel contendrá sólo datos que no sean relevantes para la organización. O, si se quiere, aquéllos que son transitorios y que utilizamos para hacer consultas o para presentarlos en formato de informes. También pueden considerarse a Access y Excel, un tipo de sistemas transaccionales, ya que podemos realizar con ellos tareas administrativas repetitivas como la gestión de nóminas, la facturación a clientes, etc. En este sentido dispondremos de formularios preparados específicamente. Las bases de datos, por otro lado, son el almacén de datos que utilizan los sistemas Informacionales. -2-
Consultas con Access Access contiene el entorno de consultas QBE (Query By Example) bastante fácil y potente de usar. En esta sección veremos algunos ejemplos desarrollados
Vistas externas en Access Las vistas externas de Access se corresponden con los formularios que toman sus datos de consultas. Supongamos que un directivo del departamento de ventas pide que hagamos una factura donde aparezcan los datos de un cliente. Lo mejor es utilizar una hoja de cálculo y los datos de los clientes (nombre, dirección, compras realizadas, etc.), se importarán de las vistas almacenadas en Access. Aquí encontramos un inconveniente: Excel no facilita conexiones con los formularios, aunque sí con tablas y consultas. Por lo tanto, en el caso práctico que hemos planteado tenemos dos opciones: Importar datos directamente de las tablas o importar datos a partir de consultas elaboradas (con lo que podremos contar, además, de datos elaborados o campos derivados como el número total de compras del cliente entre dos fechas determinadas, etc.). Esta segunda opción es la más adecuada y la que utilizaremos (las tablas son las vistas internas o lógicas de los datos). -4-
Consultas en Access Una base de datos se puede definir como una colección de datos que se almacenan y recuperan de forma eficiente (es una definición muy resumida). Las consultas son la forma usual de recuperar los datos almacenados en una base de datos. De alguna forma, entre otras cuestiones importantes, esto da sentido a una base de datos. En general, una consulta afecta a una o más tablas interrelacionadas. El resultado es una tabla derivada que sólo estará en memoria volátil, a menos que la hagamos persistente con el botón Crear Tabla de la cinta de opciones de Herramientas de consulta. (el ejemplo está tomado de pequeñaorganización.accdb) -5-
Consultas en Access Al crear una consulta, es posible: Seleccionar campos. No es necesario incluir todos los campos. Seleccionar registros. Se visualizan sólo los registros que cumplen una condición (o restricción). Ordenar registros (por distintos criterios). Crear campos calculados. Contienen el resultado de un cálculo (en la transparencia anterior se calcula el número de artículos que compra cada empleado). Usar dicha consulta como origen de los datos para formularios, informes y otras consultas. Modificar datos de tablas: son las llamadas consultas de acciones, que permiten actualizar, eliminar o añadir grupos de registros. -6-
Consultas en Access Para crear una consulta nos vamos a la ficha Crear, y en el grupo Consultas podemos elegir el Asistente o el Diseño de una consulta. El Asistente es muy utilizado para crear consultas, ya que es una forma muy cómoda de añadir las tablas que intervienen en la misma, y justo los campos que nos interesan. Nosotros utilizaremos la vista Diseño de consultas. Esta es la forma preferida por expertos: mucho más flexible pero más compleja. -7-
Consultas en Access Supongamos que con la base de datos Neptuno (es la plantilla Northwind 2007) nos preguntarnos por los precios por unidad de cada producto. Haciendo clic en Diseño de consulta: -8-
Consultas en Access Escogeremos la tabla (productos) : -9-
Consultas en Access A continuación deberemos escoger en la tabla los campos que queremos que aparezcan en la consulta (tabla derivada): Nombre del producto y Costo estándar. Hay dos formas de añadir los campos: haciendo clic sobre el campo y, sin soltar, arrastrarlo hasta la celda del panel de consulta, o, desplegar la pestaña en dicha celda y escoger el campo correspondiente (* significa que se muestran todos los campos). Las celdas referidas están en el segundo panel horizontal de los dos que se muestran (donde se agregan las tablas y donde se agregan los campos). Con la casilla de verificación podemos escoger entre mostrar o no el valor del campo (útil cuando usamos dicho campo pero no queremos mostrar su valor). -10-
Consultas en Access Si hacemos clic sobre el botón Ejecutar consulta obtendremos un listado de la misma (una forma elemental de informe): Para cerrarla dele al aspa que hay en la zona más gris de la imagen. -11-
Consultas con totales en Access Se trata de agrupar registros según los valores de ciertos campos y hacer cálculos para cada grupo resultante (como se hace con la fila de totales de las tablas en Excel). Las funciones más usuales son: Suma: Total de los valores de un campo. Promedio: Promedio de valores de un campo Min: El menor de un campo Max: El mayor de un campo Cuenta: Numero de valores de un campo (sin contar nulos) Expresión: se utiliza para crear un campo calculado. Donde: para incluir condiciones. -12-
Consultas con totales en Access Deberemos hacer clic en Totales del grupo Mostrar u ocultar de la ficha Diseño (vista Diseño de la consulta). Aparece el campo total en el panel inferior. Que nos dará el número de pedidos (cuenta id pedido) que ha hecho cada cliente (agrupado por apellidos y nombre del cliente). Guardar como Consulta1 (cuidado al guardar la consulta). -13-
Consultas con totales en Access Es interesante apuntar aquí, que entre las distintas vistas que ofrece Access de las consultas está la vista SQL. SQL (Standar Query Language) permite escribir expresiones en la ventana SQL de Access que se traducen en consultas QBE y viceversa. Así por ejemplo la anterior consulta se expresaría en SQL como: SELECT Clientes.Nombre, Clientes.Apellidos, Count(Pedidos.[Id de pedido]) AS [CuentaDeId de pedido] FROM Clientes RIGHT JOIN Pedidos ON Clientes.Id = Pedidos.[Id de cliente] GROUP BY Clientes.Nombre, Clientes.Apellidos; Que se traduce e agrupar por nombre y apellidos de los clientes y para cada grupo contar el número de pedidos. Para ello habremos de unir (por la derecha) las tablas clientes y pedidos utilizando el campo común cliente (Id). -14-
Informes en Access Un informe es un método de presentar información en forma de documento impreso (o pdf). La información se puede organizar según diversos criterios y formato. Para crear la conexión entre un informe y su origen de datos deben utilizarse controles. Los controles pueden ser: Cuadrados de texto. Para mostrar nombres y números. Marcos. Para mostrar imágenes gráficos. Etiquetas. Para mostrar títulos. Líneas y rectángulos gráficos. Para organizar visualmente los datos. -15-
Informes en Access La creación de informes es similar a la creación de formularios. Con el Asistentes para Informes. Se seleccionan las columnas de las tablas o consultas a visualizar. Los asistentes crean un informe básico que puede ser modificado. Sin asistente. Aparece un informe en blanco y se van incluyendo controles. Se accede a las dos posibilidades a través de la cinta de opciones de la ficha Crear. Los controles pueden ser dependientes, independientes y calculados. Controles dependientes. Toman su información de valores de campos existentes en la base de datos. Estos valores pueden ser textos, fechas, números, imágenes o gráficos. -16-
Informes en Access Ej. un cuadro de texto que toma sus valores del campo Compañía (de la tabla Clientes de Neptuno) estará conectado a ese campo. Controles independientes. Presentan información, líneas, rectángulos e imágenes, que no son de la base de datos. Ej. literales (títulos). Controles calculados. Su origen es una expresión que puede usar datos de los campos de una tabla. Una expresión es una combinación de operadores (=,+..), nombres de campos, nombres de controles, funciones y constantes. Para ello en la consulta escribiremos en la celda del campo [precio aumentado]: =[Costo estándar]*1.10, por ejemplo. Esto hará que se muestre un campo nuevo llamado precio aumentado y cuyo contenido se corresponderá con la expresión. -17-
Informes en Access Como ejercicio elaborar un informe a partir de Consulta1 (utilice el asistente para informes): -18-