1230 - Uso Conjunto Calc y Base (2)

269
Presentación del curso INTRODUCCIÓN En estos momentos el conocimiento de un paquete ofimático se ha convertido en una necesidad para las tareas normales de una oficina. La ofimática está introducida en todos los ámbitos de la empresa y particularmente en las administraciones públicas. Como empleados públicos se nos exige un conocimiento más o menos aplio de los programas de una suite ofimática. Hasta ahora el paquete ofimático Office de Microsoft era un estándar de facto, para las tareas administrativas de una oficina. Pero el hecho de que sea un producto de una empesa particular que precisa del pago de importantes cantidades en licencias, ha hecho que se busquen alternativas más economicas y que usen formatos de datos libres. OpenOffice.org es un paquete ofimatico de código abierto que no precisa de la compra del producto ni del pago de licencias. Simplemente nos conectamos a la página de OpenOffice en internet y lo podemos descargar e instalar en nuestro ordenador. OpenOffice.org es un proyecto con varios años en el mercado y ofrece compatibilidad de formatos con Office de Microsoft lo cual hace que se plantee como alternativa fiable para una suite ofimática en el ámbito de las administraciones públicas En algunos centros de la Generalitat Valenciana se ha instalado OpenOffice.org como suite por defecto en los puestos de trabajo. OpenOffice.org se compone de los siguientes programas:

description

calculo base

Transcript of 1230 - Uso Conjunto Calc y Base (2)

Page 1: 1230 - Uso Conjunto Calc y Base (2)

Presentación del curso

INTRODUCCIÓN

En estos momentos el conocimiento de un paquete ofimático se ha convertido en una necesidad para las tareas normales de una oficina. La ofimática está introducida en todos los ámbitos de la empresa y particularmente en las administraciones públicas. Como empleados públicos se nos exige un conocimiento más o menos aplio de los programas de una suite ofimática.

Hasta ahora el paquete ofimático Office de Microsoft era un estándar de facto, para las tareas administrativas de una oficina. Pero el hecho de que sea un producto de una empesa particular que precisa del pago de importantes cantidades en licencias, ha hecho que se busquen alternativas más economicas y que usen formatos de datos libres.

OpenOffice.org es un paquete ofimatico de código abierto que no precisa de la compra del producto ni del pago de licencias. Simplemente nos conectamos a la página de OpenOffice en internet y lo podemos descargar e instalar en nuestro ordenador.

OpenOffice.org es un proyecto con varios años en el mercado y ofrece compatibilidad de formatos con Office de Microsoft lo cual hace que se plantee como alternativa fiable para una suite ofimática en el ámbito de las administraciones públicas

En algunos centros de la Generalitat Valenciana se ha instalado OpenOffice.org como suite por defecto en los puestos de trabajo.

OpenOffice.org se compone de los siguientes programas:

Page 2: 1230 - Uso Conjunto Calc y Base (2)

WRITER: Procesador de textos CALC: Hoja de cálculo IMPRES: Presentaciones tipo powerpoint BASE: Bases de datos ETC...

Todos nosotros conocemos (al menos al nivel de usuario inicial) varios de estos programas (o al menos su equivalente de Office de Microsoft). Lo que tal vez nos sea más desconocido es la posibilidad de usar los programas que componen OpenOffice.org de forma conjunta, es decir hacerlos interactuar de forma que veamos incrementado el rendimiento en nuestras tareas de ofimática.

En este curso nos vamos a centrar en 2 módulos de OpenOffice.org. En concreto el gestor de base de datos Base y el programa de hoja de cálculo Calc.

En nuestro trabajo diario accedemos a distintos tipos de programas y bases de datos, en los cuales distinguimos entre 3 tipos:

Bases de datos personales, o del departamento o negociado. Las hemos creado nosotros y tenemos acceso a los datos y posibilidad de modificar la estructura de las tablas y relaciones.

Bases de datos departamentales. Se trata de programas a los que tenemos acceso como usuarios para realizar las funciones de nuestro puesto de trabajo, pero a las que no tenemos acceso a las tablas ni a los datos.

Bases de datos corporativas. Son bases de datos generales de toda una Consellería o incluso de toda la generalitat. Normalmente accedemos a ellas a través de una página web. Ejemplos: El sistema SIP en la Consellería de Sanitat, la nómina Signo, etc.

En el curso vamos a aprender usar Base como un medio de acceder a estas bases de datos , de forma que podamos disponer de los datos y crearnos nuestros listados personalizados, nuestras propias estadísticas o analizar datos con Calc.

El curso se compone de 3 módulos, cada uno de ellos con las siguientes unidades:

MODULO 01: BASE como SGBD

UNIDAD 01 Conceptos básicos UNIDAD 02 Creación de una base de datos UNIDAD 03 Diagramas de Entidad/Relacion

MODULO 02: Extracción de información desde OpenOffice Base

UNIDAD 01 Búsquedas y filtros UNIDAD 02 Consultas

MODULO 03: Análisis de datos con Calc

UNIDAD 01 Introducción a Calc UNIDAD 02 Tablas dinámicas UNIDAD 03 Fuentes de datos externas

MATERIAL DIDÁCTICO

Page 3: 1230 - Uso Conjunto Calc y Base (2)

Los contenidos del programa están desarrollados en soporte digital Online como una página Web, y están alojados en la plataforma o campus de formación virtual de la Generalitat Valenciana. Los materiales didácticos cuentan con sus objetivos y contenidos básicos del curso, y están diseñados en su estructura y forma para facilitar la formación no presencial.

Las Unidades didácticas recogen los contenidos del curso. Estas unidades se caracterizan por:

El alumno encontrará toda la información necesaria para su proceso de aprendizaje.

La exposición de contenidos es gradual . Al final de cada módulo se encuentran las propuestas de actividades y ejercicios de autoevaluación.

El acceso a estos contenidos se realiza a través del campo virtual. Además, el profesor facilitará otros materiales en el campus de eformacion:

Documentación anexa ubicada en el almacén del "Aula virtual". Notas, aclaraciones y propuestas de actividades.

REQUISTOS TÉCNICOS

Ordenador con conexión a Internet y OpenOffice.org 3.4 instalado.

METODOLOGÍA DE APRENDIZAJE

Aprendizaje no presencial tutorizado basado en una metodología participativa, donde:

Se recomienda leer las unidades propuestas. Realizar las actividades propuestas. Responder a los ejercicios de autoevaluación. Asimismo, debéis tener en cuenta los espacios y medios de relación que

ofrece el medio.

Recursos de comunicación necesarios para el aprendizaje:

Chat Correo electrónico, con listado de compañeros del curso y tutor Foro de debate

Con ellos podremos:

Comunicarnos con el formador para la resolución de dudas. Comunicarnos de forma privada con otros participantes del curso. Participar en los foros y chat propuestos.

Es importante recordar que las actividades que encontraremos en el curso son:

Ejercicios de autoevaluación al final de cada módulo didáctico. Actividades participativas (Foros y prácticas).

Para realizar el curso con aprovechamiento deberemos realizar todas y cada una de las actividades propuestas. El tutor valorará especialmente la participación activa en los diferentes espacios.

Se proponen las siguientes actividades:

Page 4: 1230 - Uso Conjunto Calc y Base (2)

Debates o Foros, en los que cada alumno deberá realizar un mínimo de dos aportaciones siguiendo el hilo conductor del debate.

Prácticas o Casos aplicados, donde el alumno deberá poner en práctica los conceptos que va adquiriendo.

El profesor informará adecuadamente en tiempo y forma de las actividades que deben realizarse. La evaluación será continua durante y a lo largo de los ejercicios y actividades propuestas en las diferentes unidades didácticas.

Page 5: 1230 - Uso Conjunto Calc y Base (2)

Objetivo del curso

Conocer el paquete ofimático OpenOffice.org Saber analizar un problema y diseñar las tablas de una pequeña base de

datos departamental. Saber crear bases de datos en Base Saber consultar información de bases de datos en Base Conocer la hoja de cálculo Calc y las herramientas de las que dispone para

el análisis de datos de tablas Saber conectar la información de una base de datos a la hoja de cálculo

Page 6: 1230 - Uso Conjunto Calc y Base (2)

Presentación del Módulo 1

Este primer módulo del curso se compone de 3 Unidades didácticas

Unidad1 - Conceptos básicos Unidad2 - Creación de una base de datos Unidad3 - Diagramas de Entidad/Relación

Introduciremos los conceptos básicos que se manejan cuando hablamos de sistemas de información aplicados a las organizaciones empresariales, qué es un sistema de información, y como lo podemos diseñar y organizar con las herramientas de base de datos disponibles actualmente en el mercado.

En la Unidad2 se introduce el programa OpenOffice Base. Aprenderemos a crear tablas, campos, claves de tabla. etc. Veremos que con Base crear tablas es una tarea sencilla que no necesita de conocimientos de programación.

Una vez conocido como crear tablas, cabe la pregunta de, ante un problema dado, que tablas debemos crear y cual debe ser la relación correcta entre ellas. Esto lo analizaremos en la Unidad3 mediante la técnica de los diagrámas de Entidad /Relación

Page 7: 1230 - Uso Conjunto Calc y Base (2)

Objetivos del Módulo 1

Al finalizar la unidad deberemos ser capaces de conocer y distinguir los siguientes conceptos:

Sistema de Información Sistema gestor de base de datos Base de datos Base de datos relacional Tablas Indices Relaciones

Page 8: 1230 - Uso Conjunto Calc y Base (2)

Presentación de la Unidad 1 - Conceptos básicos

Todos sabemos lo que es OpenOffice Base, seguro que si alguien nos pregunta ¿qué es Base? Enseguida contestaremos: "Una base de datos". ¿Pero es esto correcto?. ¿Qué es en realidad una base de datos? ¿Por qué las creamos?. Para responder a estas preguntas amos a introducir una serie de conceptos previos.

Page 9: 1230 - Uso Conjunto Calc y Base (2)

Objetivos de la Unidad 1 - Conceptos básicos

Al finalizar la unidad deberemos ser capaces de conocer y distinguir los siguientes conceptos:

Sistema de Información Sistema gestor de base de datos Base de datos Base de datos relacional Tablas Indices Relaciones

Page 10: 1230 - Uso Conjunto Calc y Base (2)

Sistema de información

Cualquier empresa u organización tiene marcados unos objetivos. Podemos definir un objetivo como un "resultado que se desea lograr" o como "los fines hacia los cuales se dirige el comportamiento de una organización".

Para conseguir dichos objetivos la empresa debe gestionar de forma adecuada los recursos de los que dispone. Por lo tanto necesita información. Dicha información debe tener entre otras las siguientes características:

Efectiva:la información debe ser oportuna, correcta, consistente, utilizable y referida al nivel de la organización al cual se dirige.

Eficiente:que la provisión de la información se realice a través de la utilización óptima de recursos, es decir, de la forma más productiva y económica.

Cumplimiento:se refiere a que la información proporcionada debe cumplir con leyes, y regulaciones. Concretamente con la ley de protección de datos.

Confidencial:la información debe estar protegida de divulgaciones no autorizadas.

Íntegra:se refiere a la precisión y suficiencia de la información y su validez de acuerdo a los valores y expectativas de negocio.

Disponible:la información debe estar disponible cuando es requerida por el proceso de negocio.

Para recoger, registrar, y procesar dicha información se organizan los sistemas de información

Elementos de un Sistema de información:

INFORMACIÓN: Los datos que debemos recoger y procesar

Page 11: 1230 - Uso Conjunto Calc y Base (2)

PERSONAS. Los recursos humanos que dedica la organización a gestionar todo el proceso.

RECURSOS. Recursos no humanos. Tecnología usada en el sistema de información. Libros de contabilidad, ficheros en papel, o más actualmente, elementos de hardware y software .

TECNICAS. Procedimientos a los que se somete la información

Podemos definir un Sistema de Información como:

Conjunto de elementos: Recursos humanos, Datos, procedimientos, tecnología (hardware) y procesos (software) estructurados y relacionados entre sí para lograr el objetivo básico de administrar correctamente la información que existe en una parcela acotada del mundo real: Un área, departamento o empresa

Page 12: 1230 - Uso Conjunto Calc y Base (2)

Base de datos

DEFINICIÓN

Tenemos varias definiciones de base de datos:

Una base de datos es un conjunto estructurado de datos que intentan reflejar de forma organizada la información que existe en una parcela acotada del mundo real. Esta parcela se denomina sistema de información.

Un conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso.

Es una colección de archivos de datos relacionados entre sí, junto con otros archivos auxiliares como pueden ser los índices, sometidos a una serie de reglas y restricciones respecto a su estructura y almacenamiento

BASES DE DATOS RELACIONALES

Una base de datos relacional es un conjunto de una o más tablas estructuradas en registros (líneas) y campos (columnas), que se vinculan entre sí por un campo en común, en ambos casos posee las mismas características como por ejemplo el nombre de campo, tipo y longitud; a este campo generalmente se le denomina identificador o clave

SISTEMAS GESTORES DE BASES DE DATOS

Un sistema gestor de bases de datos SGBD es un programa de ordenador que nos permite, extraer, almacenar y manipular de forma clara y sencilla un conjunto de datos que posteriormente se convertirán en información relevante para una organización.

Funciones del SGBD:

1. Un SGBD debe proporcionar a los usuarios la capacidad de almacenar datos en la base de datos, acceder a ellos y actualizarlos. Esta es la función fundamental de un SGBD y por supuesto, el SGBD debe ocultar al usuario la estructura física interna (la organización de los ficheros y las estructuras de almacenamiento).

2. Un SGBD debe proporcionar un catálogo en el que se almacenen las descripciones de los datos y que sea accesible por los usuarios. Este catálogo es lo que se denomina diccionario de datos y contiene información que describe los datos de la base de datos (metadatos). Normalmente, un diccionario de datos almacena:

o Nombre, tipo y tamaño de los datos.o Nombre de las relaciones entre los datos.o Restricciones de integridad sobre los datos.o Nombre de los usuarios autorizados a acceder a la base de datos.o Esquemas externos, conceptual e interno, y correspondencia entre

los esquemas.

Page 13: 1230 - Uso Conjunto Calc y Base (2)

o Estadísticas de utilización, tales como la frecuencia de las transacciones y el número de accesos realizados a los objetos de la base de datos.

3. Un SGBD debe proporcionar un mecanismo que asegure que la base de datos se actualice correctamente cuando varios usuarios la están actualizando concurrentemente. Uno de los principales objetivos de los SGBD es el permitir que varios usuarios tengan acceso concurrente a los datos que comparten. El acceso concurrente es relativamente fácil de gestionar si todos los usuarios se dedican a leer datos, ya que no pueden interferir unos con otros. Sin embargo, cuando dos o más usuarios están accediendo a la base de datos y al menos uno de ellos está actualizando datos, pueden interferir de modo que se produzcan inconsistencias en la base de datos. El SGBD se debe encargar de que estas interferencias no se produzcan en el acceso simultáneo.

4. Un SGBD debe proporcionar un mecanismo capaz de recuperar la base de datos en caso de que ocurra algún suceso que la dañe

5. Un SGBD debe proporcionar un mecanismo que garantice que sólo los usuarios autorizados pueden acceder a la base de datos. La protección debe ser contra accesos no autorizados, tanto intencionados como accidentales.

6. Un SGBD debe proporcionar los medios necesarios para garantizar que tanto los datos de la base de datos, como los cambios que se realizan sobre estos datos, sigan ciertas reglas. La integridad de la base de datos requiere la validez y consistencia de los datos almacenados. Se puede considerar como otro modo de proteger la base de datos, pero además de tener que ver con la seguridad, tiene otras implicaciones. La integridad se ocupa de la calidad de los datos. Normalmente se expresa mediante restricciones, que son una serie de reglas que la base de datos no puede violar. Por ejemplo, se puede establecer la restricción de que cada empleado no puede tener asignados más de diez inmuebles. En este caso sería deseable que el SGBD controlara que no se sobrepase este límite cada vez que se asigne un inmueble a un empleado.

Además, de estos servicios, es razonable esperar que los SGBD proporcionen un par de servicios más:

1. Un SGBD debe permitir que se mantenga la independencia entre los programas y la estructura de la base de datos.

2. Un SGBD debe proporcionar una serie de herramientas que permitan administrar la base de datos de modo efectivo. Algunas de ellas son:

o Herramientas para importar y exportar datos.o Herramientas para monitorizar el uso y el funcionamiento de la base

de datos.o Programas de análisis estadístico para examinar las prestaciones o

las estadísticas de utilización.o Herramientas para reorganización de índices.o Herramientas para aprovechar el espacio dejado en el

almacenamiento físico por los registros borrados y que consoliden el espacio liberado para reutilizarlo cuando sea necesario.

Una vez introducidos estos conceptos podemos decir que Ooo Base es un sistema gestor de bases de datos relacional..

Page 14: 1230 - Uso Conjunto Calc y Base (2)

Tablas, campos, registros

Una tabla es un conjunto de datos homogéneos estructurados en filas y columnas.

A cada una de las columnas de la tabla lo llamamos campo. El nombre de la columna será el nombre de dicho campo.

Un registro es una fila de la tabla y está compuesto por todos los datos almacenados en cada una de las columnas de esa fila.

Page 15: 1230 - Uso Conjunto Calc y Base (2)

Indices

Todos entendemos el concepto de índice de un libro y su utilidad. Supongamos un libro de historia universal que no tenga índice, si queremos acceder a la información sobre la revolución francesa tendríamos que empezar a leer por la primera página e ir leyendo sucesivamente hasta llegar a la información que buscamos, tendríamos que pasar por la prehistoria, la historia antigua, la edad media, etc. Hasta llegar a la revolución francesa. Supongamos que la revolución francesa está en el capítulo 10 página 564. Para llegar a la información que necesitábamos habremos tenido que leer las 563 páginas anteriores. Si el libro tiene un índice, para llegar a la información buscada, iremos al índice que nos indicará que ese tema está en la página 564 y saltaremos directamente a dicha página. Habremos llegado a la información deseada en solo 2 páginas.

En las bases de datos el concepto es el mismo, se trata de una función que acelera la búsqueda y la ordenación de una tabla según unos valores clave y que puede ayudar a evitar duplicados en las filas de una tabla.

Page 16: 1230 - Uso Conjunto Calc y Base (2)

Relaciones

En las bases de datos relacionales almacenamos datos en las tablas. Podemos relacionar 2 tablas a partir de un campo (columna) común.

Ejemplo:

Supongamos un sistema de información que guarda datos de empleados y departamentos a los que están asignados. Podemos tener varias tablas y relacionarlas entre sí.

Page 17: 1230 - Uso Conjunto Calc y Base (2)

Presentación de la Unidad 2

En esta unidad vamos a empezar a trabajar con OpenOffice Base, el Sistema Gestor de Base de Datos incluido en el paquete ofimático OpenOffice. Veremos como crear una base de datos, crearemos tablas y definiremos los campos que las componen. Es conveniente que durante esta unidad tengamos OpenOffice Base abierto en nuestro ordenador e intentemos repetir paso a paso los procesos explicados. Al final de la unidad deberemos realizar la una práctica guiada que consistirá en la creación de una base de datos que deberemos enviar al profesor.

Page 18: 1230 - Uso Conjunto Calc y Base (2)

Objetivo de la Unidad 2

Saber crear una base de datos en OpenOffice.org base Saber crear TABLAS en OpenOffice.org base Saber definir CAMPOS y TIPOS DE CAMPO Saber crear CLAVE de una tabla

Page 19: 1230 - Uso Conjunto Calc y Base (2)

Creación de una base de datos

INICIAR OOo-BASE

Podemos arrancar OpenOffice Base haciendo clic con el ratón en : Menú Inicio - Todos los programas - OpenOffice.org3.4 - OpenOffice.org Base

CREAR UNA BASE DE DATOS

Seguiremos los siguientes pasos:

1) En pantalla aparecerá el asistente para la creación de bases de datos. Seleccionamos la opción "Crear nueva base de datos" y hacemos clic en SIGUIENTE

2) En la siguiente pantalla marcamos, "registrar la base de datos" y "Abrir la base de datos para editar"

Page 20: 1230 - Uso Conjunto Calc y Base (2)

3) Seleccionaremos la carpeta en la que vamos a guardar la base de datos y le daremos el nombre a archivo "Ejemplo1"

Page 21: 1230 - Uso Conjunto Calc y Base (2)

Acabamos de crear una base de datos. En este momento estará vacía ya que todavía no hemos creado ningún objeto ni introducido ningún dato. En la pantalla de OpenOffice Base tendremos la Ventana de Base de Datos.

Page 22: 1230 - Uso Conjunto Calc y Base (2)

En la parte de la izquierda vemos los objetos que podemos crear en una base de datos de OpenOffice Base:

Tablas Consultas Formularios Informes

Page 23: 1230 - Uso Conjunto Calc y Base (2)

Objetos de la base de datos

TABLAS

Ya hemos visto el concepto de tabla en la unidad anterior. Resaltar que es el objeto principal de una base de datos, ya que es el que contiene todos los datos.

CONSULTAS

Las consultas son formas de almacenar ciertas operaciones sobre la base de datos. Existen dos tipos de consulta, las de selección y las de acción. Estas últimas a su vez pueden ser de creación de tabla, de eliminación, de inserción y de actualización.

En el curso vamos a ver las consultas de selección, que almacenan operaciones en las que se realizan selecciones de datos que cumplan una serie de criterios. Por ejemplo si tuviéramos una base de datos sanitaria, con una tabla de pacientes, podríamos tener una consulta que nos seleccionase las mujeres pensionistas que viven en un área sanitaria determinada.

En las consultas además podemos establecer criterios de ordenación y agrupación.

FORMULARIOS

Un formulario es una ventana diseñada para la introducción y edición de datos. Con OpenOffice Base podemos diseñar formularios con listas desplegables, rejillas, botones de opción y selección y en general todos los objetos que estamos acostumbrados a ver en las aplicaciones de Windows.

Un usuario normal de la base de datos trabajará mediante los formularios que le hayamos diseñado. El usuario no tiene por que saber la estructura de la base de datos ni que tablas contiene. Simplemente se le presentan pantallas en las que los campos presentan la información que el necesita, de una manera entendible.

INFORMES

Con informes nos referimos a listados impresos.

Page 24: 1230 - Uso Conjunto Calc y Base (2)

Fichero de base de datos

Hemos visto que en una base de datos OpenOffice Base podemos crear una serie de objetos. De esos objetos algunos contendrán datos: las tablas, otros las pantallas que usará el usuario: los formularios, otros los listados que permita imprimir la aplicación (informes). Pero ¿dónde se almacenan todos estos objetos?

En Base todos los objetos que creamos en la base de datos se almacenan en un único fichero. Ese fichero es el que le hemos indicado cuando creamos la base de datos inicialmente, y estará en la carpeta del ordenador en el que lo hayamos creado.

Los ficheros de Base tienen la extensión ODB.

Page 25: 1230 - Uso Conjunto Calc y Base (2)

4.- Diseño y creación de una tabla

Para crear una tabla en Base hacemos clic con el ratón en TABLAS - Crear una tabla en modo de diseño.

Page 26: 1230 - Uso Conjunto Calc y Base (2)

Para cada dato que queramos almacenar en nuestra tabla deberemos indicar Nombre del Campo y Tipo de Datos.

NOMBRE DEL CAMPO

Puede estar formado por un máximo de 64 caracteres (letras, números, espacios en blanco o caracteres especiales). Deberemos elegir un nombre de campo que sea significativo para que los usuarios potenciales de la base de datos puedan intuir los datos que se almacenan en ese campo. Por ejemplo FechaNacimiento es más significativo que fnmto

TIPO DEL CAMPO

El tipo del campo es una propiedad que determina:

El tipo de información se puede almacenar en un campo: texto, números, fechas, valores SI/NO, etc.

El espacio que OpenOffice Base reservará para cada campo

Page 27: 1230 - Uso Conjunto Calc y Base (2)

Las operaciones que se podrán realizar sobre el campo Posibilidad de usar el campo como clave principal

Los tipos de datos se muestran al desplegar el campo tipo de datos.

Es importante establecer correctamente el tipo de dato asignado a cada campo, que irá en relación a la información almacenada en él y al uso que se va a hacer de la misma posteriormente.

Los tipos de datos con los que trabaja OpenOffice Base son muy numerosos y los explicamos a continuación:

Campos tipo texto:

TEXTO [VARCHAR].- Este tipo de dato puede contener letras, signos de puntuación o números que no vayan a ser utilizados en operaciones matemáticas. Como máximo se podrán introducir 255 caracteres en cada campo. Por ejemplo un nombre, una dirección, un cargo, una familia, un teléfono (no lo vamos a operar).

NOTA [LONGVARCHAR].- Se utiliza para almacenar en ellos gran cantidad de información. Se pueden almacenar hasta 64.000 caracteres por cada campo. Por ejemplo unos datos de interés, el argumento de una película...

Page 28: 1230 - Uso Conjunto Calc y Base (2)

Campos de tipo numérico: Este tipo de campos permite introducir datos de tipo numérico con los que poder realizar operaciones matemáticas (suma, promedio...). La diferencia clave en elegir el tipo de campo numérico correcto radica en el tamaño que va a ocupar el dato en la base de datos. Dependiendo del tipo de dato que vayamos a introducir, su longitud, elegiremoss entre uno u otro. Por ejemplo, si el campo va destinado a recoger información sobre el número de hijos seleccionare como tipo de campo Tiny Integer, que permite almacenar números enteros pequeños y el tamaño que ocupa el campo en la base de datos es de 1 byte. Si lo que deseamos es introducir datos numéricos con decimales, el tipo de datos adecuado es Número o Decimal.

INTEGER [INT]: Permite introducir números enteros (positivos o negativos) comprendidos entre -2.147.483.648 y 2.147.483.647. (Ej. horas vuelo de un piloto...). Ocupa 4 bytes.

TINY INTEGER [TINYINT]: Admite valores enteros comprendidos entre 0 y 255. (Ej. número hijos, edad...). Ocupa 1 byte de espacio en el disco del ordenador.

SMALL INTEGER [SMALLINT]: Permite introducir números enteros (positivos o negativos) comprendidos entre -32.768 a 32.767. Opcupa 2 bytes de tamaño en memoria.

NUMERO [NUMERIC]: Permite introducir números con cifras decimales. DECIMAL [DECIMAL]: Permite introducir números con cifras decimales. DOUBLE [DOUBLE]: admite valores comprendidos entre -1,797 x 10 elevado a

308 y 1,797 x 10 elevado a 308, permitiendo hasta quince decimales. Ocupa 8 bytes. (prácticamente cualquier número sería admitido).

Campos de Fecha y hora:

FECHA [DATE]: Se utiliza para almacenar valores de fecha (fecha de alta, fecha de nacimiento...)

HORA [TIME]: Se utiliza para almacenar que representen horas o también el tiempo transcurrido entre dos valores horarios. (Hora de entrada, hora de salida...)

FECHA/HORA [TIMESTAMP]: Se utiliza cuando se necesitan valores que contienen información de fecha y hora, en el mismo campo.

Información.- Por defecto, los formatos en los que se presentan los datos para campos de tipo fecha y hora son los siguientes:

Date: "DD-MM-YY" (Ej. 12-06-98) Time: "HH:MM:SS" (Ej: 12:45:20) Fecha/Hora: "DD-MM-YY HH:MM:SS" (Ej. 12-06-98 12:45:00)

Estos formatos de presentación de los datos almacenados en este tipo de campos, a través de la propiedad formato podremos cambiarlos y acomodarlos a nuestras necesidades.

Campos de tipo lógico:

Sí/No [BOOLEAN]: Este tipo de campos sólo admite valores lógicos como son: Sí (con acento) o No, Verdadero o Falso y Activado o Desactivado. Se establecerán como tales sólo aquellos campos en los cuales únicamente se afirme o niegue algo. Por ejemplo moroso (Sí/No), casado (Sí/No), pagado (Sí/No)...

Otros campos:

IMAGEN [LONGVARBINARY]: Este tipo de campo nos va a ser muy útil para asociar una imagen a cada registro de la tabla como veremos más adelante.

Page 29: 1230 - Uso Conjunto Calc y Base (2)
Page 30: 1230 - Uso Conjunto Calc y Base (2)

Creación de una tabla

PROPIEDADES DE LOS CAMPOS

Las propiedades que se establecen para los campos varían en función del tipo de dato que se va a introducir en los mismos, es decir, son unas u otras dependiendo del tipo de campo. Las distintas propiedades que se pueden presentar se localizan en el panel inferior dentro de la vista diseño de la tabla.

LONGITUD

Esta propiedad establece el número máximo de caracteres que podrá contener un campo si es de tipo texto. Para cada carácter que se vaya a introducir como valor en el campo, habrá que reservar un espacio para él, es decir un byte. Inicialmente se fija por Base en 50, pudiéndose modificar en cualquier instante por otro valor.

Page 31: 1230 - Uso Conjunto Calc y Base (2)

Si el campo en cuestión cuyas propiedades se están definiendo es de tipo numérico, la longitud del campo vendrá dada por el tipo de dato numérico que hayamos seleccionado, no dando opción al usuario de modificarlo, salvo para el tipo de datos Numérico y Decimal.

VALOR AUTOMÁTICO

Esta propiedad está establecida para el tipo de datos Integer, y provoca que se almacenen datos numéricos generados automáticamente por OpenOffice Base al introducir un nuevo registro, asignando a cada registro el valor numérico del registro anterior incrementado en una unidad (1, 2, 3, ...). Se garantiza la no repetición de valores para toda la tabla. Únicamente puede haber un campo de estas características en cada tabla. De existir, siempre comienza con el valor 1. Se puede aprovechar esta numeración para codificar elementos de la tabla tales como códigos de empleado, números de pedido, números de orden...

Page 32: 1230 - Uso Conjunto Calc y Base (2)

Información.- En Access existe un tipo de campo denominado Autonumérico que realiza la misma función que un Campo con tipo de datos Integer en OpenOffice Base, siempre que en la propiedad Valor Automático establezcamos la opción Sí.

DECIMALES

Para aquellos campos de tipo numérico que admitan decimales, aparecerá esta propiedad que permite establecer la precisión de la parte decimal del número almacenado.

ENTRADA REQUERIDA

Se utiliza cuando se quiere establecer que sea obligatoria la introducción de un dato en el campo.

Page 33: 1230 - Uso Conjunto Calc y Base (2)

VALOR PREDETERMINADO

El valor que se introduce en esta propiedad, aparece en el campo al añadir un nuevo registro. Es útil en el caso de que un campo concreto tenga el mismo valor para la mayoría de los registros que van a ser introducidos. Por ejemplo, para el campo provincia dentro de una tabla de clientes, si la gran mayoría de nuestros clientes son de La Rioja, podríamos establecer como valor predeterminado La Rioja. Si un cliente cuya ficha estamos introduciendo es de La Rioja, bastará con pulsar la tecla Intro (ahorro de tiempo y teclado). De no ser un cliente de La Rioja, se teclea el valor de la provincia correspondiente y ya está.

EJEMPLO DE FORMATO

Permite establecer la forma en que se verán los datos. La presentación de números, fechas, textos y valores Sí/No en distintos formatos.

Al acceder al cuadro de texto Formato, aparecerá a la derecha del mismo el botón . Al hacer clic sobre el mismo se muestran las distintas opciones de formato, en función del tipo de dato contenido en el campo, de que se dispone.

El formato modifica simplemente el aspecto visual del dato almacenado, manteniéndose el valor original del mismo en el campo sin formato, "desnudo".

Es común a todos los tipos de campos, la propiedad de formato Alineación, que nos permitirá decidir las opciones de alineación del contenido de los datos en la tabla.

Page 34: 1230 - Uso Conjunto Calc y Base (2)

En campos de tipo Numérico, al acceder al formato tendremos un amplio abanico de posibilidades a la hora de definir la forma de visualización o presentación del dato almacenado en la tabla: porcentaje, moneda...

Como se observa en la figura, a la izquierda de la pantalla aparece una lista de categorías, de las cuales hay que seleccionar una de ellas. Una vez seleccionada, a la parte derecha se mostrará el formato de la celda seleccionada y debajo las opciones, en función de la categoría seleccionada, con las que dar el formato que se precise, apreciando en la zona de vista previa el formato que va tomando el dato.

Los diferentes formatos numéricos son:

Definidos por el usuario . Partiendo de uno existente, se crea un código particular. Número . Para la presentación de números en general. Porcentaje . Se multiplica por 100 el valor de la celda y se muestra el resultado con

un símbolo porcentual. Moneda . Se hace constar el valor monetario usado (por ejemplo XX €). Fecha . Diversos formatos que representan fechas. Hora . Se representan fechas y horas con varios formatos. Ciencia. El número 100000, por ejemplo, será representado como 1E+05. Fracción . Con varios dígitos (por ejemplo 12/25). Valor Lógico . Para valores booleanos. Texto . Es tratada como texto aunque en ella haya un número

Page 35: 1230 - Uso Conjunto Calc y Base (2)

Creación de una tabla

CLAVE DE LA TABLA

Todas las tablas de la base de datos deben tener un campo o conjunto de campos que sean la clave. La clave de la tabla identifica de manera unívoca cada uno de los registros de la tabla. El campo clave no puede tener valores duplicados en la tabla. Por ejemplo en la tabla de PERSONAS del campo DNI puede ser clave, ya que no se admite que pueda haber 2 personas con el mismo DNI.

Para establecer una CLAVE PRIMARIA:

1. Seleccionamos en el diseño de la tabla, la fila (o filas) que contiene el campo que queremos establecer como Llave Primaria haciendo clic en el selector de fila, a la izquierda.

2. Hacemos clic con el botón derecho del ratón y seleccionamos la opción Clave Primaria.

3. Un icono con forma de llave nos indicará qué ese campo es la clave principal.

Si cuando se ha terminado de definir la estructura de una tabla desde el panel de diseño de tabla, se realiza la operación de cerrar, OpenOffice Base pregunta al usuario si se desea definir una clave principal mediante el siguiente mensaje:

Page 36: 1230 - Uso Conjunto Calc y Base (2)

Si respondemos que Sí, OpenOffice Base creará un campo nuevo denominado "Id" al que le asignará la condición de Clave primaria o clave principal.

Si respondemos que No, la tabla se creará pero no podremos agregar ningún registro, ni modificarlo, ni eliminarlo... es decir, no vamos a poder editar la tabla creada.

Si cancelamos la acción, OpenOffice Base nos ofrece la posibilidad de qué decidamos qué campo o campos de la recién creada tabla van a ser clave principal. Lo elegiremos y crearemos la llave primaria de la forma que hemos visto anteriormente

Page 37: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 01 - Video Club

Supongamos que tenemos que informatizar el sistema de información necesario para controlar la gestión de un videoclub. El videoclub tiene una serie de clientes que alquilan películas. Queremos crear la tabla que nos permita gestionar correctamente los datos de los clientes:

Los datos que deseamos almacenar son:

DNI Nombre y apellidos del cliente Edad del cliente (para controlar el alquiler de películas para adultos) Tiempo que hace que es socio. Para poder aplicar descuentos a clientes más

antiguos. Domicilio, población, código postal Teléfono fijo y móvil E-mail y otro campo que indique si desea recibir el boletín de novedades del

video club. Un campo que indique si es cliente habitual o no Cualquier otro dato del cliente, que pensemos que es necesario para la

gestión del videoclub

Tendremos que:

Elegir nombre a cada campo Decidir el tipo de datos de cada campo y su longitud Si el campo será requerido o no Si el campo será indexado o no Decidir y crear la clave.

Page 38: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 01 - Video Club

Resolución ejercicio parte 1

PASO UNO

Del enunciado del ejercicio vemos que tendremos que guardar información de CLIENTES de PELÍCULAS y de ALQUILERES DE PELÍCULAS. Vamos primero a crear la tabla de CLIENTES. Arrancamos OpenOffice Base, si es que no lo teníamos funcionando y creamos una nueva base de datos en blanco. Cuando nos pida el nombre del fichero lo llamaremos VideoClub.odb

Page 39: 1230 - Uso Conjunto Calc y Base (2)
Page 40: 1230 - Uso Conjunto Calc y Base (2)

PASO DOS

Creamos una nueva tabla donde iremos creando los campos de los datos de los clientes. En la ventana de la base de datos, elegimos el objeto tabla, y hacemos doble clic en "Crear una tabla en vista diseño"

Page 41: 1230 - Uso Conjunto Calc y Base (2)

PASO TRES

En la ventana de creación de tabla, vamos creando uno a uno los campos que nos piden en el ejercicio.

Page 42: 1230 - Uso Conjunto Calc y Base (2)

DNI, lo pondremos de tipo texto, longitud 10 Apellido1 ,tipo texto, longitud 50 Apellido2, tipo texto, longitud 50 NombreCliente, tipo texto longitud 50 FechaNacimiento, tipo fecha (para controlar la edad) FechaAlta, tipo fecha, (para controlar la antigüedad del socio) Domicilio, tipo texto 75 Población, tipo texto 75 CodigoPostal, tipo texto 5 Email, tipo texto 75 ClienteHabitual tipo SI/NO

Además añadimos los campos:

TelefonoFijo, tipo texto, longitud 9 TelefonoMovil, tipo texto longitud 9 EnvioEmail tipo SI/NO (Si autoriza o no a que le enviemos por email el

boletín de novedades) EnvioSMS tipo SI/NO (Si autoriza el envio de SMS, de avisos)

Page 43: 1230 - Uso Conjunto Calc y Base (2)

PASO CUATRO

Hay que decidir que campos van a ser requeridos. Esto significa que no vamos a permitir que esos campos se queden en blanco, al dar de alta a un nuevo cliente. En principio parece razonable que sean requeridos:

DNI Apellido1, Apellido2, Nombre FechaAlta Domicilio, Población, CodigoPostal TelefonoMovil

El campo clave será el DNI

Page 44: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 01 - Resolucion 2

PASO CINCO

Creamos la tabla PELICULAS. Veamos cuales de los datos que nos piden que almacenemos en la base de datos, los podemos poner en esta tabla.

CódigoPelicula. Tipo texto de 10 posiciones. Clave de la tabla. TituloPelicula. Tipo texto 75 posiciones. Requerido. Director. Tipo texto 75 posiciones. Distribuidor. Tipo texto 75 posiciones.

PASO SEIS

Los datos referidos a ALQUILERES DE PELICULAS los vamos a poner en una tabla llamada AlquileresRealizados. Un registro de esta tabla significará, que un cliente dado ha alquilado cierta película, en una fecha de alquiler, y que la película se ha devuelto en la fecha de devolución y que se pagó un determinado precio por el alquiler.

Page 45: 1230 - Uso Conjunto Calc y Base (2)

Por lo tanto crearemos los siguientes campos:

DNI - Ya que hay que identificar al cliente. Lo crearemos con el mismo formato de datos que en la tabla de Clientes. Es decir tipo texto, longitud 10. Requerido.

CodigoPelicula. Ya que hay que identificar a la película que se alquila. Lo crearemos con el mismo formado de datos que en la tabla de Películas. Tipo texto , longitud 10.. Requerido.

FechaAlquiler, tipo fecha. Requerido. FechaDevolucion. Tipo fecha. PrecioAlquiler. Númerico doble precisión.

CLAVE DE LA TABLA ALQUILERES REALIZADOS

En OpenOffice Base toda tabla tiene que tener su campo o conjunto de campos que sean clave. Tenemos que ver si con los campos que tenemos en la tabla de alquileres realizados podemos conseguir una clave. El que un campo sea clave quiere decir, entre otras cosas que el valor de ese campo no se puede repetir en la

Page 46: 1230 - Uso Conjunto Calc y Base (2)

tabla. Investiguemos los campos de los que disponemos. ¿Puede ser clave DNI?. Imaginemos que tenemos los siguientes datos en las tablas de la base de datos.

Si el cliente con DNI 111 alquila en fecha 01/01/2010 la película Eclipse, y la película Mad Men. Tendríamos la siguiente tabla.

Vemos que el valor del campo DNI, si que se puede repetir en dos filas de la tabla AlquileresRealizados, por lo tanto DNI no puede ser clave.

Investiguemos el campo CodigoPelicula. ¿Puede ser clave en la tabla AlquileresRealizados?. Imaginemos que el cliente anterior le ha gustado tanto Eclipse que la vuelve a alquilar el día 10/10/2010. Tendríamos la siguiente tabla:

Page 47: 1230 - Uso Conjunto Calc y Base (2)

Vemos pues que el campo CódigoPelicula, puede tener valores duplicados en las filas de la tabla AlquileresRealizados. Por lo tanto no puede ser campo clave en esta tabla.

El campo Fechaalquiler tampoco puede ser clave. En la tabla anterior vemos 2 registros, con la misma fecha de alquiler.

Investiguemos si cogiendo más de un campo a la vez, conseguimos la clave:

Dni + codigoPelicula no puede ser, en la tabla anterior hay 2 registros con estos campos duplicados.

¿codigoPelicula + Fechaalquiler? Imaginemos que Alberto, alquila la película Eclipse el dia 10/10/2010 por la mañana, y la devuelve a primera hora de la tarde. Esa misma tarde la alquila Julia. Tendriamos la siguiente tabla de alquileres.

Vemos que los campos CodigoPelicula+FechaAlquiler repiten sus valores en los dos últimos registros de la tabla. Por lo que no pueden ser clave. ¿DNI + CodigoPelicula + FechaAlquiler.? Si que puede ser clave, siempre que no se admita que una persona alquile la misma película el mismo día varias veces. Lo cual es una suposición razonable. Luego tomaremos estos tres campos unidos como clave de la tabla AlquileresRealizados.

Page 48: 1230 - Uso Conjunto Calc y Base (2)

Para crear la clave con los tres campos los seleccionamos en la tabla y pulsamos en el botón de Clave Principal.

Page 49: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 02 - Relaciones entre tablas

En el ejercicio anterior hemos creado 3 tablas:

Clientes Películas AlquileresRealizados

Hemos visto como en la tabla de AlquileresRealizados, poníamos el campo DNI. Este campo se refiere a datos de la tabla de Clientes. Por lo tanto hay una relación entre la tabla Clientes y la tabla AlquileresRealizados. Lo mismo ocurre entre AlquileresRealizados y Películas.

Hemos de indicar a OpenOffice Base que las tablas están relacionadas.

Esto se hace creando las relaciones entre las tablas. Lo hacemos paso a paso:

PASO UNO

Abrimos, si no lo teníamos abierto ya, el fichero VideoClub.odb que hemos creado en el ejercicio anterior. En la ventana de base de datos, hacemos clic en Menu Herramientas -> Relaciones

Page 50: 1230 - Uso Conjunto Calc y Base (2)

Aparece la ventana de selección de tablas. Seleccionamos las tablas sobre las que vamos a crear las relaciones (las 3) y las agregamos una a una pulsamos Agregar, y luego Cerrar.

Page 51: 1230 - Uso Conjunto Calc y Base (2)

PASO DOS

Aparece la ventana de creación de relaciones. Creamos la relación entre Clientes y Alquileres- Realizados, haciendo clic en el campo DNI de la tabla de Clientes y arrastrando el ratón hasta el campo DNI de la tabla AlquileresRealizados.

Page 52: 1230 - Uso Conjunto Calc y Base (2)

Aparece la ventana de propiedades de la relación:

Page 53: 1230 - Uso Conjunto Calc y Base (2)

Esta pantalla nos está indicando que estamos relacionando la tabla de Clientes con la tabla de AlquileresRealizados a partir del campo DNI. En ella especificamos que comportamiento debe tener la base de datos en la inserción o borrado de registros en las tablas con relaciones.

Lo vemos con más detalle.

Page 54: 1230 - Uso Conjunto Calc y Base (2)

Integridad referencial

La integridad referencial es un sistema de reglas que usa OpenOffice Base para garantizar que las relaciones entre los registros de tablas relacionadas son válidas y que no se modifican ni eliminan accidentalmente datos relacionados.

Veamos el ejemplo del VideoClub. Es una relación de uno a muchos. Un cliente ha alquilado distintas películas en varias fechas.

Podemos hacernos varias preguntas:

1. ¿Qué pasa si borramos el cliente JOSE LOPEZ LOPEZ? 2. ¿Qué pasa si modificamos en DNI del cliente? 3. ¿Podemos introducir alquileres de clientes que no existen en la tabla de

clientes?

Si no existiese la integridad referencial y realizáramos cualquiera de las acciones determinadas en las tres preguntas anteriores, tendríamos en la tabla un estado inconsistente.

Page 55: 1230 - Uso Conjunto Calc y Base (2)

Si borramos un cliente de la tabla de clientes y existian alquileres de ese cliente en la tabla Alquileres- Relacionados, quedará una información de estos alquileres incompleta y que ya no servirá para nada.

Si cambiamos los datos de un campo que hemos usado para relacionar dos tablas , se pierde la relación que existía entre ellas. Es decir, si a un cliente le cambiamos el DNI porque nos equivocamos al introducirlo, ya no podremos recuperar los alquileres que ha realizado.

Si podemos introducir alquileres sin verificar que existe el cliente, podemos estar introduciendo información errónea en nuestra base de datos.

Para evitar inconsistencias debemos dotar a nuestras relaciones de unos mecanismos que salvaguarden la integridad referencial o lo que es lo mismo, eviten las inconsistencias.

Para ello tenemos los siguientes métodos:

CASO 1: Cuando cambiamos un atributo clave. En este caso tendremos que cambiar también todos los valores que existen en las tablas relacionadas o bien no permitir dicho cambio.

CASO 2: Cuando borramos un registro de una tabla que tiene registros relacionados en otra tabla. En este caso, borramos todos los elementos relacionados o bien no permitimos el borrado del registro de la tabla principal.

CASO 3: Cuando introducimos un registro en una tabla relacionada que tiene elementos relacionados en una tabla principal (caso AlquileresRealizados). En este caso solo debemos permitir la entrada, si el campo que es clave externa (el campo por el que relacionamos las dos tablas) tiene un registro asociado en la tabla principal. Es decir que no podemos introducir un nuevo alquiler si no existe el cliente que alquiló la pelicula en la tabla de Clientes

Page 56: 1230 - Uso Conjunto Calc y Base (2)

Presentación

Ya conocemos de las unidades anteriores algunos conceptos básicos que se manejan en el entorno de las bases de datos. También sabemos crear tablas, pero ante un Sistema de Información dado, se nos pueden plantear las siguientes preguntas: ¿Qué información debemos guardar en la base de datos? ¿es necesaria más de una tabla?, ¿Cuántas tablas necesitamos? ¿Cuál es la estructura de tablas más correcta? ¿Qué relaciones debemos establecer entre ellas?.

Estos temas han preocupado a los ingenieros informáticos desde los años 70. Se ha desarrollado una teoría matemática (relaciones, formas normales, etc.) que demuestra que ante un sistema de información concreto, hay una estructura de tablas y relaciones entre las tablas que asegura algunas propiedades que son deseables en las bases de datos (no duplicidad de datos, facilidad ante actualizaciones, etc.).

Nosotros no vamos a estudiar la teoría matemática, sino un mecanismo gráfico de representación de la estructura de la información de un problema concreto. Usaremos los gráficos de Entidad/Relación para explicitar la estructura del problema y reflexionar sobre la misma, proponiendo, en caso de ser necesario, cambios en la estructura de los datos.

Veremos que a partir de un diagrama de Entidad/ Relación, el paso a una estructura de tablas y relaciones de OpenOffice Base, es inmediata.

Con el uso de diagramas de Entidad/Relación nos aseguramos, que la estructura de tablas y relaciones que creamos, sea la más correcta para representar nuestro problema

Page 57: 1230 - Uso Conjunto Calc y Base (2)

Objetivo de la Unidad 3

Conocer los diagramas de Entidad / Relación Saber analizar pequeños problemas de base de datos que aparezcan en el

día a día Saber razonar mediante los diagramas de E/R cual es la estructura de tablas

óptima de una pequeña base de datos Saber transformar un diagrama de E/R sencillo a tablas del sistema gestor

de bases de datos OpenOffice Base.

Page 58: 1230 - Uso Conjunto Calc y Base (2)

Análisis de requerimientos

Dado un Sistema de Información concreto, una vez decidimos que necesitamos informatizarlo, y que por lo tanto vamos a crear una base de datos, deberemos averiguar que datos necesitamos guardar para que podamos cumplir todas las funcionalidades que le exigimos a nuestro Sistema de Información. Haremos un análisis de requerimientos, que consiste en realizar un estudio de lo que queremos obtener, que es lo que tenemos ahora que podemos aprovechar, y que es lo que nos falta.

En esta etapa, debemos responder a una pregunta fundamental: ¿Qué es lo que al final queremos obtener? Informes, consultas, archivos, listados, gráficos etc. Para ello debemos diagnosticar la situación actual y recopilar los requerimientos tanto nuestros como del departamento, en relación al sistema.

El primer paso para diseñar una base de datos, es determinar su finalidad y cómo se utilizará. Deberemos saber qué información se desea obtener. A partir de ahí se puede determinar los conjuntos de información a almacenar (entidades) y qué atributos necesitamos almacenar sobre cada una de estas entidades.

Deberemos hablar con los demás usuarios que utilizarán la base de datos. Pensar detenidamente que preguntas se desea que responda la base de datos. Realizar bocetos de los informes que queremos que produzca. Deberemos reunir los formularios que se usen actualmente para registrar lo datos.

CARCTERÍSTICAS DE LOS REQUERIMIENTOS

Los requerimientos de nuestro sistema de información deben cumplir las siguientes características:

Necesario: Lo que pida un requerimiento debe ser necesario para el sistema de información.

No ambiguo: El texto debe ser claro, preciso y tener una única interpretación posible.

Conciso: Debe redactarse en un lenguaje comprensible por todos los intervinientes.

Consistente: Ningún requerimiento debe entrar en conflicto con otro requerimiento diferente, ni con parte de otro. Asimismo, el lenguaje empleado entre los distintos requerimientos debe ser consistente también.

Completo: Los requerimientos deben contener en sí mismos toda la información necesaria, y no remitir a otras fuentes externas que los expliquen con más detalle.

Alcanzable: Un requerimiento debe ser un objetivo realista, posible de ser alcanzado con el dinero, el tiempo y los recursos disponibles.

verificable: Se debe poder verificar con absoluta certeza, si el requerimiento fue satisfecho o no. Esta verificación puede lograrse mediante inspección, análisis, demostración o testeo.

Page 59: 1230 - Uso Conjunto Calc y Base (2)

Fases del análisis de requerimientos

1) Recolectar requerimientos

Puntos de vista de la información, pedir opiniones al resto del personal sobre necesidades y sobre lo que se tiene, formatos actuales (solicitudes, pedidos, fichas, albaranes, modelos de cartas, informes, acuses de recibo, etc.), informaciones existentes como hojas de cálculo, documentos informáticos, ficheros. etc. Los puntos de vista son susceptibles de consumir y producir datos. El análisis se preocupa de verificar que datos son producidos y consumidos realmente y que suposiciones sobre las fuentes y destinos de datos son válidos. De alguna forma este apartado trata de explicarnos, que al crear una nueva base de datos, nuestro conocimiento del SI, puede ser parcial. Un simple punto de vista más. Si estudiamos otros puntos de vista descubriremos las necesidades de todos, de donde salen los datos, con que formato y a donde van a parar realmente. Seguramente que esto eliminará muchos datos redundantes y clarificará todos los procesos dando una visión desde arriba de todos los datos existentes, así como los procedimientos seguidos con ellos.

2) Identificar los conflictos

Veamos los tipos de conflictos que pueden darse:

De nombre tanto en entidades como en relaciones. Pueden ser de dos tipos de homonimia (a dos objetos distintos se les ha asignado el mismo nombre) como de sinonimia (un mismo objeto que posee más de un nombre), Imaginemos un departamento que expide licencias de caza. La persona del departamento que recibe la solicitud de licencia la llama solicitud, la persona que la tramita y expide la llama autorización y el departamento de control de tasas le llama tasa de caza. Cada uno tiene un punto de vista distinto, ve distintas características de una misma realidad, distintos atributos de una misma entidad. Igualmente podemos encontrar el nombre "documento contable" para entidades completamente distintas. Por tanto, el primer trabajo consisten en definir claramente lo que es una misma entidad vista desde distintos puntos de vista.

Conflicto entre entidades: Podemos encontrar trozos de información que nos parecerán que tiene entidad propia, pero en realidad unos son subconjuntos de otros. Imaginemos un gabinete de prensa que contempla como unidad de información las Publicaciones y los diarios. Realmente diarios son subtipos de un tipo mucho mayor llamado publicaciones. También puede darse el caso contrario. Dos realidades completamente distintas como Alumno y profesor tienen algunos atributos comunes. Podemos englobar ambas en un supertipo mayor llamado Persona.

Conflictos entre tipos de objetos: Es un problema que se da como resultado de los distintos puntos de vista (mas global o más parcial) de la estructura de la información (entidades y atributos) lo que para uno es un atributo para otro es entidad. Supongamos que estudiamos una universidad, encontramos la ficha del profesor. En ella encontramos la asignatura que imparte. Automáticamente podemos pensar que asignatura es una característica inherente a profesor y que no merece más estudio, es simplemente un nombre. Sin embargo, en el departamento correspondiente tienen otra vista de la materia, ya que saben que tiene información propia además del nombre, como pueden ser el número de horas de teoría, horas de práctica, aula en la que se imparte, etc. Por tanto desde este nuevo

Page 60: 1230 - Uso Conjunto Calc y Base (2)

punto de vista, la asignatura no es una propiedad del profesor sino que es una realidad propia que merece almacenarse con todas sus características.

Conflictos de cardinalidad en relaciones: Imaginemos igualmente una universidad, los profesores y las asignaturas que imparten. Si el profesor es además catedrático, la relación que tiene con la asignatura es "dirige". La relación es 1:1, un profesor solo puede dirigir una asignatura, sin embargo este mismo profesor imparte clase y puede dar más de una edición de la misma. En este caso la relación que se da entre profesor y asignatura es "imparte" y su cardinalidad es 1:N. Es decir, entre las distintas informaciones existen una o varias relaciones exclusiva o múltiple. Es importante no solo detectar las informaciones sino las relaciones entre ellas.

Conflictos de información redundante entre las vistas.

3) Estructurar los puntos de vista

En niveles de jerarquía y en función de esa jerarquía, resolver los conflictos. Pensar que cuanto más alto es el nivel de jerarquía afecta a más puntos de vista.

4) Priorizar los requerimientos

No siempre es posible un consenso entre todas las necesidades.

5) Conformidad y validación

Someter los requerimientos priorizados a la conformidad y validación de todos los puntos de vista implicados.

6) Documento final

Realizar un sencillo documento resumido consensuado, con la definición de los requerimientos y las especificaciones finales.

Page 61: 1230 - Uso Conjunto Calc y Base (2)

Modelo de Entidad/Relación

Una vez realizado el análisis de requerimientos, pasamos a una fase en la que hay que estudiar toda la información disponible y como se estructura. Se propone un método de representación independiente de cualquier tecnología de base de datos que pueda plasmar dicha realidad. De esta forma surge el llamado diagrama Entidad-Relación. Fue propuesto por Peter P. Chen en 1976, modificado y ampliado por varios autores más, con nuevos mecanismos de abstracción y representación de la realidad, lo que se conoce como el modelo EER (entidad-relación extendido). Está considerado como una forma de trabajar el modelo semántico de Bases de Datos y es el más ampliamente utilizado para el modelado de datos.

Para nosotros, tan solo será un método muy simplificado y sencillo de estudiar de una forma general los datos implicados en nuestro sistema de información. Una herramienta capaz de permitirnos predefinir toda la base de datos que vamos a crear, a partir de un lápiz y un papel. Una metodología que permite plasmar por escrito toda la información obtenida en nuestro análisis de requerimientos, una vez filtrada, clasificada y priorizada.

Es un método representativo que nos permite adivinar los grupos de datos que tienen algo en común. Cómo agrupar la información y cómo relacionarla entre sí. Posteriormente veremos que partiendo de este modelo, podremos traducir inmediatamente estos diagramas en tablas y relaciones Access que serán el fundamento básico de nuestra base de datos.

Aunque existe un modelo extendido de este diagrama, nosotros nos centraremos en su versión más básica y sencilla. Mostraremos una mínima parte de este modelo, la necesaria para comprender el significado de los diagramas E-R más simples.

Un diagrama entidad relación, es una técnica de modelización que nos muestra los datos relevantes del sistema, así como las relaciones entre estos datos a un alto nivel de abstracción. Es una forma de representación en la que aparecen tres elementos principales: entidades, atributos y relaciones.

Page 62: 1230 - Uso Conjunto Calc y Base (2)

Entidades - Atributos - Relaciones

1) Entidades

Dentro de un sistema de información podemos encontrar una colección de cosas que tienen las mismas características, que hablan de lo mismo. Podemos pensar en unas facturas, en unos pacientes, en unos cursos, en los DNI de las personas con todos sus datos. En las películas de un video-club, en un modelo de la declaración de renta o en los empleados de la Generalitat Valenciana. Estas colecciones de elementos se denominan entidades, y las características comunes que los hacen semejantes, atributos. Cada entidad puede ser descrita por uno o más datos elementales (atributos).

Se representa por medio de un rectángulo que en su interior lleva el nombre de un sustantivo (el nombre de dicha entidad), el cual puede representar persona, lugar, cosa o evento de interés en el sistema.

2) Atributos

Se utilizan para detallar el contenido de las entidades. Se representan por óvalos unidos al rectángulo de la entidad a la que pertenecen por medio de una línea recta.

Existen dos tipos de atributos: Los descriptivos y los identificadores. Éstos sirven para identificar un ejemplar de la entidad de otro. Los

Page 63: 1230 - Uso Conjunto Calc y Base (2)

atributos identificadores van subrayados y son conocidos como Atributos clave, llaves primarias o simplemente llaves. Una llave o atributo clave define unívocamente cada ocurrencia de la entidad, es su marca singular, nunca tendremos dos iguales. Por ejemplo, no puede haber dos clientes con igual DNI. Posteriormente veremos que nunca puede adquirir un valor nulo o vacío en las posibles ocurrencias.

Ejemplo de representación de la entidad CLIENTE:

3) Relaciones

Las entidades están relacionadas entre sí, no son entes aislados, así, a través de unos atributos comunes se establecen unas relaciones. En los diagramas de E/R las relaciones se representan por medio de un diamante que lleva el nombre de una asociación entre dos o más entidades. Nosotros veremos solo relaciones entre dos entidades. Una relación puede o no contener atributos.

Page 64: 1230 - Uso Conjunto Calc y Base (2)
Page 65: 1230 - Uso Conjunto Calc y Base (2)

Cardinalidad de la relación

La cardinalidad de la relación indica el número de ocurrencias de cada entidad que están relacionadas entre sí. Existen tres tipos de relación en función de dicha cardinalidad.

Relaciones de muchos a muchos

Sean dos entidades A y B relacionadas mediante la relación R con una cardinalidad de muchos a muchos. La representación gráfica en un diagrama de entidad relación sería:

O una representación alternativa

La relación muchos a muchos quiere decir que:

Una ocurrencia de la entidad A, puede relacionarse con muchas ocurrencias de la entidad B.

Una ocurrencia de la entidad B, puede relacionarse con muchas ocurrencias de la entidad A.

Imaginemos que estamos estudiando un sistema de información que versa sobre la formación del personal al servicio de la Generalitat. Al definir las entidades seguro que, entre otras, encontramos PROFESORES, ALUMNOS, CURSOS, AULAS, etc. Analicemos las entidades CURSOS y ALUMNOS. Estas dos entidades están relacionadas entre sí. Los alumnos realizan cursos y los cursos son realizados por alumnos, es decir, existe una relación entre las dos entidades que podríamos llamar "asistencia a clase". Pero, ¿cuántos cursos puede hacer un alumno en concreto?. Sin duda muchos. Y por otra parte, ¿cuántos alumnos pueden acudir a un mismo curso?. Sin duda muchos también. Como vemos en esta relación se podrán dar combinaciones de muchos a muchos.

Relaciones de uno a muchos

Page 66: 1230 - Uso Conjunto Calc y Base (2)

Sean dos entidades A y B relacionadas mediante la relación R con una cardinalidad de uno a muchos. La representación gráfica en un diagrama de entidad relación sería: En la parte de la izquierda tenemos la cardinalidad 1 y en la derecha la cardinalidad muchos. Es decir se sombrea la parte del "diamante" que corresponde al muchos.

O una representación alternativa

La relación uno a muchos quiere decir que:

Una ocurrencia de la entidad A, puede relacionarse con muchas ocurrencias de la entidad B.

Una ocurrencia de la entidad B, puede relacionarse con solo una ocurrencia de la entidad A.

Imaginemos un sistema de información de gestión de personal de una Conselleria de la Generalitat. Tenemos varias entidades, PERSONAS, PUESTOS, NEGOCIADOS, SECCIONES, LICENCIAS etc. Veamos la relación entre los puestos del catálogo, entidad PUESTOS y los NEGOCIADOS. Un negociado puede tener muchos puestos, sin embargo un puesto solo puede estar adscrito a un negociado. En este caso la relación tiene una cardinalidad de uno (negociado) a muchos (puestos). El nombre de esta relación podría ser Composición del negociado.

Relaciones uno a uno

Sean dos entidades A y B relacionadas mediante la relación R con una cardinalidad de uno a uno. La representación gráfica en un diagrama de entidad relación sería:

O una representación alternativa

Page 67: 1230 - Uso Conjunto Calc y Base (2)

Como ejemplo podemos pensar en una entidad AUTOMOVIL y la entidad TARJETA DE CIRCULACIÓN. Cada entidad tiene sus atributos, y la relación entre ambas es de cardinalidad uno a uno. En este caso a la relación la podríamos llamar Registro.

Otra manera de representar las relaciones es:

Page 68: 1230 - Uso Conjunto Calc y Base (2)

Transformacion de diagramas E/R a OpenOffice Base

Hemos visto los diagramas de E/R como un método gráfco para refexionar sobre la estructura de los datos de nuestro problema, como una forma de poder discutir la estructura de la base de datos, con otros usuarios.

Una vez que se llega a un consenso sobre el diagrama E/R vamos a ver, como transformar estos diagramas en los objetos que permite la base de datos OpenOffice Base

ENTIDADES Y ATRIBUTOS

ENTIDADES: Cada entidad del diagrama E/R se transforma en una tabla de la base de datos.

ATRIBUTOS: Los atributos de las entidades, se transforman en campos de la tabla. ATRIBUTOS

CLAVE: Se transforman en campos clave primaria. Una clave puede estar compuesta de más de un campo.

RELACIONES DE UNO A MUCHOS

Los campos clave de la tabla de la entidad de la parte del UNO se ponen como campos en la tabla de la entidad de la parte del MUCHOS. Por ejemplo, en un sistema de información de personal, podemos tener dos entidades, DEPARTAMENTO y EMPLEADO, con una relación de 1 a muchos.

En efecto en un departamento trabajan muchos empleados, y un empleado trabaja en un departamento. Si hacemos la transformación a tablas, tendremos 2 tablas. La tabla DEPARTAMENTO y la tabla EMPLEADO.

Page 69: 1230 - Uso Conjunto Calc y Base (2)

La tabla DEPARTAMENTO, que es la parte del uno de la relación, tiene como campo clave CódigoDep., por lo tanto este campo lo añadimos a la tabla de EMPLEADO que es la parte del muchos de la relación.

RELACIONES UNO A UNO

Hacemos lo mismo que en una relación uno a muchos. Elegimos una de las tablas y en ella creamos los campos que sean clave en la otra tabla. Estos campos los hacemos indexados SIN repetición. Por ejemplo, en un sistema de información de personal de la conselleria, podemos tener dos entida- des EMPLEADO y PUESTO. Estas entidades tienen una relación de 1 a 1. Un empleado ocupa un solo puesto. Un puesto solo puede ser ocupado por un empleado. Veamos la transformación a tablas:

Hemos escogido una de las tablas, EMPLEADO, y le hemos añadido el campo que es clave en la tabla PUESTO, es decir nº de puesto. Pero existe una particularidad. La relación es de uno a uno, por tanto en la tabla de EMPLEADO, el campo nº de puesto, no puede repetirse, ya que si lo permitiéramos, estaríamos asignando el mismo puesto a diferentes empleados. Para asegurarnos de que en el campo nº de puesto, de la tabla EMPLEADO no se podrán introducir valores duplicados, al crear la tabla hacemos ese campo indexado sin repeticiones.

RELACIONES MUCHOS A MUCHOS

Las relaciones muchos a muchos siempre se pueden transformar en dos relaciones de uno a muchos, creando para ello, una nueva entidad que toma las claves de las entidades que antes se relacionaban a través de la relación muchos a muchos.

Page 70: 1230 - Uso Conjunto Calc y Base (2)

La entidad intermedia AB hereda los atributos clave de las entidades A y B. Veámoslo con un ejemplo. Supongamos que estamos estudiando el sistema de información de un videoclub. En nuestro análisis de requerimientos habremos detectado la información de clientes y la información de las películas. También veremos que existen las fchas de alquiler que nos relacionan los clientes y las películas a través de una relación de muchos a muchos. Un cliente alquila muchas películas y una misma película es alquilada por muchos clientes. Representaríamos dicha relación en un diagrama de ER como sigue:

Transformamos dicha relación en 2 relaciones de uno a muchos. Veámoslo en el siguiente diagrama:

Nos aparece una tabla intermedia ALQUILERES, en dicha tabla hemos puesto como atributos los campos que son clave en la tabla de CLIENTES (dni) y en la tabla PELICULAS (Código).

Page 71: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 03 - Sistema de información de personal

Crear un diagrama entidad relación según el siguiente enunciado: Se desea guardar información se las personas que trabajan en la casa. Queremos saber que puesto ocupa cada persona y a que negociado pertenecen, y a su vez este negociado a que sección y servicio. También queremos saber a que cursos ha asistido cada persona. Además queremos obtener unos listados por tipo de permisos de los disfrutados por el personal

Hay que dibujar las entidades, relaciones y atributos que se deducen de este enunciado, indicando:

Nombre de las entidades y de las relaciones Atributos principales de cada entidad Llaves o claves primarias de cada entidad Cardinalidad de las relaciones

Una vez tengamos el diagrama ER, transformarlo a tablas de OpenOffice Base. Crear el fichero de base de datos en OpenOffice Base, con las tablas y relaciones necesarias. Lo llamaremos EjercicioPersonal.odb. Deberemos enviarlo al profesor mediante las herramientas de la plataforma.

Page 72: 1230 - Uso Conjunto Calc y Base (2)

Conclusión del Módulo 1

En este primer módulo hemos introducido los conceptos principales que se manejan en los Sistemas de Información de una empresa, qué es una base de datos y los elementos que la componen.

Hemos aprendido a crear bases de datos y tablas en OpenOffice base. Hemos visto que crear tablas es una tarea sencilla pero que si queremos tener exito en nuestros desarrollos de base de datos conviene dedicar un poco de tiempo (a veces basta 1 sola hora) a pensar qué estructura de tablas será la adecuada para resolver nuestro problema.

Los diagramas de E/R nos ofrecen una metodología relativamente sencilla para llegar a buen puerto en el diseño de las tablas de una base de datos.

Page 73: 1230 - Uso Conjunto Calc y Base (2)

Presentación del Módulo 2

En este módulo vamos a centrarnos en OpenOffice Base como herramienta para acceder a datos de bases de datos creadas por terceras personas. Normalmente se tratará de aplicaciones departamentales o corporativas que están más o menos cerradas. Podemos usar OpenOffice Base para crear listados no previstos, analizar información (junto con OpenOffice Calc), y en general implementar pequeñas funcionalidades que no fueron previstas cuando se programó la aplicación.

Como no vamos a acceder a toda la base de datos, deberemos saber seleccionar aquellos datos que necesitamos para solucionar nuestro problema particular.

Haremos una serie de ejercicios prácticos, para lo cual nos descargaremos del almacén de la plataforma, el fichero EjemplosModulo2.zip . Descomprimiremos el fichero, en el que hay varias bases de datos sobre las que iremos trabajando. Al final de la unidad deberemos enviar al profesor, el fichero sobre el que crearemos las consultas pedidas en los ejercicios.

Page 74: 1230 - Uso Conjunto Calc y Base (2)

Objetivo del Módulo 2

Saber buscar información en una base de datos Conocer qué son los filtros de información Saber crear una consulta en una base de datos que nos proporcione la

información que precisemos en un momento dado.

Page 75: 1230 - Uso Conjunto Calc y Base (2)

Presentación de la Unidad 1

En este módulo vamos a centrarnos en OpenOffice Base como herramienta para acceder a datos de bases de datos creadas por terceras personas. Normalmente se tratará de aplicaciones departamentales o corporativas que están más o menos cerradas. Podemos usar Base para crear listados no previstos, analizar información (junto con Calc), y en general implementar pequeñas funcionalidades que no fueron previstas cuando se programó la aplicación.

Como no vamos a acceder a toda la base de datos, deberemos saber seleccionar aquellos datos que necesitamos para solucionar nuestro problema particular. En este módulo iremos realizando una serie de ejercicios prácticos, para lo cual nos descargaremos del almacén de la plataforma, el fichero EjemplosUnidad02.zip . Descomprimiremos el fichero, en el que hay varias bases de datos sobre las que iremos trabajando. Al final de la unidad deberemos enviar al profesor, el fichero sobre el que crearemos las consultas pedidas en los ejercicios.

Page 76: 1230 - Uso Conjunto Calc y Base (2)

Objetivo de la Unidad 1

Al finalizar la unidad deberemos ser capaces de:

Crear fltros de más de una condición. Crear consultas de selección Crear consultas de agregación Crear consultas parametrizadas.

Page 77: 1230 - Uso Conjunto Calc y Base (2)

La base de datos de pacientes

Descargaremos la base de datos EjemplosPacientes.odb del almacén. En este módulo vamos a realizar ejercicios sobre este fichero, por lo que vamos a familiarizarnos con esta base de datos. Se usa para llevar la gestión de los pacientes que acuden a centros de salud para ser tratados por facultativos.

Haciendo clic con el ratón en Menu -> Herramientas -> Relaciones

Podemos ver la estructura de tablas y relaciones de la base de datos.

Page 78: 1230 - Uso Conjunto Calc y Base (2)

Vemos que tenemos las siguientes tablas:

PACIENTES FACULTATIVOS CENTROS NUCLEOS POBLACIÓN

El significado de las relaciones es el siguiente:

Los facultativos prestan sus servicios en los centros. En un centro prestan sus servicios muchos facultativos. Un facultativo solo presta sus servicios en un centro.

A un paciente lo atiende un solo facultativo. Un facultativo atiende a muchos pacientes.

Los centros están en una determinada población. Los pacientes viven en una determinada población.

Page 79: 1230 - Uso Conjunto Calc y Base (2)

Abrir una tabla

Para abrir una tabla de OpenOffice Base, hacemos clic con el ratón en el objeto tablas y luego doble clic sobre la tabla que deseemos abrir. Si en la base de datos de EjemplosPacientes.mdb queremos abrir la tabla de pacientes:

1. Hacemos clic con el ratón en el objeto tablas.2. Hacemos doble clic con el ratón en la tabla pacientes.

3. Vemos que se abre la tabla de pacientes y podemos visualizar los datos.

Page 80: 1230 - Uso Conjunto Calc y Base (2)
Page 81: 1230 - Uso Conjunto Calc y Base (2)

Desplazamiento por una tabla

En esta imagen tenemos una tabla en modo edición. En las filas están los registros y en las columnas los campos. En la imagen podemos ver señalados los principales elementos para "navegar" a través de la tabla.

A) Botones de desplazamiento por registros. Con ellos se pueden realizar las siguientes acciones:

Page 82: 1230 - Uso Conjunto Calc y Base (2)

1. Registro en el que estamos actualmente. Si hacemos clic podemos ir directamente a un registro escribiendo su número.

2. Cantidad de registros en la tabla.3. Ir al primer registro. 4. Ir al registro anterior. 5. Ir al siguiente registro. 6. Ir al último registro. 7. Ir a registro nuevo.

B) Barra de desplazamiento por los campos.

C) Desplaza un registro adelante.

D) Desplaza una página delante o atrás según pulsemos abajo o arriba del puntero de desplazamiento de la barra.

E) Este puntero arrastrado con el ratón nos permite movernos de forma rápida a través de los registros.

F) Desplaza un registro hacia atrás.

Page 83: 1230 - Uso Conjunto Calc y Base (2)

Uso del teclado para desplazarse por la tabla

Con la tecla de página anterior desplazamos tantos registros como quepan en la pantalla hacia arriba.

Con la tecla de página siguiente desplazamos tantos registros como quepan en la pantalla hacia abajo.

Con la tecla de inicio entramos a editar el registro actual y nos situamos al inicio del registro.

Con la tecla de Fin entramos a editar el registro actual y nos situamos al final del registro.

Con la tecla cursor arriba nos desplazamos al registro anterior. nos desplazamos al último registro en el campo donde estemos situadosCon la tecla cursor abajo nos desplazamos al registro siguiente.

control + página anterior nos desplazamos al primer registro en el campo donde estemos situados

control + página siguiente nos desplazamos al último registro en el campo donde estemos situados

control + inicio igual que la tecla inicio. control + Fin igual que la tecla fin.

Page 84: 1230 - Uso Conjunto Calc y Base (2)

Respecto a las teclas de cursor izquierda y derecha sirven tanto para desplazarnos al anterior y siguiente campo respectivamente como para movernos dentro de un campo cuando lo estamos editando.

Page 85: 1230 - Uso Conjunto Calc y Base (2)

Búsquedas en tablas

Otra forma de desplazarmos por la tabla es mediante el cuadro de diálogo de búsqueda. Lo activamos

1) Haciendo clic en el botón buscar

2) Con la combinación de teclas CTRL + F (F de FIND encontrar en inglés)

Aparecerá el cuadro de diálogo de búsqueda

Page 86: 1230 - Uso Conjunto Calc y Base (2)

Como podemos observar existen varias opciones; como forzar la coincidencia de mayúsculas y minúsculas, forzar una búsqueda utilizando el mismo formato de presentación del campo así como buscar solo en el campo sobre el que estamos o en cualquier campo de la tabla.

Nosotros, como norma general, por agilidad y velocidad usaremos la siguiente operatoria:

1. Situarse en el campo en el cual está la información que deseamos buscar. 2. Botón de búsqueda en barra de herramientas. 3. Dejar el cuadro tal como aparece en la fgura anterior (Valores por defecto). 4. Teclear el valor exacto en el cuadro de texto buscar e iniciar la búsqueda del

primero. 5. En caso de no conocer el valor exacto pero sí alguna palabra o un trozo de la

cadena buscada, utilizar los caracteres comodín que nos da OpenOffice Base, de esta forma, se teclea la palabra poniendo un asterisco delante y detrás de la misma. Después marcar la casilla de verificación Expresión con comodines. Pulsar el botón de buscar hasta que aparezca la siguiente indicación

Page 87: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio01

En la base de datos EjemplosPacientes.odb, buscar en la tabla de pacientes, los pacientes con el Apellido2 "Carcel". Deben aparecer uno a uno los siguientes:

Page 88: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio02

Buscar los pacientes que viven en la calle "GUILLEM DE CASTRO". Hay que usar el comodín

Page 89: 1230 - Uso Conjunto Calc y Base (2)

Cambiar el ancho de una columna

Podemos cambiar el ancho de presentación de una columna. Para lo cual:

1. Seleccionamos la columna, haciendo clic sobre la cabecera de la columna

2. Botón derecho del ratón. En el menú contextual seleccionamos Ancho de columna...

3. Aparece el diálogo de Ancho de columna. En el que podemos indicarle un ancho en número o elegir Automático, en este caso será Base quien asigne el ancho de la columna de forma que se puedan leer todos los datos.

También podemos ajustar el ancho de una columna situando el ratón a la derecha del descriptor del campo, la forma del puntero cambia a una doble fecha.

Page 90: 1230 - Uso Conjunto Calc y Base (2)

En este momento podemos hacer dos cosas:

1. Hacer click y sin soltar arrastrar a derecha e izquierda hasta la posición deseada.

2. Hacer doble click con lo que realiza un ajuste perfecto al igual que en la opción comentada anteriormente.

Page 91: 1230 - Uso Conjunto Calc y Base (2)

Ocultar una columna

OpenOffice Base permite ocultar una o más columnas de la tabla temporalmente. Para hacerlo:

1. Seleccionamos la columna que queremos ocultar y ha clic con el botón derecho sobre ella para seleccionar la opción Ocultar columna. Para volver a hacerla visible tendrás que hacer clic con el botón derecho sobre cualquier celda de la primera fila, seleccionar la opción Mostrar columnas y por último hacer clic sobre la columna que queramos que vuelva a ser visible o bien sobre la opción Todas. Observa la figura 2.28.

1. Seleccionamos la columna, haciendo clic sobre la cabecera de la columna

2. Botón derecho del ratón. En el menú contextual seleccionamos Ocultar columna

Mostrar una columna

1. Seleccionamos la columna, haciendo clic sobre la cabecera de la columna 2. Botón derecho del ratón. En el menú contextual seleccionamos Mostrar

columnas. Podremos seleccionar la columna que queremos mostrar o todas las columnas.

Page 92: 1230 - Uso Conjunto Calc y Base (2)

ATENCIÓN: Estas modificaciones se pierden si no se guardan los cambios al salir de OpenOffice Base.

Page 93: 1230 - Uso Conjunto Calc y Base (2)

Ordenación de registros en tablas

Para ordenar rápidamente una tabla según un campo, nos situaremos con el cursor sobre el campo por el cual queramos ordenar y pulsaremos el botón de ordenación Ascendente, o el de ordenación Descendente.

Page 94: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio03

Ordenar la tabla de Pacientes por el campo DomicilioPaciente en orden descendente.

Page 95: 1230 - Uso Conjunto Calc y Base (2)

Ordenación por más de un campo

Para ordenar por más de un campo pulsamos el botón Ordenar:

Aparece la ventana Orden, en la que podemos seleccionar los campos por los que queremos ordenar la tabla, (hasta 3 campos), y el orden ascendente o descendente.

Page 96: 1230 - Uso Conjunto Calc y Base (2)

Filtros

Junto con las operaciones de ordenación mostradas anteriormente, los fltros constituyen la herramienta de trabajo principal en las labores de recuperación de información. La mayoría de trabajo con bases de datos consisten en aplicar por tanto un fltro que limite el número de registros a partir de un criterio de selección y una vez seleccionado este conjunto de registros, aplicar al mismo una adecuada ordenación.

Por tanto podemos definir un fltro como uno o varios criterios de selección aplicados sobre uno o mas campos hasta conseguir únicamente los registros que cumplan la combinación de dichos criterios. Para trabajar con fltros podemos recordar todo lo explicado en el apartado de búsquedas dentro de una tabla. Es decir, se pueden realizar búsquedas exactas o búsquedas parciales utilizando caracteres comodín.

Para usar un filtro hacemos clic en el botón Filtro estándar

Aparece la ventana de creación del Filtro estándar

En la que podemos especificar las siguientes condiciones de filtrado ( en hasta 3 campos)

Igual = Distinto de <> Menor que < Menor o igual <= Mayor que > Mayor o igual >=

Page 97: 1230 - Uso Conjunto Calc y Base (2)

Como.... (permite el uso de comodines '%' es como el asterico *, '?' para indicar un solo carácter)

No como (Negado Como) Vacio No vacio

Pulsando Aceptar aparecen los registros que cumplen la condición de filtrado que hemos introducido.

Cuando estamos usando un filtro aparece marcado el botón usar filtro:

Otros botones de la barra de filtros:

Botón autofiltro: Filtra la tabla con los registros iguales al campo en el que está el cursor. Por ejempo si tenemos el cursor en Apellido1 "ABAD", y pulsamos Autofiltro, nos filtra la tabla con los registros con Apellido1='ABAD'

Datos filtrados:

Page 98: 1230 - Uso Conjunto Calc y Base (2)

Botón eliminar filtro: Borra un filtro previamente introducido.

Page 99: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 04

Ordenar la tabla de Pacientes por primer Apellido de forma ascendente. Colocarse en el apellido ABAD y realizar un autofiltro.

Ejercicio 05

Obtener los registros de pacientes cuyo domicilio incluye la palabra ANDORRA.

Habrá que usar el caracter comodín % o *

Page 100: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 06

Obtener los registros de pacientes cuyo domicilio incluye ALGINET

Page 101: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 07

De la tabla de pacientes obtener los registros de "Mujeres pensionistas que vivan en la residencia Enrenaranjos".

Ejercicio 08

De la tabla de pacientes obtener una lista de todos los pacientes menos los que el primer apellido sea ABAD

Page 102: 1230 - Uso Conjunto Calc y Base (2)

Presentación de la Unidad 2

Hasta ahora hemos visto 2 modos de seleccionar información de una tabla:

Búsquedas Filtros

Hemos visto que aplicando fltros uno detrás de otro, se puede seleccionar información que cumpla condiciones complejas de fltrado. Pero si nos equivocamos en una de las condiciones tenemos que empezar el proceso desde el principio.

Con los filtros además estamos limitados a 3 condiciones de filtrado. Por ejemplo, no podríamos fltrar las "Mujeres pensionistas, que vivan en la residencia Entrenaranjos O en la residencia Ballesol. Tampoco podemos especificar que campos queremos mostrar en el listado ni el orden de las columnas, simplemente se muestran todos los campos que tiene la tabla. Los fltros además no podemos guardarlos. Si construimos un fltro complejo y dentro de X tiempo queremos volver a acceder a esa información tenemos que volver a crear el fltro desde el principio. Con las consultas de selección no tenemos estos inconvenientes.

Page 103: 1230 - Uso Conjunto Calc y Base (2)

Objetivo de la Unidad 2

Saber crear una consulta de selección en una base de datos que nos proporcione la información que precisemos en un momento dado

Page 104: 1230 - Uso Conjunto Calc y Base (2)

Consultas de selección

Una consulta es un objeto de la base de datos OpenOffice Base que sirve para almacenar de forma predefinida un conjunto de operaciones sobre una o más tablas que cuando se ejecutan, como si fuera una macro instrucción compuesta de otras pequeñas instrucciones, conformarán una nueva vista de dicha tabla o tablas.

Las operaciones que podemos incluir en una consulta son:

Selección de campos Orden Filtrado por condiciones

La consulta genera una nueva vista de los datos que presentará solo los campos que queremos, con los registros filtrados que necesitemos y en el orden deseado. Una consulta sirve para generar o devolver información a partir de una o más tablas (una o más consultas, tablas y consultas).

Page 105: 1230 - Uso Conjunto Calc y Base (2)

Pasos previos a la creación de una consulta

Supongamos que nos hacen una demanda de este estilo: Relación alfabética de pacientes pensionistas.

Si tuviéramos que obtener información indagando en un listado obtenido a partir de la tabla completa de pacientes, esto sería un trabajo laborioso y monótono, sobre todo cuando el número de registros es elevado. En ese momento hay que plantearse que mediante las consultas, OpenOffice Base permite obtener la información de manera fácil y rápida.

Este es el pues el primer paso, olvidarse del lápiz, el listado en papel y el clásico punteo y plantearse realizar una consulta.

Lo siguiente es analizar la pregunta que nos hacen y traducirlo a ese lenguaje de interrogación que ya vamos conociendo, es decir:

1. Campos que necesito. 2. Identificación de la(s) tabla(s) que contienen dichos campos.3. Filtros que necesito. 4. Orden de presentación

Una vez traducida, la frase con la que hemos comenzado este punto se convertiría mas o menos en: consulta de la tabla de pacientes, con campos nombre, apellidos y si es activo o pensionista,filtrado por solo pensionistas y ordenado por primer apellido, segundo apellido y nombre.

Como vemos es bastante más largo, pero nos da las bases para poder empezar. Lo siguiente que tenemos que hacer es analizar si disponemos de toda la información referida en el punto anterior. Si disponemos de dicha información tendremos que habilitar mecanismos (permisos, conexiones, etc.) que nos permitirán acceder a la base de datos donde figura dicha información. (En el ejemplo, base de datos de EjemploPacientes)

Identificar en que campos y por tanto en que tabla o tablas se encuentra la información que buscamos. ( En nuestro caso la tabla de Pacientes y los campos apellido1, apellido2, nombre, ActivoPensionista). Seleccionados dichos campos, establecemos los criterios de filtro (ActivoPensionista = P). Establecemos el orden de presentación de registros (Alfabético) y el orden de presentación en la que vamos a presentar las columnas.

Page 106: 1230 - Uso Conjunto Calc y Base (2)

Creación de una consulta

En la ventana de la base de datos

1) Seleccionamos el objeto CONSULTA

2) Hacemos doble clic sobre "Crear una consulta en modo de diseño"

3) Aparece la lista de tablas de la base de datos:

Page 107: 1230 - Uso Conjunto Calc y Base (2)

1. Seleccionamos la tabla que necesitamos2. Hacemos clic sobre botón Añadir3. Clic sobre botón Cerrar.

4) En este momento tendremos en pantalla la ventana de creación de consultas.

Page 108: 1230 - Uso Conjunto Calc y Base (2)

5) Seleccionamos en la tabla el campo que queremos que aparezca en la consulta y lo arrastramos hasta el apartado CAMPO en la sección inferior de la ventana. Cada campo en una columna diferente.

Page 109: 1230 - Uso Conjunto Calc y Base (2)
Page 110: 1230 - Uso Conjunto Calc y Base (2)

Borrar un campo de una consulta

Mientras estamos en el modo de diseño de una consulta, podemos borrar un campo de la consulta:

1) Seleccionamos el campo a eliminar haciendo clic con el ratón en la cabecera del campo. La columna queda seleccionada en video inverso.

2) Pulsamos la tecla suprimir (Supr).

Page 111: 1230 - Uso Conjunto Calc y Base (2)

Ordenación

Podemos ordenar los resultados de una consulta, por diferentes campos, para lo cual hacemos clic con el ratón en el apartado Orden del campo por el que queremos ordenar. Podemos elegir orden ascendente o descendente.

Para quitar el orden en la presentación de datos elegimos (sin ordenar) en el desplegable de ordenación

Mostrar el resultado de una consulta en modo edición

Para ver el resultado de una consulta podemos hacemos clic en Menu Ver -> Vista previa

Page 112: 1230 - Uso Conjunto Calc y Base (2)

En la parte superior de la pantalla podemos ver una muestra de los datos que recupera la consulta:

Page 113: 1230 - Uso Conjunto Calc y Base (2)

Mostrar el resultado de una consulta

Para ver el resultado de una consulta guardada seleccionamos la consulta y hacemos doble clic sobre ella.

Page 114: 1230 - Uso Conjunto Calc y Base (2)

Se abre una ventana con los datos que devuelve la consulta.

Criterios en las consultas

Page 115: 1230 - Uso Conjunto Calc y Base (2)

Para filtrar los datos en una consulta tendremos que especifcar la condición de fltrado en la fila de CRITERIOS de la consulta. Podemos poner criterios en más de un campo.

Para borrar un criterio de filtrado simplemente lo borramos de la fila CRITERIOS

Page 116: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio08

En la base de datos ejemplopacientes.odb, crear una consulta que nos proporcione un "listado alfabético de las mujeres pensionistas".

Lo hacemos paso a paso:

1) En la ventana de base de datos, pulsamos en el objeto Consulta - > Crear una consulta modo dediseño.

2) Seleccionamos la tabla de Pacientes, y pulsamos en Agregar. Luego pulsamos Cerrar.

Page 117: 1230 - Uso Conjunto Calc y Base (2)

3) Seleccionamos los campos que deben ir al listado y uno a uno los vamos arrastrando abajo. Seleccionamos los campos Apellido1, Apellido2, Nombre, Sexo, ActivoOPensionista.

4) Establecemos el orden alfábetico, poniendo orden ascendente a los campos Apellido1, Apellido2, Nombre.

Page 118: 1230 - Uso Conjunto Calc y Base (2)

5) Ponemos los criterios de fltrado en la linea de Criterios,. "M" para Sexo, y "P" para ActivoOPensionista.

6) Guardamos la consulta con el nombre ListadoMujeresPensionistas

Page 119: 1230 - Uso Conjunto Calc y Base (2)

7) Cerramos la consulta en modo diseño y la volvemos a abrir para ver los datos que devuelve.

Page 120: 1230 - Uso Conjunto Calc y Base (2)

Ejemplos de critérios de filtrado

En los criterios de fltrado se admiten valores del tipo mayor que, menor que, igual o mayor que, distinto de, entre... (>, <, >=, <>.).

Si deseamos establecer más de un criterio de selección, justo debajo de la fila Criterio existe otra titulada "O". En ella podemos escribir un nuevo filtro.

Page 121: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio09

En la base de datos EjemploPacientes.odb, crear una consulta que tenga todos los centros que están en GILET, ordenados por en número de centro.

Lo resolvemos paso a paso:

1) Creamos una nueva consulta en modo vista de diseño.

2) Añadimos la tabla CENTROS.

3) Elegimos los campos Centro y NombreCentro.

4) Ponemos ordenación ASCENDENTE al campo Centro.

5) Ponemos el criterio de fltrado al campo NombreCentro. El criterio sera: Como '*GILET*'.

6) Ejecutamos la consulta para ver los resultados.

7) Guardamos la consulta con el nombre ListadoCentrosGilet

Page 122: 1230 - Uso Conjunto Calc y Base (2)

Parametros

Imaginemos que una vez creada la consulta del ejercicio anterior, nos piden una consulta con los centros de salud de Burjasot. De momento tendríamos dos opciones, o bien crear otra consulta como la que hemos hecho para los centros de Gilet, pero cambiando el criterio de filtrado a "BURJASOT", o bien modifIcar la consulta anterior cambiando un criterio por otro. Ambas soluciones no parecen demasiado adecuadas, sobre todo por comodidad. Pensemos que cada vez que quisiéramos obtener los centros de una población en concreto tendríamos que hacer una nueva consulta.

Para solucionar este problema usamos los parámetros. Crearemos una única consulta parametrizada, de forma que cada vez que la ejecutemos, OpenOffice Base nos pregunte, la población de la cual queremos obtener sus centros. Para crear criterios parametrizados usaremos los dos puntos ":". Pondremos dos puntos delante del texto queremos que Base nos muestre como pregunta, cuando ejecutemos la consulta. Lo vemos en un ejercicio:

Ejercicio 10

En la base de datos de EjemploPacientes.odb, a partir de la tabla de centros, crear una consulta que nos dé el codigo del centro, y el nombre del centro. La consulta debe preguntar la población del centro.

Lo resolvemos paso a paso:

1) Creamos una nueva consulta en modo vista de diseño.

2) Añadimos la tabla CENTROS.

3) Elegimos los campos Centro y NombreCentro.

4) Ponemos ordenación ASCENDENTE al campo Centro.

5) Ponemos el criterio de filtrado al campo NombreCentro. El criterio sera: Como :Diga_Población

Page 123: 1230 - Uso Conjunto Calc y Base (2)

6) Ejecutamos la consulta para ver los resultados. Aparece la ventana de petición del parametro:

En la casilla "Valor" podemos introducir la población deseada, por ejemplo GILET, también podemos poner caracteres comodín. En este caso el '%' hace las veces de '*'. Por ejemplo si queremos un listado de los Centros de Salud, en el campo la casilla "Valor" pondremos: %SALUD%

Page 124: 1230 - Uso Conjunto Calc y Base (2)

Crear consultas con más de una tabla

Podemos crear consultas que nos muestren información contenida en dos o más tablas. El proceso es sencillo, sólo tenemos que incluir en la consulta las tablas que contienen los campos que queremos mostrar, ahora bien, para que la información que muestre la consulta tenga sentido, sea correcta, las tablas tienen que estar relacionadas. Lo vemos con un ejercicio:

Ejercicio 11

A partir de la base de datos EjemploPacientes.odb, crear una consulta que nos proporcione los facultativos que trabajan en un Centro determinado.

1) Tenemos que identificar que campos queremos que salgan en la consulta y en que tablas están.

2) Necesitamos los nombres de los facultativos. Este dato está en la tabla FACULTATIVOS, en el campo NombreFacultativo.

3) Necesitamos los nombres de los Centros. Este dato está en la tabla CENTROS, en el campo NombreCentro.

4) Por lo tanto para la consulta necesitamos 2 tablas, Facultativos y Centros. Vemos si tenemos las tablas relacionadas. Si que están relacionadas a partir del campo Centro.

5) Creamos una nueva consulta en modo vista Diseño.

6) Agregamos las tablas Centros y Facultativos.

7) Elegimos el campo Centro de la tabla Centros.

8) Elegimos el campo NombreFacultativo de la tabla Facultativos.

9) Ponemos orden ascendente, en el campo Centro.

10) Parametrizamos el campo Centro de forma que al ejecutar la consulta nos pregunte la población. En el criterio pondremos: COMO :Dime_Población

11) Guardamos la consulta con el nombre ListadoFacultativosPorCentro

Page 125: 1230 - Uso Conjunto Calc y Base (2)
Page 126: 1230 - Uso Conjunto Calc y Base (2)

Ejercicios 12, 13 y 14

Ejercicio 12

A partir de la base de datos EjemploPacientes.odb, crear una consulta que nos de el código del centro, el nombre del centro y la dirección del centro. Ordenar el listado por código del centro. (NOTA: El código del centro está en el campo "Centro") Guardar la consulta como Ejercicio 12-1

Modifcar la consulta del listado de centros para que solo salgan los centros de la provincia de valencia. (NOTA los centros de la provincia de valencia tienen un código de centro que empieza por 46) Guardar la consulta como Ejercicio 12-2

Modifcar la consulta del listado de centros para que salgan una relación alfabética de los centros cuyo nombre de centro empieza por L. Guardar la consulta como Ejercicio 12-3

Modificar la consulta del listado de centros para que salgan una relación alfabetica de los centros cuyo nombre de centro empieza por L. o por J Guardar la consulta como Ejercicio 12-4

Modificar la consulta del listado de centros para que salgan todos los centros menos los de la provincia de valencia. (NOTA usar el operador NO)

Ejercicio 13

A partir de la base de datos EjemploPacientes.odb, crear una consulta que nos de el código del centro, el nombre del centro y la dirección del centro. Ordenar el listado por código del centro. Filtrar los datos para que solo salgan los CENTROS DE SALUD que esten situados en una AVENIDA.

Guardar la consulta como Ejercicio-13

Ejercicio 14

Page 127: 1230 - Uso Conjunto Calc y Base (2)

Modificar la consulta del ejercicio anterior para que nos de los CONSULTORIOS que están situados en alguna PLAZA

Page 128: 1230 - Uso Conjunto Calc y Base (2)

Ejercicios 15, 16 y 17

Ejercicio 15

Modificar la consulta del ejercicio anterior para que salgan los consultorios que están situados en una plaza o en una avenida. Tienen que salir 19 registros

Guardar la consulta como Ejercicio-15

Ejercicio 16

En la base de datos EjemploPacientes.mdb, modificar la consulta "Domicilios de Pacientes", para obtener los pacientes de distintas poblaciones según demanda. Es decir en el campo DescrNucleo, tendremos que poner un parámetro que nos pregunte la población, y la consulta nos devolverá los pacientes de la misma.

Guardar la consulta como Ejercicio-16

Ejercicio 17

En la base de datos EjemploPacientes.odb crear una consulta que nos de los nombres de los facultativos (ordenados alfabéticamente) a los que no se les ha asignado un número de colegiado.

Page 129: 1230 - Uso Conjunto Calc y Base (2)

Guardar la consulta como Ejercicio-17

Page 130: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio18

En la base de datos EjemploPacientes.odb crear una consulta que nos de un listado de todos los centros con código de centro, nombre de centro, y nombre de facultativo que trabaja en el centro. Ordenar por código de centro.

Guardar la consulta como Ejercicio18

Indicar que facultativos trabajan en los siguientes centros:

Vemos que en nuestra consulta no aparecen estos centros? ¿Por qué?. En estos centros no trabaja (por que aun no se ha asignado) ningún facultativo. Cuando hacemos una consulta de más de una tabla, hemos dicho anteriormente que las dos tablas tienen que poder combinarse a partir de un campo común. Esta combinación tiene unas propiedades. Para acceder a las propiedades de la combinación:

1) Hacemos clic en la la linea que une las dos tablas, vemos que se queda seleccionada en azul:

2) Botón derecho del ratón sobre la linea de combinación, y seleccionamos Editar

Page 131: 1230 - Uso Conjunto Calc y Base (2)

Aparece la ventana de propiedades de la unión:

Page 132: 1230 - Uso Conjunto Calc y Base (2)

En dicha ventana aparecen 3 zonas diferenciadas:

TABLAS IMPLICADAS: Muestra las 2 tablas que estamos combinando, en nuestro caso Facultativos y Centros

CAMPOS IMPLICADOS: Muestra los nombres de los campos a partir de los cuales se hace la combinación. En nuestro caso combinamos a partir de los campos FACULTATIVOS.Centro y CENTROS.Centro

TIPO DE COMBINACIÓN: Indica como va a hacer Base la combinación de las dos tablas. Lo vemos con más detalle.

TIPOS DE COMBINACIÓN

Si vemos el menú desplegable de tipo de combinación veremos que tenemos 4 posibilidades:

1) JOIN INTERNO: Los resultados de la combinación contienen los registros en los que los contenidos de los campos vinculados de ambas tablas son iguales

Veamos que quiere decir esto con un ejemplo. Supongamos que tenemos las siguientes tablas de FACULTATIVOS y CENTROS:

Page 133: 1230 - Uso Conjunto Calc y Base (2)

Si hacemos una combinación JOIN INTERNO obtendremos el siguiente resultado:

2) JOIN IZQUIERDO: Contiene TODOS los registros de la tabla de la Izquierda (Facultativos) y solo los registros de la tabla de la derecha (Centros) en los que los contenidos de los campos de los campos vinculados son iguales.

En las tablas anteriores tendriamos este resultado

Observese que en esta combinacion si que aparece el registro de Antonio Gimeno con los campos Centro y NombreCentro vacios.

Page 134: 1230 - Uso Conjunto Calc y Base (2)

3) JOIN DERECHO: Contiene TODOS los registros de la tabla de la Derecha (Centros) y solo los registros de la tabla de la izquierda (Facultativos) en los que los contenidos de los campos de los campos vinculados son iguales.

EJERCICIO 18 (CONTINUACIÓN)

Crear la consulta anterior como Ejercicio18-INTERNO. Comprobar el número de registros que devuelve la consuta, debe ser 65

Modificar la consulta anterior para que el tipo de combinación sea JOIN-DERECHO. Observese que la tabla de la izquierda de la combinación debe ser FACULTATIVOS y la de la derecha CENTROS. Guardar la consulta como Ejercicio18-DERECHO. Comprobar que la consulta devuelve 118 registros y que muchos centros no tienen facultativo asociado.

Modificar la consulta anterior para que el tipo de combinación sea JOIN-IZQUIERDO. Guardar la consuta como Ejercicio18-IZQUIERDO. Comprobar que la consulta devuelve 66 registros y que el facultativo "ALMENDROS CORTINA OSCAR" no tiene centro asignado.

Page 135: 1230 - Uso Conjunto Calc y Base (2)
Page 136: 1230 - Uso Conjunto Calc y Base (2)

Consultas de agregación

Abrimos la consulta "Domicilios de pacientes" . En esta consulta tenemos nombre, domicilio y población de los pacientes. Imaginemos que deseamos saber cuantos pacientes hay por población, es decir conseguir una consulta de este tipo:

Lo que hacemos en esta consulta es agrupar los registros por el campo DescrNucleo. En la consulta original saldrían 56 registros de ALBORACHE, 541 de ALGINET.. En esta consulta todos estos registros se agrupan en uno y además en la segunda columna le indicamos a Base que nos cuente el número de registros que tienen ese valor.

Ejercicio 19

En la base de datos EjemplosPacientes.odb, a partir de la consulta "Domicilios de pacientes", crear una consulta que nos proporcione una lista alfabética de poblaciones y el número de pacientes que hay en cada una de ellas.

Lo hacemos paso a paso:

1) Creamos una nueva consulta en modo diseño.

2) Agregamos la consulta "Domicilios de pacientes"

Page 137: 1230 - Uso Conjunto Calc y Base (2)

3) Agregamos a la consulta los campos DESCRNUCLEO y cualquier otro campo de la tabla por ejemplo APELLIDO1

4) En la fila FUNCION, ponemos AGRUPAR en la columna DescrNucleo, y CONTAR en la columna APELLIDO1

5) En la fila ALIAS ponemos NumeroPacientes, a la columna APELLIDO1.

Page 138: 1230 - Uso Conjunto Calc y Base (2)

6) Guardar la consulta como EJERCICIO-19

7) Abrir la consulta y comprobar que sale algo parecido a

Page 139: 1230 - Uso Conjunto Calc y Base (2)

En este ejercicio hemos usado la función de agregación CONTAR. Pero OpenOffice Base permite usar las siguientes funciones de agregación:

Promedio Contar Máximo Mínimo Suma Desviación estandar Varianza

Page 140: 1230 - Uso Conjunto Calc y Base (2)

Base de datos de Neptuno

Vamos a cambiar de base de datos. Usaremos la base de datos Neptuno.odb. Neptuno es la base de datos de una pequeña empresa de venta de diferentes productos alimentarios. La empresa tiene vendedores, clientes, productos, pedidos etc. Abrimos la base de datos y hacemos clic en Menu Herramientas -> Relaciones para familiarizarnos un poco con las tablas de la base de datos y las relaciones.

Page 141: 1230 - Uso Conjunto Calc y Base (2)
Page 142: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio20

En la base de datos Neptuno.odb, crear a partir de la consulta Facturas, otra consulta que nos agru pe por país destinatario, cuanto nos cuesta los gastos de envio (campo cargo). Queremos saber el total gastado, cuantos envíos hemos hecho, el máximo por país, el mínimo por país, y el promedio.

Lo hacemos paso a paso: 1

) Creamos una nueva consulta en modo de diseño

2) En la ventana de tablas, agregamos la consulta FACTURAS

3) Bajamos los campos PaisDestinatario, y Cargo. Este último campo lo bajamos 5 veces.

4) Ponemos orden ascendente en el campo PaisDestinatario

5) En caso de no tener activada la linea FUNCION hacemos clic en el botón "Funciones" para activarla

6) En el campo PaisDestinatario ponemos función de agrupación AGRUPAR. En los campos Cargo, vamos seleccionando las funciones de agrupación: Suma, Contar, Mínimo, Máximo, Promedio.

Page 143: 1230 - Uso Conjunto Calc y Base (2)

7) En la linea de ALIAS, ponemos los alias para los campos agregados de Cargo.

8) Guardamos la consulta como Ejercicio20

9) Ejecutamos la consulta para ver el resultado.

Page 144: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 21

En la base de datos de Neptuno.odb, crear a partir de la consulta de FACTURAS una consulta que nos de cuantos pedidos ha realizado cada vendedor.

1) Tendremos que hacer una consulta de agrupación.

2) Agruparemos por el campo vendedor.

3) Usaremos la función de agrupación CONTAR, sobre el campo Destinatario.

4) Poner ALIAS "Numero de Pedidos" al campo Destinatario.

5) Guardar la consulta como Ejercicio21

Ejercicio 22

Modifcar la consulta del ejercicio anterior para que sepamos cuantos pedidos ha realizado cada vendedor en cada país. El resultado de la consulta debe ser algo parecido a:

Page 145: 1230 - Uso Conjunto Calc y Base (2)

Guardar la consulta como Ejercicio-22

Page 146: 1230 - Uso Conjunto Calc y Base (2)

Consultas con campos calculados

Cuando creamos una consulta no tenemos por que limitarnos únicamente a los campos de la tabla o consulta subyacentes. También podemos usar expresiones y funciones para crearnos campos calculados.

Ejemplos de campos calculados pueden ser:

A partir de una FechaPedido, calcular otro campo que nos de el MesPedio, AñoPedido, etc.

Días transcurridos entre 2 fechas. Concatenación de campos separados en un único campo. Operaciones aritméticas sobre campos numéricos.

Page 147: 1230 - Uso Conjunto Calc y Base (2)

Operaciones con cadenas de caracteres

Las cadenas de caracteres normalmente están asociadas a campos de tipo texto. El operador princpal para este tipo de datos es la concatenación o unión de cadenas, lo expresamos con el símbolo ||. Así '

'José' || 'López' da como resultado 'JoséLópez' 'José' || ' ' || 'López' da como resultado 'José López'

Ejercicio 23

En la base de datos EjemploPacientes.odb, a partir de la consulta "Domicilios de Pacientes", crear una consulta que nos de el siguiente resultado:

Page 148: 1230 - Uso Conjunto Calc y Base (2)

Guardar la consulta como Ejercicio-23

Page 149: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 24

Basado en la tabla Pacientes y NucleosPoblacion de la base de datos EjemploPacientes. Crear una nueva consulta que nos de el siguiente resultado Fijarse en el nombre del campo.

Tendremos que seguir los siguientes pasos:

1) Incluir las tablas mencionadas. Combinarlas a traves de los campos PACIENTES.CodigoPoblacion -> NUCLEOSPOBLACION.CDPOBL

2) Crear un nuevo campo formado por la concatenación de nombre, apellidos y DescrNucleo. Con la inclusión de algunas cadenas entrecomilladas de valor fijo.

3) Crear el alias "Encabezado Carta" para el campo calculado.

Page 150: 1230 - Uso Conjunto Calc y Base (2)
Page 151: 1230 - Uso Conjunto Calc y Base (2)

Cálculos numéricos

Podemos realizar las operaciones aritmeticas comunes:

Suma + Resta - Producto * División /

Podemos usar paréntesis () para defnir el orden en que se realizan las operaciones. Los operandos, pueden ser campos, parámetros o cantidades fijas.

Ejercicio25

En la base de datos Neptuno.odb, crear una nueva consulta a partir de la tabla "Detalles de pedidos" en la que aparezcan los siguientes campos:

Cantidad PrecioUnidad Importe: Será un campo calculado "Cantidad" * "PrecioUnidad" Descuento ImporteNeto: Será un campo calculado que nos de el Importe menos el

descuento.

Page 152: 1230 - Uso Conjunto Calc y Base (2)

Conclusión del Módulo 2

En este módulo hemos visto como extraer la información que precisamos de una base de datos. Hemos empezado con las Búsquedas y Filtros que nos sirven para buscar información puntual en un momento dado.

Posteriormente hemos conocido las consultas como el modo que tienen las bases de datos de almacenar los procesos que nos permiten seleccionar la información que precisamos.

Page 153: 1230 - Uso Conjunto Calc y Base (2)

Presentación del Módulo 3

En este módulo vamos a centrarnos en Calc, el programa de hoja de cálculo de la suite OpenOffice. Será el programa base desde el que analizaremos la información, tanto la que podamos crear en Calc, como la información almacenada en Base de OpenOffice.

El módulo se estructura en 3 unidades:

La primera es una pequeña introducción - repaso de conocimientos básicos de hoja de cálculo

En la segunda unidad aprenderemos a usar las tablas dinámicas de Calc, que son una forma muy rápida y efectiva de analizar datos en esta hoja de cálculo.

En la tercera unidad aprenderemos a establecer conexiones con fuentes de datos en diferentes formatos: Access, Dbase, FoxPro, Hojas de cálculo, ficheros de texto plano. Para lo cual usaremos conjuntamente Base y Calc.

El módulo tiene un componente práctico muy acentuado. Recomendamos al alumno que lea los procesos descritos e intente comprender la operativa de los mismos (sin memorizar) y que luego los reproduzca en su ordenador. Durante algunos ejercicios deberemos guardar las hojas de cálculo realizadas y enviarlas posteriomente al profesor. Se indica claramente en cada ejercicio.

Page 154: 1230 - Uso Conjunto Calc y Base (2)

Objetivos del Módulo 3

Conocer los conceptos básicos que se manejan en programas de hoja de cálculo (libro, hoja, celda, rango, referencias relativas, absolutas y mixtas, formulas, funciones suma, promedio, si, etc.).

Saber registrar una base de datos/origen de datos en OpenOffice. Conocer las tablas dinámicas. Saber analizar información de bases de datos

Base OpenOffice, mediante esta herramienta. Acceso a diferentes formatos de datos (TXT, DBASE, MDB, etc) con Base y

su posterior análisis con Calc.

Page 155: 1230 - Uso Conjunto Calc y Base (2)

Presentación de la Unidad 1

En esta unidad se presenta la hoja de cálculo Calc, a nivel de introducción. Se introducen los conceptos básicos que manejan todas las hojas de cálculo, libros, hojas, celdas, rangos, fórmulas, etc.

Calc es compatible con Excel y los usuarios no avanzados no van a notar diferencias.

Los alumnos que conozcan Excel pueden dedicar menos tiempo a esta unidad.

Page 156: 1230 - Uso Conjunto Calc y Base (2)

Objetivo de la Unidad 1

Hacer una introducción básica a los conceptos manejados en las hojas de cálculo.

Conocer los siguientes conceptos: Libro, Hoja, Celda, Rango, Formula, Dirección de Celda, Referencias absolutas, Referencias Fijas

Métodos basicos usados en hoja de calculo, copiar una formula, arrastrar una formula

Conocer las funciones básicas de calc, SUMA, PROMEDIO, BUSCARV, SI Tener una visión básica de que tipo de problemas se solucionan con hojas de

cálculo

Page 157: 1230 - Uso Conjunto Calc y Base (2)

Libro

Cada programa de OpenOffice está orientado a resolver un tipo de problema. Dependiendo del problema al que está orientado, nos ofrece a nosotros como usuarios una serie de objetos que podemos crear y manejar. Por ejemplo el programa Base, es una base de datos y en el podemos crear los siguientes objetos: Tablas, Consultas, Formularios, etc.

Calc es una hoja de cálculo. Las hojas de cálculo están orientadas a resolver problemas en los que podemos hacer cálculos complejos sobre datos dispuestos en forma de tablas. Los objetos que ofrece Calc son las celdas, flas, columnas, hojas, formulas, etc.

Libro de Calc - Fichero de Calc

Todos los datos, hojas de cálculo, tablas, gráfcos, etc que podamos crear en Calc, se guardan en un único fichero con la extensión ODS. Según la terminología de Calc, cuando abrimos un fichero con la extensión ODS, estamos abriendo un "libro de Calc".

Por razones de compatibilidad con Microsoft Office, Calc también permite trabajar con el formato XLS, aunque su formato nativo es el ODS.

Page 158: 1230 - Uso Conjunto Calc y Base (2)

Hoja de cálculo

Un libro de Calc puede tener muchas hojas de cálculo. Cuando abrimos Calc se crea automáticamente un libro en blanco, con 3 hojas de cálculo vacías. En la parte inferior izquierda de la pantalla de Calc, podemos ver unas solapas con los nombres de las hojas de nuestro libro. Podemos pasar de una hoja a otra haciendo clic en estas etiquetas.

Haciendo doble clic en una de estas etiquetas podremos cambiar el nombre de la hoja.

Pulsando el botón derecho del ratón sobre una de estas etiquetas aparece el menú contextual, que permite insertar, eliminar, cambiar el nombre a las hojas

Page 159: 1230 - Uso Conjunto Calc y Base (2)
Page 160: 1230 - Uso Conjunto Calc y Base (2)

Fila, Columna, Celda

Calc organiza el espacio de trabajo en hojas de cálculo. Las hojas de cálculo son rejillas (grids) organizadas en filas y columnas. La intersección de una fila y una columna se llama celda.

Las columnas se referencian por letras. Por ejemplo la columna "A", la "BC" etc. Las filas se referencian por números. Fila 23. Las celdas se referencian por la columna y por la fila. Así celda A10.

La referencia de una celda también se llama dirección. La dirección de una celda se puede usar cuando creemos fórmulas para referirnos al contenido de la celda.

La celda activa, es la celda en la que está el cursor de Windows.

Una celda puede contener:

Page 161: 1230 - Uso Conjunto Calc y Base (2)

Datos alfanuméricos. Datos numéricos. Fórmulas que calculen datos a partir de otras celdas.

Page 162: 1230 - Uso Conjunto Calc y Base (2)

Fórmulas

Las fórmulas en Calc son expresiones que se utilizan para realizar cálculos o procesamiento de valores, produciendo un nuevo valor que será asignado a la celda en la cual se introduce dicha fórmula. Las formulas empiezan siempre con el signo igual "=".

Una fórmula en Calc puede contener cualquiera de los siguientes elementos:

referencias a celdas constantes operadores funciones

Por ejemplo:

=A1+A2 , es una fórmula que nos calculará la suma del contenido de la celda A1 y la celda A2. Tiene 2 referencias a celdas y un operador (suma).

=A1 + 10 es una fórmula que nos calculará la suma del contenido de la celda A1 con el valor 10. Contiene 1 referencia a celda ,una constante, y un operador (suma).

=SUMA(A1:A5) , es una fórmula que calcula la suma de los contenidos de las celdas A1, A2, A3, A4, A5. Contiene la función suma

Page 163: 1230 - Uso Conjunto Calc y Base (2)

Rango de celdas

Un rango de celdas será un conjunto de celdas contiguas. Los rangos se referencian indicando la di- rección de su celda superior izquierda, dos puntos ":" y la dirección de la celda inferior derecha.

Page 164: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 01

Introducir los siguientes datos en una columna de la hoja de cálculo. Empezar en la celda A1.

Poner cada dato en una celda. (Antonio, Luisa, David, Maria, 125, 1395.65 ).

Ejercicio 02

Una empresa de venta de productos, desea analizar la evolución de las ventas de sus vendedores a lo largo del año. Los de contabilidad nos proporcionan los siguientes datos de ventas mensuales de cada vendedor. De enero a diciembre:

Ana (125, 200, 350, 400, 651, 3500, 7000, 12500, 10000, 9500, 6890, 11850)

Luis (4500, 6000, 3895, 4125, 6000, 5600, 9000, 6500, 7690, 3690, 1250, 5000)

Antonio (6500, 8900, 7450, 5900, 8190, 7654, 4950, 3100, 9000, 2590, 9100, 8000)

Laura ( 3000, 4000, 3500, 4100, 3900, 3800, 3500, 3000, 2000, 1500, 1250, 950)

Page 165: 1230 - Uso Conjunto Calc y Base (2)

Tenemos que organizar estos datos de ventas por meses en una tabla. Por una parte tenemos los meses del año, por otra los nombres de los vendedores. Tendremos que decidir donde vamos a poner a cada uno. Es decir ¿ponemos los meses en una fila, o en una columna?.

SOLUCIÓN 1 (Meses en la fila, vendedores en la columna)

SOLUCIÓN 2 (Vendedores en la fila, meses en la columna)

Page 166: 1230 - Uso Conjunto Calc y Base (2)

¿Por cual optamos? Como muchas veces en informática, no hay una solución correcta y otra incorrecta. Vamos a elegir la segunda solución, por comodidad para que la hoja de cálculo nos quepa en la pantalla sin desplazarnos con el cursor.

Nos situamos en A6 e introducimos los nombres de los meses. Vamos introduciendo el resto de los datos:

Solo con tener organizados los datos en una tabla, ya parecen más claros que la lista que nos dieron de contabilidad. Queremos saber el total de ventas por meses. Es decir, tendremos que añadir una columna más con el rótulo "Total Mes"

Page 167: 1230 - Uso Conjunto Calc y Base (2)

En la celda F6, introduciremos una fórmula que nos calcule el total de ventas de enero. Dicha formula deberá sumar las ventas de los 4 vendedores. Vamos a usar la función SUMA, que es una de las más importantes de las incluidas en Calc.

Nos situamos en F6 y pulsamos el botón SUMA.

Vemos que en F6, ya tenemos calculado el total de ventas de Enero.

Vamos a introducir las formulas para los meses de Febrero a Diciembre. Vamos a aprovechar que ya hemos introducido la formula de Enero, y la vamos a arrastrar hacia abajo.

Page 168: 1230 - Uso Conjunto Calc y Base (2)

Para arrastrar una formula de una celda, primero hacemos clic con el ratón sobre esa celda, es decir hacemos que sea la celda activa. Luego nos situamos con el ratón en la esquina inferior derecha de la celda, y cuando el cursor del ratón cambia de forma y se convierte en una cruz negra, pinchamos con el ratón y arrastramos.

Page 169: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 02 - (2ª parte)

Ya tenemos la columna con los totales de venta por mes. Vamos a incluir una fla más donde pondremos los totales de ventas por vendedor.

Vamos a calcular las ventas de los vendedores por trimestres. Pondremos los totales de cada trimestre a partir de la celda A23.

Page 170: 1230 - Uso Conjunto Calc y Base (2)

En B23 pondremos una fórmula que calcule el total de ventas del primer trimestre de Ana. Será una fórmula que sume el rango B6:B8.

=SUMA(B6:B8)

Page 171: 1230 - Uso Conjunto Calc y Base (2)

¿Podemos arrastrar esta fórmula hacia abajo? Lo probamos.

Page 172: 1230 - Uso Conjunto Calc y Base (2)

Parece que si que hemos podido. Pero ¿Son correctos los datos? Los datos de ventas trimestrales de Ana deberían ser:

La fórmula que hemos arrastrado hacia abajo no funciona para los otros trimestres. Esto es así por la forma como trabaja Calc y referencia los datos de las celdas en las fórmulas. Estamos usando REFERENCIAS RELATIVAS. En la fórmula del

Page 173: 1230 - Uso Conjunto Calc y Base (2)

primer trimestre le estamos diciendo a Calc:

Al arrastrar la fórmula hacia abajo tenemos:

Page 174: 1230 - Uso Conjunto Calc y Base (2)

En este caso para el segundo trimestre estamos sumando las ventas de Febrero, Marzo, Abril, lo cual es incorrecto.

Las fórmulas del trimestre correctas son:

Page 175: 1230 - Uso Conjunto Calc y Base (2)

Estas fórmulas, de total por trimestre para la vendedora "Ana" si que las podemos arrastrar hacia la derecha, para los otros vendedores.

Page 176: 1230 - Uso Conjunto Calc y Base (2)
Page 177: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 02 - (3ª parte)

Vamos a añadir una columna a la tabla donde vamos a calcular lo que se paga de iva, mensualmente. Lo calcularemos como el 18% del total de ventas de cada mes.

Previamente vamos a poner el porcentaje de iva en la celda B2. Primero le damos formato "porcentaje" a la celda, haciendo clic en el botón de estilo porcentual.

La fórmula para la celda G6 es =B2*F6

Si esta fórmula la arrastro hacia abajo no va a funcionar, ya que la celda donde está el porcentaje de IVA se mantiene fija aunque nosotros nos desplacemos hacia abajo.

Para poder arrastrar la fórmula hacia abajo necesitamos que la celda donde está el porcentaje de IVA se quede fija. Es decir la referencia a esta celda no puede ser relativa, tiene que ser una REFERENCIA ABSOLUTA. Las referencias absolutas se indican con un signo del dólar delante de la referencia de la columna y de la fla. Así el porcentaje del iva en referencia absoluta es $B$2.

Modifcamos la fórmula de la celda G6 como =$B$2*F6. Ahora si que la podemos arrastrar hacia abajo, sin problemas.

Cada vendedor ha negociado que recibirá un porcentaje sobre sus ventas como comisión, los porcentajes pactados son:

Añadimos una línea a la tabla para poner los porcentajes de comisión.

Page 178: 1230 - Uso Conjunto Calc y Base (2)

Las comisiones se pagan trimestralmente, por lo que queremos tener una tabla con la comisión a pagar trimestre a trimestre, por vendedor. Lo organizaremos así:

Vamos a crear la fórmula para la comisión del primer trimestre de Ana. En la celda B27. Queremos crear una fórmula que podamos arrastrar tanto a la derecha (para los otros vendedores), como abajo (para los otros trimestres).

En principio la fórmula es =B19*B23

Vamos a examinar que pasa si arrastramos la fórmula hacia abajo, para ponerla a los otros trimestres.

Page 179: 1230 - Uso Conjunto Calc y Base (2)

Veamos que pasa si arrastramos la fórmula hacia la derecha para los otros vendedores:

Recapitulando, en B27 pondremos la fórmula =B19*B23. Ahora bien B19 hace referencia al porcentaje de comisión del vendedor, y para poder arrastrarla hacia abajo tiene que tener referencia FIJA en la fila, pero referencia RELATIVA en la columna si queremos arrastrarla hacia la derecha. Por lo tanto necesitamos una referencia MIXTA. Pondremos un símbolo de $ delante de la parte fija, en este caso la fila: B$19.

La celda B23 contiene las ventas del trimestre y puede tener referencia relativa, tanto cuando arrastro hacia abajo como cuando arrastro a la derecha.

Page 180: 1230 - Uso Conjunto Calc y Base (2)

La fórmula final para B27 será =B$19*B23

La ponemos y la arrastramos hacia abajo y a la derecha

Guardar la hoja creada como Ejercicio02.ods

Page 181: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 03

Añadir una columna a la tabla para calcular los promedios de ventas mensuales. Usar la columna H

Calc tiene muchas funciones incorporadas. De momento conocemos la función SUMA. En este ejercicio vamos a usar la función PROMEDIO. Como no conocemos todas las funciones vamos a usar la opción de insertar función, que nos abre un ayudante, en el que paso a paso podremos elegir la función que necesitemos, aunque no conozcamos todas las funciones de memoria.

Vamos pues a situar el cursor en H6, que es donde vamos a insertar la función promedio. Queremos que nos calcule el promedio de lo vendido por los vendedores en el mes de enero, es decir el promedio del rango B6:E6

Hacemos clic con el ratón en el botón de insertar función:

Page 182: 1230 - Uso Conjunto Calc y Base (2)

Se abre el ayudante de insertar función. Las funciones están clasifcadas por categorías

Seleccionamos la categoría "Estadísticas" y buscamos la función PROMEDIO.

Page 183: 1230 - Uso Conjunto Calc y Base (2)

Vemos que en la ventana del ayudante aparece una pequeña descripción de lo que hace la función: "Devuelve el promedio de los argumentos"

También está disponible un botón para buscar ayuda sobre esa función.

Hacemos clic en SIGUIENTE y aparece una ventana para insertar los argumentos de la función: Hemos quedado antes, que queremos hacer el promedio de los datos del rango B6:E6. Podemos escribir el rango directamente:

Page 184: 1230 - Uso Conjunto Calc y Base (2)

O bien si desconocemos el rango de datos, primero plegaremos la ventana de inserción de argumentos, haciendo clic en el botón:

Page 185: 1230 - Uso Conjunto Calc y Base (2)

Al pulsar en el botón de plegado de argumentos, se pliega la ventana dejandonos ver la hoja de calculo subyacente, de manera que podemos elegir el rango directamente con el ratón.

Con el ratón seleccionamos el rango que queremos introducir como argumento de la función B6:E6. Vemos que Calc lo introduce automáticamente como argumento de la función. Volvemos a desplegar la ventana, haciendo clic en el mismo botón. Pulsamos ACEPTAR

Ahora ya tenemos el promedio del mes de Enero. Arrastrar la formula para los otros meses.

Guardar la hoja de cálculo como Ejercicio03.ods

Page 186: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 04

Un profesor crea una hoja de cálculo para gestionar las califcaciones de exámenes de sus alumnos. Las notas de los alumnos son las siguientes:

Queremos que en la columna CALIFICACIONES aparezca un texto, dependiendo de la nota. Vamos a suponer que solo hay 2 calificaciones APTO cuando la nota del examen igual o mayor que 7 y NO APTO en caso contrario.

Nos ponemos en la celda D3 y creamos la fórmula, luego la arrastraremos hacia abajo.

Page 187: 1230 - Uso Conjunto Calc y Base (2)

Vamos a usar la función SI. Hacemos clic en el botón pegar función.

Seleccionamos la categoría de funciones lógicas, y luego la función SI.

La función SI, tiene 3 argumentos:

PRUEBA LOGICA. Para Calc prueba lógica es cualquier expresión que se pueda evaluar a Verdadero o Falso. En la expresión lógica, podemos usar operadores de comparación ( = , >, <, <>, >=, <=), o también otras funciones. También podemos hacer referencia a celdas o rangos. Por ejemplo C3>=7 es una prueba lógica. También lo es C3 > D4.

VALOR SI VERDADERO. Es el valor que devuelve la función SI, si la prueba lógica se evalúa a VERDADERO. Podemos poner una constante numérica, un texto, otra función, etc.

Page 188: 1230 - Uso Conjunto Calc y Base (2)

VALOR SI FALSO. Es el valor que devuelve la función SI, si la prueba lógica se evalúa a FALSO.

Por lo tanto, nuestra prueba lógica será C3>=7, el valor si verdadero el texto "APTO" así entre comillas, y el valor si falso "NO APTO".

Añadir una columna a la tabla con la calificación tradicional: es decir:

Page 189: 1230 - Uso Conjunto Calc y Base (2)

Nos ponemos en E3 y empezamos a escribir la fórmula. Esta vez la haremos directamente sin el ayudante.

=SI(C3<5;"Suspenso"; VALOR_SI_FALSO

La primera parte de la fórmula parece clara, preguntamos si el valor de la nota del examen es menor de 5, si es así la fórmula devolverá "Suspenso", estamos preguntando por el Tramo1 de la tabla.

Si la prueba lógica anterior C3<5, se evalúa a falso, sabemos que la nota es mayor o igual a 5, por lo que la nota debe estar en los tramos 2 a 5 de la tabla. Debemos seguir preguntando para poder acotar más. Lo hacemos con otra función SI.

=SI(C3<5;"Suspenso";SI(C3 <6;"Sufciente";VALOR_SI_FALSO

Si la prueba lógica C3<6 se evalúa a falso, sabemos que la nota es mayor o igual a 6 por lo que estamos en los tramos 3 a 7. Seguimos preguntando. Seguimos este proceso y al final obtenemos la fórmula:

=SI(C3<5;"Suspenso";SI(C3 <6;"Sufciente";SI(C3<7;"Bien";SI(C3<9;"Notable";"Sobresaliente"))))

Guardar la hoja de cálculo como Ejercicio04.ods

Page 190: 1230 - Uso Conjunto Calc y Base (2)

Ejercicio 05

Supongamos que tenemos una tabla de productos de ofcina, como la que muestra la tabla:

Deseamos crear una hoja de cálculo en la que introduciendo el código del producto (celda B1), automáticamente aparezca su descripción y su precio (celdas B2 y B3). Para ello vamos a usar la función BUSCARV. Búsqueda en vertical.

La función BUSCARV tiene los siguientes parámetros:

Page 191: 1230 - Uso Conjunto Calc y Base (2)

Lo que hace la función es buscar el "valor buscado", en la primera columna de una tabla o "matriz buscar en". Si lo encuentra devuelve un valor de esa fila indicado por el parámetro "columna". El último parámetro "ordenado" indica si la "matriz buscar en" está ordenada o no, nosotros siempre pondremos FALSO

VALOR BUSCADO: Es donde hemos introducido el código, es decir celda B1. MATRIZ BUSCAR EN: El rango donde está la tabla de productos, no

incluimos la cabecera. Es decir E2:G6. INDICADOR COLUMNAS: Será 2 en el caso de la descripción del producto, y

3 en el precio.

Guardar la hoja de cálculo como Ejercicio05.ods

Page 192: 1230 - Uso Conjunto Calc y Base (2)

Presentación de la Unidad 2

Una vez repasados los conceptos fundamentales de hoja de cálculo en la Unidad1 vamos a usar Calc para analizar datos almacenados en bases de datos. Lo haremos a través de conexiones de bases de datos registradas en OpenOffice mediante Base. Accederemos a bases de datos nativas de OpenOffice, es decir datos en formato ODB.

El anáisis de datos lo haremos mediante la gestión de tablas dinámicas de Calc, que nos ofrece una potente herramienta para, mediante una interfaz gráfica hacer tablas de resumen, análisis y gráficos de datos almacenados en base de datos.

Page 193: 1230 - Uso Conjunto Calc y Base (2)

Objetivo de la Unidad 2

Conocer la herramienta de análisis de datos "Tablas dinámicas" Saber crear tablas dinámicas de acuerdo con nuestras necesidades de

información Saber conectar bases de datos en OpenOffice Base con Calc para la creación

de tablas dinámicas

Page 194: 1230 - Uso Conjunto Calc y Base (2)

Fuentes de datos registradas

Para OpenOffice fuente de datos es cualquier base de datos externa o no, susceptible de ser manejada desde OpenOffice Base, en este tema nos centraremos en bases de datos nativas de OpenOffice Base. En un tema posterior veremos como acceder a otros formatos de base de datos.

Registrar una fuente de datos significa indicar a OpenOffice dónde se encuentran los datos, cómo se organizan, cómo se pueden obtener, etc.

Al registrar la fuente le indicamos a OpenOffice los parametros de conexión de una base de datos de forma que podamos usar la fuente de datos desde cualquier programa de la suite OpenOffice.

REGISTRAR UNA BASE DE DATOS

Cuando creamos una base de datos OpenOffice Base nos ofrece la opción de registrarla:

En cualquier caso el proceso de registro de uana base de datos lo podemos realizar en cualquier momento. Como ejemplo vamos a registrar la base de datos de NEPTUNO. Para registrar una base de datos, bien desde Calc o desde Base entramos en Menu -> Herramientas -> Opciones

Page 195: 1230 - Uso Conjunto Calc y Base (2)

En la ventana de opciones de OpenOffice seleccionamos OpenOffice.org Base -> Bases de datos

Page 196: 1230 - Uso Conjunto Calc y Base (2)

Hacemos clic en el botón NUEVO, aparece la ventana:

Pulsamos Examinar, y buscamos el fichero Neptuno-OpenOffice-Base.odb:

Page 197: 1230 - Uso Conjunto Calc y Base (2)
Page 198: 1230 - Uso Conjunto Calc y Base (2)

A partir de este momento podemos usar la base de datos NEPTUNO como fuente de datos para CALC o WRITER.

Page 199: 1230 - Uso Conjunto Calc y Base (2)

Tablas dinámicas

Ahora que ya sabemos como registrar fuentes de datos vamos a conocer una herramienta que ofrece Calc para analizar tablas de datos. Se trata de la gestión dinámica de tablas.

Vamos a conocerlas construyendo directamente una tabla dinámica a partir de los datos de Neptuno. Iremos explicando los conceptos teóricos tal como vayan surgiendo.

En una hoja de cálculo en blanco vamos a conectarnos con Neptuno. Para lo cual iremos a Menu Datos -> Tabla dinámica - > Crear

Aparece la siguiente ventana:

Seleccionamos la base de datos Neptuno:

Page 200: 1230 - Uso Conjunto Calc y Base (2)

Tendremos que seleccionar la fuente de datos. Dependiendo del TIPO nos aparecerá en el desplegable diferentes objetos de la base de datos:

TIPO HOJA: Tablas de la base de datos TIPO CONSULTA: Consultas de la base de datos SQL / SQL NATIVO: Consultas sql

En nuestro caso vamos a construir la tabla dinámica sobre la consulta FACTURAS por lo que elegimos:

TIPO CONSULTA FUENTE DE DATOS: Facturas

Pulsamos ACEPTAR:

Page 201: 1230 - Uso Conjunto Calc y Base (2)

(Continua en el siguiente apartado)

Page 202: 1230 - Uso Conjunto Calc y Base (2)

Partes de una tabla dinámica

La ventana de creación de Tabla dinámica está dividida en 2 zonas:

CAMPOS: Aparece una lista de todos los campos disponibles en la tabla o consulta

DISEÑO: Distribución de los campos a analizar en PAGINA, FILAS, COLUMNAS, DATOS.

En una tabla dinámica estamos creando de manera visual el equivalente de las consultas de agregación vistas en la UNIDAD-02 Consultas del módulo anterior. Si recordamos lo visto en el ejercicios 18, 19 y 20 de dicho tema veíamos que al realizar consultas de agregación teníamos un campo o conjunto de campos a los que se les aplicaba la función AGRUPAR, y otros campos a los que se les aplica funciones de agregación: CONTAR, SUMA, PROMEDIO, ETC.

En las tablas dinámicas los campos por los que se agrupa se indican en CAMPO FILAS, si queremos que ese campo de agregación aparezca en las filas de la tabla y CAMPOS columnas si queremos que aparezca en las columnas.

En CAMPO DATOS ponemos los campos a los que se les aplica funciones de agregación.

Page 203: 1230 - Uso Conjunto Calc y Base (2)
Page 204: 1230 - Uso Conjunto Calc y Base (2)

Totales de precio con descuento por vendedor

Como ejemplo vamos a crear una tabla dinámica que nos agrupe los totales de PrecioConDescuento por vendedor.

Lo hacemos paso a paso:

1) En la zona CAMPOS DE FILAS, ponemos el campo Vendedor, hacemos clic en dicho campo y lo arrastramos a campos de filas

2) En la zona CAMPOS DE DATOS, ponemos el campo PrecioConDescuento, hacemos clic en dicho campo y lo arrastramos a campos de datos. Por defecto, al ser PrecioConDescuento un campo númerico nos introduce la función de agregación SUMA.

Page 205: 1230 - Uso Conjunto Calc y Base (2)

Pulsamos en ACEPTAR y obtendremos la siguiente tabla:

En esta tabla podemos ver a cuanto asciende el total con descuento de lo vendido por cada vendedor

Page 206: 1230 - Uso Conjunto Calc y Base (2)

Totales de precio con descuento por destinatario

Imaginemos que queremos saber el mismo dato "PrecioConDescuento" pero agrupado por "PaisDestinatario":

1) Hacemos clic con el ratón en cualquier celda de la tabla dinámica. Por ejemplo la A3. Luego botón derecho del ratón y elegimos "Editar el diseño" en el menu contextual que aparece:

2) Aparece la ventana de creación de Tabla dinámica. Hacemos clic en el campo "Vendedor" de CAMPOS DE FILAS, y lo arrastramos a la zona de CAMPOS

Page 207: 1230 - Uso Conjunto Calc y Base (2)

Veremos que el campo "Vendedor" ha desaparecido de CAMPOS DE FILAS:

3) Seleccionamos el campo "PaisDestinatario" y lo arrastramos a CAMPOS DE FILAS

Page 208: 1230 - Uso Conjunto Calc y Base (2)

Pulsamos ACEPTAR y obtendremos la siguiente tabla:

En estos dos ejemplos hemos visto como de manera mucho más visual y fácil hemos conseguido el mismo resultado que con las consultas de agregación de OpenOffice Base. Vamos a seguir explorando las posibilidades de las tablas dinámicas de Calc.

Page 209: 1230 - Uso Conjunto Calc y Base (2)

Totales de precio con descuento por país y vendedor

Crear una tabla dinámica con

CAMPOS DATOS: PrecioConDescuento CAMPOS FILAS: Vendedor CAMPOS COLUMNAS: PaisDestinatario

Obtendremos una tabla similar a:

Observese que en este caso estamos superando las posibilidades que teníamos con las consultas de agregación, ya que estamos agregando y cruzando por dos campos o variables diferentes "Vendedor" y "PaisDestinatario"

En la tabla dinámica, junto al campo "Vendedor" y al campo "PaisDestinatario", vemos que aparece un desplegable:

Pulsamos en el desplegable de "Vendedor":

Page 210: 1230 - Uso Conjunto Calc y Base (2)

Tenemos opciones para:

Orden ascendente: Ordena las filas por orden ascendente de este campo Orden descendente: Ordena las filas por orden descendente de este campo Orden personalizado: Ordena por listas personalizadas ( por ejemplo dias de

semana, mes del año, etc) Posibilidad de seleccionar los items que queremos que salgan en las filas

Por ejemplo si solo queremos ver los datos de "Buchanan Steven" y "Callahan Laura", desmarcamos el resto:

Page 211: 1230 - Uso Conjunto Calc y Base (2)

Obtendremos la siguiente tabla:

Page 212: 1230 - Uso Conjunto Calc y Base (2)

Totales de precio con descuento y número de pedidos por vendedor

Supongamos que queremos saber, el total de lo vendido con descuento por cada vendedor y el número total de pedidos de cada vendedor.

Si analizamos lo que nos piden, vemos que tendremos que usar 2 funciones de agregación una que nos sume el precio con descuento, y otra que nos cuente algún campo (IdCliente, por ejemplo), que nos proporcionará el número de pedidos de cada vendedor. Los dos campos deben ir a CAMPO DE DATOS.

Lo hacemos paso a paso:

1) Llevamos el campo "Vendedor" a CAMPOS DE FILA.

2) Llevamos el campo "PrecioConDescuento" CAMPOS DE DATOS.

3) Llevamos el campo "IdCliente" a CAMPOS DE DATOS. Vemos que por defecto nos pone la función de agregación SUMA. Hay que cambiarla a CONTAR, ya que queremos que nos cuente el número de pedidos de cada vendedor. Haremos doble clic sobre el botón:

Se abre la ventana de selección de función de agregación en la que seleccionamos CONTAR

Page 213: 1230 - Uso Conjunto Calc y Base (2)

Al final obtendremos una tabla de este estilo:

Como podemos ver en este ejemplo, en los CAMPOS DE DATOS podemos poner más de un campo de la tabla con diferentes funciones de agregación. Las funciones de agregación incluidas en Calc son:

SUMA CONTAR PROMEDIO MÁX MÍN PRODUCTO CANTIDAD (solo números): Funciona como CONTAR pero para campos

numéricos DESVEST (muestra). Desviación estandar DESVESTP (población) VARIANZA (muestra)

Page 214: 1230 - Uso Conjunto Calc y Base (2)

VARP (población)

Page 215: 1230 - Uso Conjunto Calc y Base (2)

Análisis de pedidos por fecha

Queremos analizar los pedidos de cada vendedor por fechas concretamente por meses y años. Vamos a construir una tabla dinámica con:

Vendedor en campos de filas Suma de PrecioConDescuento en campos de datos Mes de Pedido en campos de columna Año de Pedido en campos de página

Vemos que no podemos construir directamente esta tabla dinámica ya que en nuestra tabla de datos no disponemos de los campos MesPedido y AñoPedido.

Tenemos 2 soluciones:

1) Abrir la base de datos Neptuno y en la consulta Facturas añadir los campos MesPedido y AñoPedido.

2) Usar Calc para calcular los datos que nos faltan y generar la tabla dinámica.

Exploremos las 2 soluciones propuestas:

SOLUCIÓN MODIFICAR LA CONSULTA EN LA BASE DE DATOS NEPTUNO

Lo hacemos paso a paso:

1) Abrimos OpenOffice Base con la base de datos Neptuno.odb

2) Editamos la consulta FACTURAS

Page 216: 1230 - Uso Conjunto Calc y Base (2)

3) Añadimos los campos FechaPedido y MesPedido. Tendremos que poner los nombres de estos campos como alias, y usar las funciones YEAR que dada una fecha nos devuelve el año de la misma y MONTH que nos devuelve el mes.

Alias "AñoPedido", YEAR([FechaPedido]) Alias "MesPedido", MONTH([FechaPedido])

Page 217: 1230 - Uso Conjunto Calc y Base (2)

4) Guardamos la consulta.

5) Volvemos a Calc y generamos la tabla dinámica:

Page 218: 1230 - Uso Conjunto Calc y Base (2)

Obtendremos una tabla de este tipo:

Observese que junto a AñoPedido aparece un desplegable en el que podemos elegir el año que queremos que nos muestre en la tabla:

Page 219: 1230 - Uso Conjunto Calc y Base (2)
Page 220: 1230 - Uso Conjunto Calc y Base (2)

Análisis de pedidos por fecha (2ª solución)

SOLUCION USAR CALC PARA CALCULAR LOS CAMPOS QUE FALTAN

Recordemos el enunciado de lo que queremos conseguir:

Queremos analizar los pedidos de cada vendedor por fechas concretamente por meses y años. Vamos a construir una tabla dinámica con:

Vendedor en campos de filas Suma de PrecioConDescuento en campos de datos Mes de Pedido en campos de columna Año de Pedido en campos de página

Vemos que nos faltan los campos MesPedido y AñoPedido.

Lo hacemos paso a paso:

1) Nos situamos en Calc en una hoja de cálculo en blanco.

2) Hacemos clic en el botón "Fuente de datos"

Aparece en la pantalla el Explorador de fuentes de datos con 2 zonas diferenciadas:

Lista de Exploración de fuentes de datos registradas en OpenOffice Zona de datos, en la que se muestran los datos devueltos por la fuente

seleccionada.

Page 221: 1230 - Uso Conjunto Calc y Base (2)

3) Seleccionamos de la fuente de datos NEPTUNO la consulta Facturas, veremos los datos devueltos por dicha consulta en la zona de datos:

Page 222: 1230 - Uso Conjunto Calc y Base (2)

Ahora tenemos que pasar estos datos a la hoja de cálculo para poderlos analizar y manipular.

4) Hacemos clic con el ratón en la intersección de las filas y columnas de la fuente de datos y vemos que quedan seleccionados todos los datos de la consulta:

Page 223: 1230 - Uso Conjunto Calc y Base (2)

5) Seleccionamos con el raton la celda A1 que es donde queremos pegar los datos. Hacemos clic en el botón "Datos en Texto", vemos que los datos que devuelve la consulta Facturas quedan pegados en la hoja de cálculo:

Page 224: 1230 - Uso Conjunto Calc y Base (2)

5) Los datos que queremos analizar ya están en la hoja de cálculo. Aquí podemos tratarlos como cualquier tabla de la hoja de cálculo, añadiendo columnas auxiliares. Vamos a añadir 2 columnas auxiliares en las que calcularemos AñoPedido y MesPedido.

Primero ponemos las cabeceras de las nuevas columnas:

Celda AB1 ---> AñoPedido Celda AC1 ---> MesPedido

Ahora ponemos las formulas que calculan el AñoPedido y MesPedido en la fila 2. Las funciones a usar son:

=AÑO(<<Fecha>>) devuelve el año de una fecha =MES(<<Fecha>>) devuelve el mes de una fecha

El dato FechaPedido está en la columna N

Page 225: 1230 - Uso Conjunto Calc y Base (2)

Recordemos que si no sabemos los nombres de las funciones en Calc tenemos el asistente de funciones, en el que aparencen todas las funciones disponibles ordenadas por tipo de funcion:

6) Las formulas de la fila 2 que acabamos de introducir hay que arrastrarlas a todas las filas de la tabla. Para lo cual:

Seleccionamos la celda AB2 En la esquina inferior derecha de la celda vemos que hay un pequeño

rectangulo negro. Nos situamos con el ratón en este punto, y vemos que el puntero del ratón pasa de ser la flecha a una pequeña cruz.

Page 226: 1230 - Uso Conjunto Calc y Base (2)

En ese momento hacemos doble clic. Veremos que la formula de AB2 se ha copiado a toda la columna AB

Repetimos el proceso para la fórmula de la columna AC

7) En este momento en la hoja de cálculo tenemos una tabla con los datos que queremos analizar y con los campos que necesitabamos. Construimos la Tabla dinámica a partir de estos datos.

8) Definimos la nueva area de datos. Cuando hemos pegado los datos desde Base, Calc se guarda la definición de el área de datos donde enlaza con Base. Hay que borrar dicha area o modificarla para que incluya las 2 columnas auxiliares que acabamos de pegar:

Entramos en Menu -Datos - Definir Area...

Aparece la ventana de definición de "Area de Datos". Vemos que Calc ha creado un area de datos que incluye los datos importados desde Base con rango: $A$1:$AA2156. Es decir están las columnas originales importadas NO ESTAN las 2 columnas auxiliares que acabamos de crear

Page 227: 1230 - Uso Conjunto Calc y Base (2)

Mofidicamos el rango del área de datos para que incluya las 2 columnas auxiliares. El nuevo rango será $A$1:$AC$2156

Page 228: 1230 - Uso Conjunto Calc y Base (2)

Pulsamos ACEPTAR. Ahora Calc ya tiene definida la nueva area de datos por lo que procedemos a crear la Tabla dinámica

8) Vamos a Menu - Datos - Tabla Dinámica - Crear

9) Automáticamente Calc detecta la zona de datos de la tabla. Le indicaremos "Selección Actual"

10) Agregamos los campos que nos piden en la Tabla dinámica

Page 229: 1230 - Uso Conjunto Calc y Base (2)

11) Al final obtendremos una tabla similar a:

Page 230: 1230 - Uso Conjunto Calc y Base (2)

Análisis de pedidos por fecha (meses con nombre)

Hemos visto que cuando en la consulta de datos no tenemos los campos que necesitamos para crear la tabla dinámica que queremos, los hemos de crear bien modificando la consulta de OpenOffice Base, o bien modificando la tabla en Calc, añadiendo las columnas auxiliares necesarias. ¿Qué método es más cómodo?

Modificando la consulta de OpenOffice Base parece todo más rápido. Una vez modificada la consulta no hay que redefinir el area de datos como hemos tenido que hacer en Calc, pero con Base no tenemos el asistente de funciones con lo que tenemos que sabernos el nombre y parametros de las funciones que usemos. Además Base no ofrece los cientos de funciones incluidas en Calc con lo que esta primera opción es mucho más limitada.

Vamos a modificar el ejercicio anterior para que en la tabla los meses aparezcan con texto, es decir en lugar de 1, 2, 3.... tendremos Enero, Febrero, Marzo, etc.

Para crear la tabla dinámica hemos de tener una columna con el dato "NombreMes". Crearemos una columna auxiliar en AD con una fórmula que nos devuelva el nombre del més a partir del dato de la columna AC donde tenemos el dato "MesPedido". Lo podemos hacer de varias maneras:

CON LA FUNCION SI

Tendremos que crear una fórmula que vaya testeando los valores de "MesPedido", más o menos así:

=SI(AC2=1;"enero";SI(AC2=2;"febrero";SI(AC2=3;"marzo";..............

saldrá una fórmula con 12 funciones SI anidadas, lo cual es bastante engorroso. Funcionaría pero vamos a buscar una manera más comoda.

CON LA FUNCION ELEGIR

Page 231: 1230 - Uso Conjunto Calc y Base (2)

La funcion ELEGIR testea el valor introducido en el parametro INDICE y devuelve un valor de una lista de valores. Es decir si Indice=1 devuelve valor1, si Indice=2 devuelve valor2, etc...

Construimos nuestra fórmula con esta función tendremos:

=ELEGIR(AC2;"enero";"febrero";"marzo";"abril";"mayo";"junio";"julio";"agosto";"septiembre";"octubre";"noviembre";"diciembre")

CON LA FUNCION BUSCARV

Las 2 soluciones anteriores tienen sus problemas. La función SI se complica al tener que poner muchas funciones SI anidadas. Con la función ELEGIR simplificamos un poco pero estamos limitados a solo 30 valores diferentes.

Vamos a usar la función BUSCARV en la que solucionamos los problemas anteriores.

1) Recordemos del tema introductorio de Calc los parametros de la función BUSCARV

Page 232: 1230 - Uso Conjunto Calc y Base (2)

VALOR_BUSCADO: En nuestro caso la celda donde este el "MesPedido" MATRIZ_BUSCAR_EN: Tabla en la que la función BUSCARV busca el

VALOR_BUSCADO en la primera columna de dicha tabla. En nuestro caso tiene que buscar el valor del més y devolver el nombre del mes. En la Hoja2 de nuestro libro de cálculo crearemos la siguiente tabla de busqueda:

INDICE: Se refiere a la columna de la MATRIZ_BUSCAR_EN desde la que devuelve el dato encontrado. En nuestro caso la columna 2 donde hemos puesto los nombres de los meses del año.

ORDENADO: Indica si la MATRIZ_BUSCAR_EN está ordenada o no. Ponemos siempre FALSO

Page 233: 1230 - Uso Conjunto Calc y Base (2)

2) Introducimos en la celda AD2 la fórmula que hemos ido construyendo:

3) Arrastramos la fórmula a toda la tabla.

4) Redefinimos el área de datos para que incluya la nueva columna auxiliar. Menu Datos - Definir area

Page 234: 1230 - Uso Conjunto Calc y Base (2)

5) Creamos la tabla dinámica.

6) Vemos que las columnas de meses no están ordenadas. Las ordenamos con el desplegable de NombreMes - Orden personalizado

Page 235: 1230 - Uso Conjunto Calc y Base (2)

7) Obtendremos una tabla similar a

Page 236: 1230 - Uso Conjunto Calc y Base (2)

Campos de datos - Diferencia respecto a

Imaginemos que queremos comparar el desempeño de los diferentes vendedores de Neptuno. Según los datos de contabilidad e informes de gestión se nos indica que un vendedor fiable es "Andrew Fuller" no es el que más vende pero tiene resultados sostenidos en el tiempo, por lo que se ha decido tomarlo como base de comparación para el resto de vendedores. Se pretende obtener una tabla en la que podamos comparar los datos de venta respecto a dicho vendedor:

Si observamos esta tabla vemos que todos los valores están calculados respecto a los del vendedor Fuller Andrew. Las ventas en enero de Buchanan Steven han sido 3040,09 inferiores a las de Fuller Andrew en el mismo mes.

Page 237: 1230 - Uso Conjunto Calc y Base (2)

Vamos a construir esta tabla dinámica. Lo haremos paso a paso:

1) Partimos de la tabla dinámica base con los datos de los vendedores. Botón derecho del ratón en cualquier celda de la tabla dinámica y seleccionamos "Editar diseño" en el menú contextual.

Page 238: 1230 - Uso Conjunto Calc y Base (2)

2) Hacemos doble clic sobre el campo SUMA - PRECIO CON DESCUENTO

3) Se abre la ventana de definición del campo de datos

Page 239: 1230 - Uso Conjunto Calc y Base (2)

Para el valor mostrado, aparte de la función de agregación podemos seleccionar

TIPO

NORMAL: Aplica la función de agregación sin más. DIFERENCIA CON RESPECTO A: Se calcula el dato como diferencia respecto

a un campo base. Nosotros seleccionamos "Vendedor"

ITEM DE BASE

Elemento del campo base respecto al cual se calcula la diferencia, nosotros seleccionamos "Fuller Andrew"

Page 240: 1230 - Uso Conjunto Calc y Base (2)

Campos de datos - Diferencia respecto a - Elemento Siguiente - Elemento Anterior

Imaginemos que queremos analizar el desempeño de ventas por vendedor tomando como base las ventas del mes de enero. Construiriamos una tabla dinámica de este tipo:

En esta tabla se muestra que Buchanan Steven vendió 1164.97 dolares más en febrero que en enero. Y en marzo 5160.75 menos que en enero.

Esto está bien. Pero queremos ver como evolucionan las ventas mes a mes, si en un mes se vende más o menos que en el anterior. Es decir en febrero comparamos con enero, pero en marzo comparemos con febrero.

Page 241: 1230 - Uso Conjunto Calc y Base (2)

Modificamos la tabla dinámica tal como venimos haciendo y seleccionamos -ITEM ANTERIOR- en el elemento Ítem de base

Obtendremos la tabla:

En esta tabla podemos ver que Buchanan Steven aumentó sus ventas en febrero, pero luego ha tenido 3 meses consecutivos de disminución de ventas.

Page 242: 1230 - Uso Conjunto Calc y Base (2)

Campos de datos - % de

Si los datos de ventas de Fuller Andrew representan nuestra base de comparación, es decir lo vendido por Fuller es nuestro 100%. ¿Cuanto ha vendido cada vendedor respecto a este dato?

Construimos la tabla dinámica seleccionando estas opciones para el Campo de datos:

Obtendremos la siguiente tabla dinámica:

En esta tabla vemos que los datos de ventas de Buchanan Steven para enero representan un 77.61% de los datos de venta de Fuller Andrew del mismo mes.

Page 243: 1230 - Uso Conjunto Calc y Base (2)

Campos de datos - % de diferencia con respecto a

Antes hemos comparado los datos de ventas de los vendedores respecto a Andrew Fuller. Pero para hacer más clara la información podemos hacer que se muestre los datos de ventas como porcentajes del elemento base-.

Modificamos la tabla dinámica con los siguientes valores para el Campo de Datos:

Obtenemos la siguiente tabla dinámica

Esto nos indica que Buchanan Steven en enero vendió un 22.39% menos que Fuller Andrew en el mismo mes.

Page 244: 1230 - Uso Conjunto Calc y Base (2)
Page 245: 1230 - Uso Conjunto Calc y Base (2)

Campos de datos - % de fila

Queremos saber del total de ventas anual de un vendedor que porcentaje ha vendido mes a mes.

Es decir sabemos que los datos de ventas de Buchanan Steven en enero representan un 15.32% de su total de ventas anual

Para crear dicha tabla elegimos los siguientes parametros en Campo de Datos

Page 246: 1230 - Uso Conjunto Calc y Base (2)

Campos de datos - % de columna

¿De las ventas de un mes dado, que % representa las ventas de un vendedor en concreto.?

Es decir queremos obtener la siguiente tabla dinámica:

Para crearla introducimos los siguientes parametros en el Campo de Datos:

Page 247: 1230 - Uso Conjunto Calc y Base (2)

Presentación de la Unidad 3

Hasta ahora hemos usado Calc para analizar datos de bases de datos nativas de OpenOffice Base. Es decir bases de datos en formato de fichero ODB. En el mercado existen diversos sistemas gestores de bases de datos. Veremos que podremos usar Base + Calc para acceder y analizar algunos de estos formatos.

Page 248: 1230 - Uso Conjunto Calc y Base (2)

Objetivo de la Unidad 3

El objetivo de la unidad 3 es conocer como podemos conectar Base + Calc con algunos formatos de base de datos, que bien se usan en la actualidad, (bases de datos SQL en general) o bien han tenido un uso histórico importante, (DBF de dbase, foxpro, o MDB de Access).

Veremos algunos ejemplos de como conectar OpenOffice con estos formatos:

MDB de Microsoft Access DBF de dbase TXT formatos de ficheros de datos en texto plano XLS formatos de tablas de datos en Excel.

Al terminar la unidad seremos capaces de conectar y analizar datos en este formato mediante OpenOffice

Page 249: 1230 - Uso Conjunto Calc y Base (2)

Fuente de datos externas

Existen una gran variedad de Sistemas de Bases de Datos en el mercado, entre los que podemos citar:

ORACLE SQL Server dBase PostgreSQL MySQL Microsoft Access etc.

Cada uno de estos sistemas se caracteriza porque tienen su propio formato de archivo de datos para almacenar las bases de datos que mantienen.

Cualquier base de datos gestionada por estos sistemas puede ser usada como fuente de datos en OpenOffice Base; es decir, se puede considerar una fuente de datos a cualquier base de datos externa o no, susceptible de ser manejada desde OpenOffice Base.

El acceso a dichas fuentes de datos puede hacerse tratando directamente con los archivos correspondientes de fuentes de datos, por ejemplo, los archivos "dbf" de dBase o los archivos con extensión "mdb" de MS Access, o, puede hacerse a través de lo que se conoce como manejadores de conexión con bases de datos ODBC (Object Database Connectivity)

Los ODBC son programas que actúan como intermediarios entre el usuario y un sistema de bases de datos en particular, de manera que, una vez establecidos los parámetros de conexión con un sistema de bases de datos, el usuario no tiene que preocuparse, al realizar operaciones, de las particularidades del sistema al que está conectado.

Page 250: 1230 - Uso Conjunto Calc y Base (2)

En general para poder conectar con un origen de datos necesitamos.

Saber en qué ordenador se encuentran los datos y disponer de enlace físico y lógico.

Conocer el formato de los datos y descripción de los contenidos. Tener los permisos de acceso necesarios. En el caso de formatos que precisen de ODBC instalar y configurar el

controlador de datos necesario. En la mayoría de los casos, necesitaremos ponernos en contacto con nuestro Departamento de Informática de referencia para conocer los parámetros necesarios y que nos habiliten los permisos de acceso.

Page 251: 1230 - Uso Conjunto Calc y Base (2)

Conexión con Microsoft Access

Microsoft Access ha sido hasta ahora el estandar de bases de datos en microinformática y su uso está muy extendido en todos los ámbitos tanto empresariales como en la administración. El hecho de que sea un programa de Microsoft por el que hay que pagar licencia de uso ha llevado a plantear a la administración a desencentivar su uso proponiendose otros formatos de bases de datos que por ser OpenSource no precisan de licencias.

Aún así, en la administación nos encontramos con muchas pequeñas (o no) bases de datos desarrolladas en este formato, al que debemos ser capaces de acceder tanto para poder analizar datos de programas todavía en uso o programas históricos que se desarrollaron en este formato.

OpenOffice Base permite la conexión directa con este tipo de formato. Vamos a conectar con la base de datos xxx.mdb incluida en los ejemplos del curso. Lo hacemos paso a paso:

1) Arrancamos OpenOffice Base. En el asistente para base de datos inicial, seleccionamos "Conectar con una base de datos existente" y tipo de base de datos Microsoft Access. Pulsamos SIGUIENTE

Page 252: 1230 - Uso Conjunto Calc y Base (2)

2) El asistente nos pedirá que le indiquemos el nombre del fichero MDB de Access y la carpeta en la que está situado. En nuestro caso conectaremos con EstudiantesYClases.mdb que estará en la carpeta en la que hayamos descargado los ejemplos del curso. Pulsamos SIGUIENTE

3) El asistente nos preguntará si deseamos registrar la base de datos en OpenOffice diremos que SI

Page 253: 1230 - Uso Conjunto Calc y Base (2)

4) Ahora tendremos que indicar un nombre y carpeta para guardar la base de datos OpenOffice Base que estamos creando. La guardaremos en nuestra carpeta de ejemplos del curso con el nombre EstudiantesYClases-OpenOffice-BASE.odb

Page 254: 1230 - Uso Conjunto Calc y Base (2)

5) Hemos creado una base de datos OpenOffice que accede a datos en formato MDB. Hemos de resaltar que no se ha hecho copia de los datos, sino que estamos accediendo al fichero MDB original, lo cual implica que las modificaciones que hagamos en OpenOffice Base estarán modificando los datos de la aplicación MDB. Así que cuidado

Page 255: 1230 - Uso Conjunto Calc y Base (2)

A partir de este momento podemos usar la base de datos EstudiantesYClases-OpenOffice-base.odb como cualquier otra base de datos de OpenOffice, por ejemplo para conectarla con Calc y analizar los datos de notas de alumnos con tablas dinámicas.

Page 256: 1230 - Uso Conjunto Calc y Base (2)

Conexión con DBASE

En estos momentos el estándar de base de datos para equipos de ofimática es Access. Pero esta situación no siempre ha sido así. A finales de los años 80 y durante gran parte de la década de los 90, el formato estándar era el Dbase.

En las bases de datos Dbase, cada tabla se creaba en un fichero separado con la extensión DBF. Este tipo de ficheros se creaban además con los lenguajes de programación Clipper, y Foxpro.

En algunas Consellerias de la Generalitat Valenciana todavía existen en funcionamiento algunas aplicaciones que se programaron con este formato, y otras aplicaciones que se mantienen por razones de consulta de históricos.

Vamos a crear una base de datos OpenOffice para conectar con datos en formato DBF. Lo hacemos paso a paso;

1) Arrancamos Base y en el asistente inicial indicamos "Conectar con una base de datos existente" de tipo DBASE. Pulsamos SIGUIENTE

2) El asistente nos pregunta la carpeta donde se guardan los ficheros DBF. Recordemos que en el formato dbase cada tabla se guardaba en un fichero dbf separado, por lo que para OpenOffice base todos los ficheros DBF de la carpeta que indiquemos seran tablas de la base de datos.

Page 257: 1230 - Uso Conjunto Calc y Base (2)

Seleccionamos la carpeta de los ficheros de ejemplo del curso:

3) Registramos como siempre la base de datos en OpenOffice y le ponemos de nombre Ejemplo-Acceso-DBF.odb

4) Comprobamos que en la base de datos están las dos tablas INSFACUL, e INSPACI incluidas en los ficheros de ejemplo del curso.

Page 258: 1230 - Uso Conjunto Calc y Base (2)

Recordar otra vez que cuando accedemos a la base de datos Ejemplo-Acceso-DBF.obd se está accediendo a los datos originales de DBASE por lo que cualquier modificación que hagamos la estamos haciendo en la aplicación original. Así que cuidado.

Resaltar que en la versión actual de OpenOffice Base, si accedemos a datos DBF no se permite relacionar tablas, ni crear consultas que combinen tablas. Lo cual puede ser una limitación importante.

Page 259: 1230 - Uso Conjunto Calc y Base (2)

Conexión con XLS

Para los ficheros XLS disponemos de 2 opciones

Abrir directamente el fichero XLS con Calc ya que reconoce dicho formato. A partir de ahí trabajar como lo haríamos con Excel.

Si se trata de una tabla de datos que se ha creado en Excel puede ser interesante acceder a ella a través de una conexión con Base. Con esta opción tenemos la ventaja de que al registrar los datos en OpenOffice un posible usuario no tiene por que saber donde se guardan los datos sino que simplemente los usa como cualquier otra fuente de datos registrada de OpenOffice.

Vamos a crear una base de datos que nos conecte a una tabla XLS y a registrarla.

1) Abrimos Base. En el asistente inicial seleccionamos "Conectar con base de datos existente" y tipo Hoja de cálculo

2) Seleccionamos el fichero EJEDIAG.XLS incluido en los ficheros de ejemplo del curso

Page 260: 1230 - Uso Conjunto Calc y Base (2)

3) Guardamos el fichero como Ejemplo-Acceso-XLS.odb

4) Comprobamos que en la base de datos tenemos la tabla EJEDIAG

Page 261: 1230 - Uso Conjunto Calc y Base (2)

En el caso de conexión con tablas en XLS OpenOffice Base proporciona acceso solo de lectura por lo que no podremos modificar el fichero XLS original desde nuestra base de datos OpenOffice.

Page 262: 1230 - Uso Conjunto Calc y Base (2)

Acceso a DBASE desde Calc

En OpenOffice para acceder a ficheros en formato DBF aparte de la opción de crear una conexión con Base, tenemos la posibilidad de abrir el fichero DBF directamente con Calc.

Así si queremos abrir nuestro fichero de ejemplo INSPACI.DBF:

1) Arrancamos Calc.

2) Menu Archivo - Abrir

3) Buscamos el archivo INSPACI.DBF en la carpeta de ejemplos del curso y lo seleccionamos

4) Calc nos preguntará la página de codigos en que se creó el fichero DBF, si no la sabemos seleccionamos la que nos presenta por defecto 850/Internacional

Page 263: 1230 - Uso Conjunto Calc y Base (2)

5) Veremos que en la hoja de cálculo se han cargado los datos del fichero DBF

Recordar que estamos editando el fichero DBF original. Los cambios que hagamos los hacemos sobre los datos orignales DBF.

Page 264: 1230 - Uso Conjunto Calc y Base (2)

Conexión con ficheros TXT

El formato de datos TXT también se llama texto plano. Hay veces que el sistema gestor de base de datos en el que se encuentran los datos, no permite exportarlos a otros formatos, en estos casos no hay mas remedio que exportar la tabla de datos en un fichero de texto. Normalmente se pone un registro por línea de texto, y los campos de la tabla se separan delimitándolos con algunos caracteres especiales (comas, dobles comillas, el carácter | , etc.) o bien se separan mediante unas posiciones fijadas de antemano.

Por ejemplo si estamos exportando en texto plano una tabla de pacientes podemos convenir que cada paciente irá en una linea de texto, y que el Apellido1 va desde la posición 1 a la 30, el Apellido2 desde la posición 31 a la 60, y así sucesivamente. Parece complicado, pero no debemos preocuparnos. Siempre que nos encontremos con una tabla de datos en este formato, nos la proporcionará un informático al que deberemos preguntarle que formato ha usado para delimitar los datos. Es decir, normalmente siempre habrá alguien que nos lo especifique.

Vamos a ver con un ejemplo como conectar OpenOffice Base con una tabla de datos en formato TXT. Lo vemos paso a paso

1) Arrancamos Base, y en el asistente incial indicamos que queremos conectar con una base de datos existente en formato TEXTO

Page 265: 1230 - Uso Conjunto Calc y Base (2)

2) Seleccionaremos la carpeta donde tenemos el fichero TXT. Resaltar que para OpenOffice las bases de datos en formato TXT funcionan como las de DBF. Es decir cualquier fichero TXT de la carpeta será considerado una tabla de la base de datos.

3) Seleccionaremos el tipo de archivo ( TXT o CSV) en nuestro caso TXT.

4) Tenemos que indicar como está formateado el fichero TXT. Si abrimos el fichero INSRECE.TXT por ejemplo con el NOTEPAD de windows veremos:

Vemos que:

En la primera fila están los nombres de los campos Los campos van entrecomillados La separación entre campos/columnas de la tabla se hace por el caracter

punto y coma

Introducimos estos datos en el asistente

Page 266: 1230 - Uso Conjunto Calc y Base (2)

5) Guardamos el fichero como Ejemplo-Acceso-TXT.odb

Page 267: 1230 - Uso Conjunto Calc y Base (2)

Conclusión del Módulo 3

En este módulo nos hemos introducido en el conocimiento de Calc y hemos visto que es similar casi en un 100% al Excel de Microsoft

Hemos conocido la herramienta de tablas dinámicas de Calc y hemos visto que mediante esta metodología consultar, resumir y relacionar la información de las tablas de una base de datos es una tarea sencilla que podemos hacer desde una interfaz gráfica que no precisa de conocimientos de programación.

Hemos aprendido a conectar BASE con CALC y estos dos programas con distintos formatos de base de datos que hay en el mercado.

Page 268: 1230 - Uso Conjunto Calc y Base (2)

Conclusión del curso

Después de estas semanas trabajando con OpenOffice hemos visto que esta suite ofimatica es una alternativa válida a otras de pago. En general los programas son más o menos similares a los de Microsoft si exceptuamos tal vez Base que se queda un poco corto en comparación con Access.

Aunque no nos hayamos convertido en analistas expertos de base de datos si que me gustaría que hubiera quedado claro que el metodo de ponerse directamente a crear tablas sin ton ni son quede definitivamente descartado de nuestros hábitos. Vale la pena dedicar, aunque solo sea media hora, a pensar mediante la metodología de los diagramas de E/R, cual va a ser la estructura de tablas más adecuada para el problema que intentamos modelizar.

Page 269: 1230 - Uso Conjunto Calc y Base (2)