Está en la página 1de 269

Presentacin del curso

INTRODUCCIN
En estos momentos el conocimiento de un paquete ofimtico se ha convertido en
una necesidad para las tareas normales de una oficina. La ofimtica est
introducida en todos los mbitos de la empresa y particularmente en las
administraciones pblicas. Como empleados pblicos se nos exige un conocimiento
ms o menos aplio de los programas de una suite ofimtica.
Hasta ahora el paquete ofimtico Office de Microsoft era un estndar 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 ms economicas y que usen formatos de
datos libres.
OpenOffice.org es un paquete ofimatico de cdigo abierto que no precisa de la
compra del producto ni del pago de licencias. Simplemente nos conectamos a la
pgina de OpenOffice en internet y lo podemos descargar e instalar en nuestro
ordenador.
OpenOffice.org es un proyecto con varios aos en el mercado y ofrece
compatibilidad de formatos con Office de Microsoft lo cual hace que se
plantee como alternativa fiable para una suite ofimtica en el mbito de las
administraciones pblicas
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:

WRITER: Procesador de textos


CALC: Hoja de clculo
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 ms 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 ofimtica.
En este curso nos vamos a centrar en 2 mdulos de OpenOffice.org. En concreto el
gestor de base de datos Base y el programa de hoja de clculo 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
Consellera o incluso de toda la generalitat. Normalmente accedemos a ellas
a travs de una pgina web. Ejemplos: El sistema SIP en la Consellera de
Sanitat, la nmina 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 estadsticas o analizar datos con Calc.
El curso se compone de 3 mdulos, cada uno de ellos con las siguientes unidades:
MODULO 01: BASE como SGBD

UNIDAD 01 Conceptos bsicos


UNIDAD 02 Creacin de una base de datos
UNIDAD 03 Diagramas de Entidad/Relacion

MODULO 02: Extraccin de informacin desde OpenOffice Base

UNIDAD 01 Bsquedas y filtros


UNIDAD 02 Consultas

MODULO 03: Anlisis de datos con Calc

UNIDAD 01 Introduccin a Calc


UNIDAD 02 Tablas dinmicas
UNIDAD 03 Fuentes de datos externas

MATERIAL DIDCTICO

Los contenidos del programa estn desarrollados en soporte digital Online como
una pgina Web, y estn alojados en la plataforma o campus de formacin virtual
de la Generalitat Valenciana. Los materiales didcticos cuentan con sus objetivos y
contenidos bsicos del curso, y estn diseados en su estructura y forma para
facilitar la formacin no presencial.
Las Unidades didcticas recogen los contenidos del curso. Estas unidades se
caracterizan por:

El alumno encontrar toda la informacin necesaria para su proceso de


aprendizaje.
La exposicin de contenidos es gradual . Al final de cada mdulo se
encuentran las propuestas de actividades y ejercicios de autoevaluacin.
El acceso a estos contenidos se realiza a travs del campo virtual.
Adems, el profesor facilitar otros materiales en el campus de eformacion:
Documentacin anexa ubicada en el almacn del "Aula virtual". Notas,
aclaraciones y propuestas de actividades.

REQUISTOS TCNICOS
Ordenador con conexin a Internet y OpenOffice.org 3.4 instalado.

METODOLOGA DE APRENDIZAJE
Aprendizaje no presencial tutorizado basado en una metodologa participativa,
donde:

Se recomienda leer las unidades propuestas.


Realizar las actividades propuestas.
Responder a los ejercicios de autoevaluacin.
Asimismo, debis tener en cuenta los espacios y medios de relacin que
ofrece el medio.

Recursos de comunicacin necesarios para el aprendizaje:

Chat Correo electrnico, con listado de compaeros del curso y tutor


Foro de debate

Con ellos podremos:

Comunicarnos con el formador para la resolucin 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 autoevaluacin al final de cada mdulo didctico.


Actividades participativas (Foros y prcticas).

Para realizar el curso con aprovechamiento deberemos realizar todas y cada una de
las actividades propuestas. El tutor valorar especialmente la participacin activa
en los diferentes espacios.
Se proponen las siguientes actividades:

Debates o Foros, en los que cada alumno deber realizar un mnimo de dos
aportaciones siguiendo el hilo conductor del debate.
Prcticas o Casos aplicados, donde el alumno deber poner en prctica los
conceptos que va adquiriendo.

El profesor informar adecuadamente en tiempo y forma de las actividades que


deben realizarse. La evaluacin ser continua durante y a lo largo de los ejercicios
y actividades propuestas en las diferentes unidades didcticas.

Objetivo del curso

Conocer el paquete ofimtico OpenOffice.org


Saber analizar un problema y disear las tablas de una pequea base de
datos departamental.
Saber crear bases de datos en Base
Saber consultar informacin de bases de datos en Base
Conocer la hoja de clculo Calc y las herramientas de las que dispone para
el anlisis de datos de tablas
Saber conectar la informacin de una base de datos a la hoja de clculo

Presentacin del Mdulo 1


Este primer mdulo del curso se compone de 3 Unidades didcticas

Unidad1 - Conceptos bsicos


Unidad2 - Creacin de una base de datos
Unidad3 - Diagramas de Entidad/Relacin

Introduciremos los conceptos bsicos que se manejan cuando hablamos de


sistemas de informacin aplicados a las organizaciones empresariales, qu es un
sistema de informacin, y como lo podemos disear 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 programacin.
Una vez conocido como crear tablas, cabe la pregunta de, ante un problema dado,
que tablas debemos crear y cual debe ser la relacin correcta entre ellas. Esto
lo analizaremos en la Unidad3 mediante la tcnica de los diagrmas de Entidad
/Relacin

Objetivos del Mdulo 1


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

Sistema de Informacin
Sistema gestor de base de datos
Base de datos
Base de datos relacional
Tablas
Indices
Relaciones

Presentacin de la Unidad 1 - Conceptos bsicos


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.

Objetivos de la Unidad 1 - Conceptos bsicos


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

Sistema de Informacin
Sistema gestor de base de datos
Base de datos
Base de datos relacional
Tablas
Indices
Relaciones

Sistema de informacin
Cualquier empresa u organizacin 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 organizacin".
Para conseguir dichos objetivos la empresa debe gestionar de forma adecuada los
recursos de los que dispone. Por lo tanto necesita informacin. Dicha informacin
debe tener entre otras las siguientes caractersticas:

Efectiva:la informacin debe ser oportuna, correcta, consistente, utilizable


y referida al nivel de la organizacin al cual se dirige.
Eficiente:que la provisin de la informacin se realice a travs de la
utilizacin ptima de recursos, es decir, de la forma ms productiva y
econmica.
Cumplimiento:se refiere a que la informacin proporcionada debe cumplir
con leyes, y regulaciones. Concretamente con la ley de proteccin de datos.
Confidencial:la informacin debe estar protegida de divulgaciones no
autorizadas.
ntegra:se refiere a la precisin y suficiencia de la informacin y su validez
de acuerdo a los valores y expectativas de negocio.
Disponible:la informacin debe estar disponible cuando es requerida por el
proceso de negocio.

Para recoger, registrar, y procesar dicha informacin se organizan los sistemas de


informacin

Elementos de un Sistema de informacin:

INFORMACIN: Los datos que debemos recoger y procesar

PERSONAS. Los recursos humanos que dedica la organizacin a gestionar


todo el proceso.
RECURSOS. Recursos no humanos. Tecnologa usada en el sistema de
informacin. Libros de contabilidad, ficheros en papel, o ms actualmente,
elementos de hardware y software .
TECNICAS. Procedimientos a los que se somete la informacin

Podemos definir un Sistema de Informacin como:


Conjunto de elementos: Recursos humanos, Datos, procedimientos, tecnologa
(hardware) y procesos (software) estructurados y relacionados entre s para lograr
el objetivo bsico de administrar correctamente la informacin que existe en una
parcela acotada del mundo real: Un rea, departamento o empresa

Base de datos
DEFINICIN
Tenemos varias definiciones de base de datos:

Una base de datos es un conjunto estructurado de datos que intentan


reflejar de forma organizada la informacin que existe en una parcela
acotada del mundo real. Esta parcela se denomina sistema de
informacin.
Un conjunto de datos pertenecientes a un mismo contexto y almacenados
sistemticamente para su posterior uso.
Es una coleccin 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 ms tablas estructuradas
en registros (lneas) y campos (columnas), que se vinculan entre s por un campo
en comn, en ambos casos posee las mismas caractersticas 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 convertirn en informacin relevante para una
organizacin.
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 funcin
fundamental de un SGBD y por supuesto, el SGBD debe ocultar al usuario la
estructura fsica interna (la organizacin de los ficheros y las estructuras de
almacenamiento).
2. Un SGBD debe proporcionar un catlogo en el que se almacenen las
descripciones de los datos y que sea accesible por los usuarios. Este
catlogo es lo que se denomina diccionario de datos y contiene informacin
que describe los datos de la base de datos (metadatos). Normalmente, un
diccionario de datos almacena:
o Nombre, tipo y tamao 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.

Estadsticas de utilizacin, tales como la frecuencia de las


transacciones y el nmero 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 estn
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 fcil de
gestionar si todos los usuarios se dedican a leer datos, ya que no pueden
interferir unos con otros. Sin embargo, cuando dos o ms usuarios estn
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 simultneo.
4. Un SGBD debe proporcionar un mecanismo capaz de recuperar la base de
datos en caso de que ocurra algn suceso que la dae
5. Un SGBD debe proporcionar un mecanismo que garantice que slo los
usuarios autorizados pueden acceder a la base de datos. La proteccin 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 adems 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 restriccin de que cada empleado no puede tener asignados
ms de diez inmuebles. En este caso sera deseable que el SGBD controlara
que no se sobrepase este lmite cada vez que se asigne un inmueble a un
empleado.
Adems, de estos servicios, es razonable esperar que los SGBD proporcionen un
par de servicios ms:
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 anlisis estadstico para examinar las prestaciones o
las estadsticas de utilizacin.
o Herramientas para reorganizacin de ndices.
o Herramientas para aprovechar el espacio dejado en el
almacenamiento fsico 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..

Tablas, campos, registros


Una tabla es un conjunto de datos homogneos 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.

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
informacin sobre la revolucin francesa tendramos que empezar a leer por la
primera pgina e ir leyendo sucesivamente hasta llegar a la informacin que
buscamos, tendramos que pasar por la prehistoria, la historia antigua, la edad
media, etc. Hasta llegar a la revolucin francesa. Supongamos que la revolucin
francesa est en el captulo 10 pgina 564. Para llegar a la informacin que
necesitbamos habremos tenido que leer las 563 pginas anteriores. Si el libro
tiene un ndice, para llegar a la informacin buscada, iremos al ndice que nos
indicar que ese tema est en la pgina 564 y saltaremos directamente a dicha
pgina. Habremos llegado a la informacin deseada en solo 2 pginas.

En las bases de datos el concepto es el mismo, se trata de una funcin que acelera
la bsqueda y la ordenacin de una tabla segn unos valores clave y que puede
ayudar a evitar duplicados en las filas de una tabla.

Relaciones
En las bases de datos relacionales almacenamos datos en las tablas. Podemos
relacionar 2 tablas a partir de un campo (columna) comn.
Ejemplo:
Supongamos un sistema de informacin que guarda datos de empleados y
departamentos a los que estn asignados. Podemos tener varias tablas y
relacionarlas entre s.

Presentacin 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 ofimtico 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 prctica guiada que consistir en la
creacin de una base de datos que deberemos enviar al profesor.

Objetivo de la Unidad 2

Saber
Saber
Saber
Saber

crear una base de datos en OpenOffice.org base


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

Creacin de una base de datos

INICIAR OOo-BASE
Podemos arrancar OpenOffice Base haciendo clic con el ratn 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 creacin de bases de datos.
Seleccionamos la opcin "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"

3) Seleccionaremos la carpeta en la que vamos a guardar la base de datos y le


daremos el nombre a archivo "Ejemplo1"

Acabamos de crear una base de datos. En este momento estar vaca ya que
todava no hemos creado ningn objeto ni introducido ningn dato. En la pantalla
de OpenOffice Base tendremos la Ventana de Base de Datos.

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

Tablas
Consultas
Formularios
Informes

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 seleccin y las de accin. Estas ltimas a su
vez pueden ser de creacin de tabla, de eliminacin, de insercin y de
actualizacin.
En el curso vamos a ver las consultas de seleccin, que almacenan operaciones en
las que se realizan selecciones de datos que cumplan una serie de criterios. Por
ejemplo si tuviramos una base de datos sanitaria, con una tabla de pacientes,
podramos tener una consulta que nos seleccionase las mujeres pensionistas que
viven en un rea sanitaria determinada.
En las consultas adems podemos establecer criterios de ordenacin y agrupacin.

FORMULARIOS
Un formulario es una ventana diseada para la introduccin y edicin de datos. Con
OpenOffice Base podemos disear formularios con listas desplegables, rejillas,
botones de opcin y seleccin 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 diseado. 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 informacin que el necesita, de una manera entendible.

INFORMES
Con informes nos referimos a listados impresos.

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 contendrn datos: las tablas, otros las
pantallas que usar el usuario: los formularios, otros los listados que permita
imprimir la aplicacin (informes). Pero dnde 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 extensin ODB.

4.- Diseo y creacin de una tabla

Para crear una tabla en Base hacemos clic con el ratn en TABLAS - Crear una
tabla en modo de diseo.

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 mximo de 64 caracteres (letras, nmeros, 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 ms
significativo que fnmto

TIPO DEL CAMPO


El tipo del campo es una propiedad que determina:

El tipo de informacin se puede almacenar en un campo: texto, nmeros,


fechas, valores SI/NO, etc.
El espacio que OpenOffice Base reservar para cada campo

Las operaciones que se podrn 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


relacin a la informacin 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 continuacin:
Campos tipo texto:

TEXTO [VARCHAR].- Este tipo de dato puede contener letras, signos de puntuacin
o nmeros que no vayan a ser utilizados en operaciones matemticas. Como mximo
se podrn introducir 255 caracteres en cada campo. Por ejemplo un nombre, una
direccin, un cargo, una familia, un telfono (no lo vamos a operar).
NOTA [LONGVARCHAR].- Se utiliza para almacenar en ellos gran cantidad de
informacin. Se pueden almacenar hasta 64.000 caracteres por cada campo. Por
ejemplo unos datos de inters, el argumento de una pelcula...

Campos de tipo numrico: Este tipo de campos permite introducir datos de tipo numrico
con los que poder realizar operaciones matemticas (suma, promedio...). La diferencia clave
en elegir el tipo de campo numrico correcto radica en el tamao 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 informacin
sobre el nmero de hijos seleccionare como tipo de campo Tiny Integer, que permite
almacenar nmeros enteros pequeos y el tamao que ocupa el campo en la base de datos
es de 1 byte. Si lo que deseamos es introducir datos numricos con decimales, el tipo de
datos adecuado es Nmero o Decimal.

INTEGER [INT]: Permite introducir nmeros 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. nmero hijos, edad...). Ocupa 1 byte de espacio en el disco del ordenador.
SMALL INTEGER [SMALLINT]: Permite introducir nmeros enteros (positivos o
negativos) comprendidos entre -32.768 a 32.767. Opcupa 2 bytes de tamao en
memoria.
NUMERO [NUMERIC]: Permite introducir nmeros con cifras decimales.
DECIMAL [DECIMAL]: Permite introducir nmeros 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.
(prcticamente cualquier nmero sera 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 tambin el
tiempo transcurrido entre dos valores horarios. (Hora de entrada, hora de salida...)
FECHA/HORA [TIMESTAMP]: Se utiliza cuando se necesitan valores que contienen
informacin de fecha y hora, en el mismo campo.

Informacin.- 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 presentacin de los datos almacenados en este tipo de campos, a


travs de la propiedad formato podremos cambiarlos y acomodarlos a nuestras
necesidades.
Campos de tipo lgico:
S/No [BOOLEAN]: Este tipo de campos slo admite valores lgicos como son: S (con
acento) o No, Verdadero o Falso y Activado o Desactivado. Se establecern como tales slo
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 ms adelante.

Creacin de una tabla


PROPIEDADES DE LOS CAMPOS
Las propiedades que se establecen para los campos varan en funcin 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 diseo de la tabla.

LONGITUD
Esta propiedad establece el nmero mximo de caracteres que podr contener un campo si
es de tipo texto. Para cada carcter 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,
pudindose modificar en cualquier instante por otro valor.

Si el campo en cuestin cuyas propiedades se estn definiendo es de tipo numrico, la


longitud del campo vendr dada por el tipo de dato numrico que hayamos seleccionado, no
dando opcin al usuario de modificarlo, salvo para el tipo de datos Numrico y Decimal.

VALOR AUTOMTICO
Esta propiedad est establecida para el tipo de datos Integer, y provoca que se almacenen
datos numricos generados automticamente por OpenOffice Base al introducir un nuevo
registro, asignando a cada registro el valor numrico del registro anterior incrementado en
una unidad (1, 2, 3, ...). Se garantiza la no repeticin de valores para toda la tabla.
nicamente puede haber un campo de estas caractersticas en cada tabla. De existir,
siempre comienza con el valor 1. Se puede aprovechar esta numeracin para codificar
elementos de la tabla tales como cdigos de empleado, nmeros de pedido, nmeros de
orden...

Informacin.- En Access existe un tipo de campo denominado Autonumrico que


realiza la misma funcin que un Campo con tipo de datos Integer en OpenOffice
Base, siempre que en la propiedad Valor Automtico establezcamos la opcin S.

DECIMALES
Para aquellos campos de tipo numrico que admitan decimales, aparecer esta propiedad
que permite establecer la precisin de la parte decimal del nmero almacenado.

ENTRADA REQUERIDA
Se utiliza cuando se quiere establecer que sea obligatoria la introduccin de un dato en el
campo.

VALOR PREDETERMINADO
El valor que se introduce en esta propiedad, aparece en el campo al aadir un nuevo
registro. Es til en el caso de que un campo concreto tenga el mismo valor para la mayora
de los registros que van a ser introducidos. Por ejemplo, para el campo provincia dentro de
una tabla de clientes, si la gran mayora de nuestros clientes son de La Rioja, podramos
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 vern los datos. La presentacin de nmeros, fechas,
textos y valores S/No en distintos formatos.

Al acceder al cuadro de texto Formato, aparecer a la derecha del mismo el botn .


Al
hacer clic sobre el mismo se muestran las distintas opciones de formato, en funcin del tipo
de dato contenido en el campo, de que se dispone.
El formato modifica simplemente el aspecto visual del dato almacenado, mantenindose el
valor original del mismo en el campo sin formato, "desnudo".
Es comn a todos los tipos de campos, la propiedad de formato Alineacin, que nos permitir
decidir las opciones de alineacin del contenido de los datos en la tabla.

En campos de tipo Numrico, al acceder al formato tendremos un amplio abanico de


posibilidades a la hora de definir la forma de visualizacin o presentacin del dato
almacenado en la tabla: porcentaje, moneda...

Como se observa en la figura, a la izquierda de la pantalla aparece una lista de categoras,


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 funcin de la
categora 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 numricos son:

Definidos por el usuario . Partiendo de uno existente, se crea un cdigo particular.


Nmero . Para la presentacin de nmeros en general.
Porcentaje . Se multiplica por 100 el valor de la celda y se muestra el resultado con
un smbolo 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 nmero 100000, por ejemplo, ser representado como 1E+05.
Fraccin . Con varios dgitos (por ejemplo 12/25).
Valor Lgico . Para valores booleanos.
Texto . Es tratada como texto aunque en ella haya un nmero

Creacin 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 unvoca 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 diseo 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 botn derecho del ratn y seleccionamos la opcin 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 diseo de


tabla, se realiza la operacin de cerrar, OpenOffice Base pregunta al usuario si se desea
definir una clave principal mediante el siguiente mensaje:

Si respondemos que S, OpenOffice Base crear un campo nuevo denominado "Id" al


que le asignar la condicin de Clave primaria o clave principal.
Si respondemos que No, la tabla se crear pero no podremos agregar ningn
registro, ni modificarlo, ni eliminarlo... es decir, no vamos a poder editar la tabla
creada.
Si cancelamos la accin, OpenOffice Base nos ofrece la posibilidad de qu
decidamos qu campo o campos de la recin creada tabla van a ser clave principal.
Lo elegiremos y crearemos la llave primaria de la forma que hemos visto
anteriormente

Ejercicio 01 - Video Club


Supongamos que tenemos que informatizar el sistema de informacin necesario
para controlar la gestin de un videoclub. El videoclub tiene una serie de clientes
que alquilan pelculas. 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 pelculas para adultos)
Tiempo que hace que es socio. Para poder aplicar descuentos a clientes ms
antiguos.
Domicilio, poblacin, cdigo postal
Telfono fijo y mvil
E-mail y otro campo que indique si desea recibir el boletn 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
gestin 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.

Ejercicio 01 - Video Club


Resolucin ejercicio parte 1

PASO UNO
Del enunciado del ejercicio vemos que tendremos que guardar informacin de
CLIENTES de PELCULAS y de ALQUILERES DE PELCULAS. Vamos primero a crear
la tabla de CLIENTES. Arrancamos OpenOffice Base, si es que no lo tenamos
funcionando y creamos una nueva base de datos en blanco. Cuando nos pida el
nombre del fichero lo llamaremos VideoClub.odb

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 diseo"

PASO TRES
En la ventana de creacin de tabla, vamos creando uno a uno los campos que nos
piden en el ejercicio.

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 antigedad del socio)
Domicilio, tipo texto 75
Poblacin, tipo texto 75
CodigoPostal, tipo texto 5
Email, tipo texto 75
ClienteHabitual tipo SI/NO

Adems aadimos 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
boletn de novedades)
EnvioSMS tipo SI/NO (Si autoriza el envio de SMS, de avisos)

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, Poblacin, CodigoPostal
TelefonoMovil

El campo clave ser el DNI

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.

CdigoPelicula. 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 pelcula, en una fecha de alquiler, y que la pelcula se ha
devuelto en la fecha de devolucin y que se pag un determinado precio por el
alquiler.

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 pelcula que se alquila. Lo
crearemos con el mismo formado de datos que en la tabla de Pelculas. Tipo
texto , longitud 10.. Requerido.
FechaAlquiler, tipo fecha. Requerido.
FechaDevolucion. Tipo fecha.
PrecioAlquiler. Nmerico doble precisin.

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

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 pelcula Eclipse, y la


pelcula Mad Men. Tendramos 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 da 10/10/2010. Tendramos la siguiente tabla:

Vemos pues que el campo CdigoPelicula, 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 ms 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 pelcula
Eclipse el dia 10/10/2010 por la maana, 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 pelcula el mismo da varias veces. Lo cual es una
suposicin razonable. Luego tomaremos estos tres campos unidos como clave de la
tabla AlquileresRealizados.

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

Ejercicio 02 - Relaciones entre tablas


En el ejercicio anterior hemos creado 3 tablas:

Clientes
Pelculas
AlquileresRealizados

Hemos visto como en la tabla de AlquileresRealizados, ponamos el campo DNI.


Este campo se refiere a datos de la tabla de Clientes. Por lo tanto hay una relacin
entre la tabla Clientes y la tabla AlquileresRealizados. Lo mismo ocurre entre
AlquileresRealizados y Pelculas.
Hemos de indicar a OpenOffice Base que las tablas estn relacionadas.
Esto se hace creando las relaciones entre las tablas. Lo hacemos paso a paso:

PASO UNO
Abrimos, si no lo tenamos 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

Aparece la ventana de seleccin 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.

PASO DOS
Aparece la ventana de creacin de relaciones. Creamos la relacin entre Clientes y
Alquileres- Realizados, haciendo clic en el campo DNI de la tabla de Clientes y
arrastrando el ratn hasta el campo DNI de la tabla AlquileresRealizados.

Aparece la ventana de propiedades de la relacin:

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 insercin o borrado de registros
en las tablas con relaciones.
Lo vemos con ms detalle.

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 vlidas y
que no se modifican ni eliminan accidentalmente datos relacionados.
Veamos el ejemplo del VideoClub. Es una relacin de uno a muchos. Un cliente ha
alquilado distintas pelculas 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 realizramos cualquiera de las acciones
determinadas en las tres preguntas anteriores, tendramos en la tabla un estado
inconsistente.

Si borramos un cliente de la tabla de clientes y existian alquileres de ese cliente en


la tabla Alquileres- Relacionados, quedar una informacin 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 relacin que exista 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 informacin errnea 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 mtodos:

CASO 1: Cuando cambiamos un atributo clave. En este caso tendremos que


cambiar tambin 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

Presentacin
Ya conocemos de las unidades anteriores algunos conceptos bsicos que se
manejan en el entorno de las bases de datos. Tambin sabemos crear tablas, pero
ante un Sistema de Informacin dado, se nos pueden plantear las siguientes
preguntas: Qu informacin debemos guardar en la base de datos? es necesaria
ms de una tabla?, Cuntas tablas necesitamos? Cul es la estructura de tablas
ms correcta? Qu relaciones debemos establecer entre ellas?.
Estos temas han preocupado a los ingenieros informticos desde los aos 70. Se ha
desarrollado una teora matemtica (relaciones, formas normales, etc.) que
demuestra que ante un sistema de informacin 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 teora matemtica, sino un mecanismo grfico de
representacin de la estructura de la informacin de un problema concreto.
Usaremos los grficos de Entidad/Relacin 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/ Relacin, el paso a una
estructura de tablas y relaciones de OpenOffice Base, es inmediata.
Con el uso de diagramas de Entidad/Relacin nos aseguramos, que la estructura de
tablas y relaciones que creamos, sea la ms correcta para representar nuestro
problema

Objetivo de la Unidad 3

Conocer los diagramas de Entidad / Relacin


Saber analizar pequeos problemas de base de datos que aparezcan en el
da a da
Saber razonar mediante los diagramas de E/R cual es la estructura de tablas
ptima de una pequea base de datos
Saber transformar un diagrama de E/R sencillo a tablas del sistema gestor
de bases de datos OpenOffice Base.

Anlisis de requerimientos
Dado un Sistema de Informacin 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 Informacin. Haremos un
anlisis 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, grficos etc. Para
ello debemos diagnosticar la situacin actual y recopilar los requerimientos tanto
nuestros como del departamento, en relacin al sistema.
El primer paso para disear una base de datos, es determinar su finalidad y cmo
se utilizar. Deberemos saber qu informacin se desea obtener. A partir de ah se
puede determinar los conjuntos de informacin a almacenar (entidades) y qu
atributos necesitamos almacenar sobre cada una de estas entidades.
Deberemos hablar con los dems usuarios que utilizarn 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.

CARCTERSTICAS DE LOS REQUERIMIENTOS


Los requerimientos de nuestro sistema de informacin deben cumplir las siguientes
caractersticas:

Necesario: Lo que pida un requerimiento debe ser necesario para el


sistema de informacin.
No ambiguo: El texto debe ser claro, preciso y tener una nica
interpretacin posible.
Conciso: Debe redactarse en un lenguaje comprensible por todos los
intervinientes.
Consistente: Ningn 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 tambin.
Completo: Los requerimientos deben contener en s mismos toda la
informacin necesaria, y no remitir a otras fuentes externas que los
expliquen con ms 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 verificacin puede lograrse mediante
inspeccin, anlisis, demostracin o testeo.

Fases del anlisis de requerimientos


1) Recolectar requerimientos
Puntos de vista de la informacin, 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 clculo, documentos informticos, ficheros. etc. Los
puntos de vista son susceptibles de consumir y producir datos. El anlisis se
preocupa de verificar que datos son producidos y consumidos realmente y que
suposiciones sobre las fuentes y destinos de datos son vlidos. 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 ms. 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 visin 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 ms 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 autorizacin y el departamento de control
de tasas le llama tasa de caza. Cada uno tiene un punto de vista distinto, ve
distintas caractersticas 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 informacin que
nos parecern que tiene entidad propia, pero en realidad unos son
subconjuntos de otros. Imaginemos un gabinete de prensa que contempla
como unidad de informacin las Publicaciones y los diarios. Realmente
diarios son subtipos de un tipo mucho mayor llamado publicaciones.
Tambin 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 ms parcial) de la
estructura de la informacin (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. Automticamente podemos pensar que asignatura es una
caracterstica inherente a profesor y que no merece ms estudio, es
simplemente un nombre. Sin embargo, en el departamento correspondiente
tienen otra vista de la materia, ya que saben que tiene informacin propia
adems del nombre, como pueden ser el nmero de horas de teora, horas
de prctica, aula en la que se imparte, etc. Por tanto desde este nuevo

punto de vista, la asignatura no es una propiedad del profesor sino que es


una realidad propia que merece almacenarse con todas sus caractersticas.
Conflictos de cardinalidad en relaciones: Imaginemos igualmente una
universidad, los profesores y las asignaturas que imparten. Si el profesor es
adems catedrtico, la relacin que tiene con la asignatura es "dirige". La
relacin es 1:1, un profesor solo puede dirigir una asignatura, sin embargo
este mismo profesor imparte clase y puede dar ms de una edicin de la
misma. En este caso la relacin 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 mltiple. Es
importante no solo detectar las informaciones sino las relaciones entre ellas.
Conflictos de informacin redundante entre las vistas.

3) Estructurar los puntos de vista


En niveles de jerarqua y en funcin de esa jerarqua, resolver los conflictos. Pensar
que cuanto ms alto es el nivel de jerarqua afecta a ms puntos de vista.

4) Priorizar los requerimientos


No siempre es posible un consenso entre todas las necesidades.

5) Conformidad y validacin
Someter los requerimientos priorizados a la conformidad y validacin de todos los
puntos de vista implicados.

6) Documento final
Realizar un sencillo documento resumido consensuado, con la definicin de los
requerimientos y las especificaciones finales.

Modelo de Entidad/Relacin
Una vez realizado el anlisis de requerimientos, pasamos a una fase en la que hay
que estudiar toda la informacin disponible y como se estructura. Se propone un
mtodo de representacin independiente de cualquier tecnologa de base de datos
que pueda plasmar dicha realidad. De esta forma surge el llamado diagrama
Entidad-Relacin. Fue propuesto por Peter P. Chen en 1976, modificado y ampliado
por varios autores ms, con nuevos mecanismos de abstraccin y representacin
de la realidad, lo que se conoce como el modelo EER (entidad-relacin extendido).
Est considerado como una forma de trabajar el modelo semntico de Bases de
Datos y es el ms ampliamente utilizado para el modelado de datos.
Para nosotros, tan solo ser un mtodo muy simplificado y sencillo de estudiar de
una forma general los datos implicados en nuestro sistema de informacin. Una
herramienta capaz de permitirnos predefinir toda la base de datos que vamos a
crear, a partir de un lpiz y un papel. Una metodologa que permite plasmar por
escrito toda la informacin obtenida en nuestro anlisis de requerimientos, una vez
filtrada, clasificada y priorizada.
Es un mtodo representativo que nos permite adivinar los grupos de datos que
tienen algo en comn. Cmo agrupar la informacin y cmo relacionarla entre s.
Posteriormente veremos que partiendo de este modelo, podremos traducir
inmediatamente estos diagramas en tablas y relaciones Access que sern el
fundamento bsico de nuestra base de datos.
Aunque existe un modelo extendido de este diagrama, nosotros nos centraremos
en su versin ms bsica y sencilla. Mostraremos una mnima parte de este
modelo, la necesaria para comprender el significado de los diagramas E-R ms
simples.
Un diagrama entidad relacin, es una tcnica de modelizacin que nos muestra los
datos relevantes del sistema, as como las relaciones entre estos datos a un alto
nivel de abstraccin. Es una forma de representacin en la que aparecen tres
elementos principales: entidades, atributos y relaciones.

Entidades - Atributos - Relaciones


1) Entidades
Dentro de un sistema de informacin podemos encontrar una
coleccin de cosas que tienen las mismas caractersticas, 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 pelculas de un video-club, en un modelo de la declaracin de
renta o en los empleados de la Generalitat Valenciana. Estas
colecciones de elementos se denominan entidades, y las
caractersticas comunes que los hacen semejantes, atributos. Cada
entidad puede ser descrita por uno o ms datos elementales
(atributos).
Se representa por medio de un rectngulo 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 inters en el sistema.

2) Atributos
Se utilizan para detallar el contenido de las entidades. Se representan
por valos unidos al rectngulo de la entidad a la que pertenecen por
medio de una lnea recta.

Existen dos tipos de atributos: Los descriptivos y los identificadores.


stos sirven para identificar un ejemplar de la entidad de otro. Los

atributos identificadores van subrayados y son conocidos como


Atributos clave, llaves primarias o simplemente llaves. Una llave o
atributo clave define unvocamente 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 vaco en las posibles
ocurrencias.
Ejemplo de representacin de la entidad CLIENTE:

3) Relaciones
Las entidades estn relacionadas entre s, no son entes aislados, as,
a travs 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 asociacin entre dos o ms
entidades. Nosotros veremos solo relaciones entre dos entidades. Una
relacin puede o no contener atributos.

Cardinalidad de la relacin
La cardinalidad de la relacin indica el nmero de ocurrencias de cada
entidad que estn relacionadas entre s. Existen tres tipos de relacin
en funcin de dicha cardinalidad.

Relaciones de muchos a muchos


Sean dos entidades A y B relacionadas mediante la relacin R con una
cardinalidad de muchos a muchos. La representacin grfica en un
diagrama de entidad relacin sera:

O una representacin alternativa

La relacin 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 informacin que versa sobre la


formacin 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 estn
relacionadas entre s. Los alumnos realizan cursos y los cursos son realizados por
alumnos, es decir, existe una relacin entre las dos entidades que podramos llamar
"asistencia a clase". Pero, cuntos cursos puede hacer un alumno en concreto?.
Sin duda muchos. Y por otra parte, cuntos alumnos pueden acudir a un mismo
curso?. Sin duda muchos tambin. Como vemos en esta relacin se podrn dar
combinaciones de muchos a muchos.

Relaciones de uno a muchos

Sean dos entidades A y B relacionadas mediante la relacin R con una cardinalidad


de uno a muchos. La representacin grfica en un diagrama de entidad relacin
sera: 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 representacin alternativa

La relacin 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 informacin de gestin de personal de una Conselleria


de la Generalitat. Tenemos varias entidades, PERSONAS, PUESTOS, NEGOCIADOS,
SECCIONES, LICENCIAS etc. Veamos la relacin entre los puestos del catlogo,
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
relacin tiene una cardinalidad de uno (negociado) a muchos (puestos). El nombre
de esta relacin podra ser Composicin del negociado.

Relaciones uno a uno


Sean dos entidades A y B relacionadas mediante la relacin R con una cardinalidad
de uno a uno. La representacin grfica en un diagrama de entidad relacin sera:

O una representacin alternativa

Como ejemplo podemos pensar en una entidad AUTOMOVIL y la entidad TARJETA


DE CIRCULACIN. Cada entidad tiene sus atributos, y la relacin entre ambas es de
cardinalidad uno a uno. En este caso a la relacin la podramos llamar Registro.

Otra manera de representar las relaciones es:

Transformacion de diagramas E/R a OpenOffice Base


Hemos visto los diagramas de E/R como un mtodo grfco 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 ms 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 informacin de personal, podemos tener dos entidades, DEPARTAMENTO
y EMPLEADO, con una relacin de 1 a muchos.

En efecto en un departamento trabajan muchos empleados, y un empleado trabaja


en un departamento. Si hacemos la transformacin a tablas, tendremos 2 tablas. La
tabla DEPARTAMENTO y la tabla EMPLEADO.

La tabla DEPARTAMENTO, que es la parte del uno de la relacin, tiene como campo
clave CdigoDep., por lo tanto este campo lo aadimos a la tabla de EMPLEADO que
es la parte del muchos de la relacin.

RELACIONES UNO A UNO


Hacemos lo mismo que en una relacin 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 repeticin. Por ejemplo, en un sistema de informacin de
personal de la conselleria, podemos tener dos entida- des EMPLEADO y PUESTO.
Estas entidades tienen una relacin de 1 a 1. Un empleado ocupa un solo puesto.
Un puesto solo puede ser ocupado por un empleado. Veamos la transformacin a
tablas:

Hemos escogido una de las tablas, EMPLEADO, y le hemos aadido el campo que es
clave en la tabla PUESTO, es decir n de puesto. Pero existe una particularidad. La
relacin es de uno a uno, por tanto en la tabla de EMPLEADO, el campo n de
puesto, no puede repetirse, ya que si lo permitiramos, estaramos asignando el
mismo puesto a diferentes empleados. Para asegurarnos de que en el campo n de
puesto, de la tabla EMPLEADO no se podrn 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 travs de la relacin muchos a muchos.

La entidad intermedia AB hereda los atributos clave de las entidades A y B.


Vemoslo con un ejemplo. Supongamos que estamos estudiando el sistema de
informacin de un videoclub. En nuestro anlisis de requerimientos habremos
detectado la informacin de clientes y la informacin de las pelculas. Tambin
veremos que existen las fchas de alquiler que nos relacionan los clientes y las
pelculas a travs de una relacin de muchos a muchos. Un cliente alquila muchas
pelculas y una misma pelcula es alquilada por muchos clientes. Representaramos
dicha relacin en un diagrama de ER como sigue:

Transformamos dicha relacin en 2 relaciones de uno a muchos. Vemoslo 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 (Cdigo).

Ejercicio 03 - Sistema de informacin de personal


Crear un diagrama entidad relacin segn el siguiente enunciado: Se desea guardar
informacin 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
seccin y servicio. Tambin queremos saber a que cursos ha asistido cada persona.
Adems 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.

Conclusin del Mdulo 1


En este primer mdulo hemos introducido los conceptos principales que se manejan
en los Sistemas de Informacin 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 metodologa relativamente sencilla para
llegar a buen puerto en el diseo de las tablas de una base de datos.

Presentacin del Mdulo 2


En este mdulo 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 estn ms o menos
cerradas. Podemos usar OpenOffice Base para crear listados no previstos, analizar
informacin (junto con OpenOffice Calc), y en general implementar pequeas
funcionalidades que no fueron previstas cuando se program la aplicacin.
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 prcticos, para lo cual nos descargaremos del
almacn 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.

Objetivo del Mdulo 2

Saber buscar informacin en una base de datos


Conocer qu son los filtros de informacin
Saber crear una consulta en una base de datos que nos proporcione la
informacin que precisemos en un momento dado.

Presentacin de la Unidad 1
En este mdulo 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 estn ms o menos
cerradas. Podemos usar Base para crear listados no previstos, analizar informacin
(junto con Calc), y en general implementar pequeas funcionalidades que no fueron
previstas cuando se program la aplicacin.
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 mdulo iremos realizando una serie de ejercicios prcticos, para lo cual nos
descargaremos del almacn 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.

Objetivo de la Unidad 1
Al finalizar la unidad deberemos ser capaces de:

Crear
Crear
Crear
Crear

fltros de ms de una condicin.


consultas de seleccin
consultas de agregacin
consultas parametrizadas.

La base de datos de pacientes


Descargaremos la base de datos EjemplosPacientes.odb del almacn. En este
mdulo vamos a realizar ejercicios sobre este fichero, por lo que vamos a
familiarizarnos con esta base de datos. Se usa para llevar la gestin de los
pacientes que acuden a centros de salud para ser tratados por facultativos.
Haciendo clic con el ratn en Menu -> Herramientas -> Relaciones

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

Vemos que tenemos las siguientes tablas:

PACIENTES
FACULTATIVOS
CENTROS
NUCLEOS POBLACIN

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 estn en una determinada poblacin.
Los pacientes viven en una determinada poblacin.

Abrir una tabla


Para abrir una tabla de OpenOffice Base, hacemos clic con el ratn 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 ratn en el objeto tablas.
2. Hacemos doble clic con el ratn en la tabla pacientes.

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

Desplazamiento por una tabla


En esta imagen tenemos una tabla en modo edicin. En las filas estn los registros
y en las columnas los campos. En la imagen podemos ver sealados los principales
elementos para "navegar" a travs de la tabla.

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


siguientes acciones:

1. Registro en el que estamos actualmente. Si hacemos clic podemos ir


directamente a un registro escribiendo su nmero.
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 pgina delante o atrs segn pulsemos abajo o arriba del puntero
de desplazamiento de la barra.
E) Este puntero arrastrado con el ratn nos permite movernos de forma rpida a
travs de los registros.
F) Desplaza un registro hacia atrs.

Uso del teclado para desplazarse por la tabla

Con la tecla de pgina anterior desplazamos tantos registros como quepan


en la pantalla hacia arriba.
Con la tecla de pgina 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 + pgina anterior nos desplazamos al primer registro en el campo
donde estemos situados
control + pgina 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.

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.

Bsquedas en tablas
Otra forma de desplazarmos por la tabla es mediante el cuadro de dilogo de
bsqueda. Lo activamos
1) Haciendo clic en el botn buscar

2) Con la combinacin de teclas CTRL + F (F de FIND encontrar en ingls)


Aparecer el cuadro de dilogo de bsqueda

Como podemos observar existen varias opciones; como forzar la coincidencia de


maysculas y minsculas, forzar una bsqueda utilizando el mismo formato de
presentacin 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.
2.
3.
4.

Situarse en el campo en el cual est la informacin que deseamos buscar.


Botn de bsqueda en barra de herramientas.
Dejar el cuadro tal como aparece en la fgura anterior (Valores por defecto).
Teclear el valor exacto en el cuadro de texto buscar e iniciar la bsqueda 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 comodn que nos da OpenOffice
Base, de esta forma, se teclea la palabra poniendo un asterisco delante y
detrs de la misma. Despus marcar la casilla de verificacin Expresin con
comodines. Pulsar el botn de buscar hasta que aparezca la siguiente
indicacin

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:

Ejercicio02
Buscar los pacientes que viven en la calle "GUILLEM DE CASTRO". Hay que usar el
comodn

Cambiar el ancho de una columna


Podemos cambiar el ancho de presentacin de una columna. Para lo cual:
1. Seleccionamos la columna, haciendo clic sobre la cabecera de la columna
2. Botn derecho del ratn. En el men contextual seleccionamos Ancho de
columna...

3. Aparece el dilogo de Ancho de columna. En el que podemos indicarle un ancho


en nmero o elegir Automtico, en este caso ser Base quien asigne el ancho de la
columna de forma que se puedan leer todos los datos.

Tambin podemos ajustar el ancho de una columna situando el ratn a la derecha


del descriptor del campo, la forma del puntero cambia a una doble fecha.

En este momento podemos hacer dos cosas:


1. Hacer click y sin soltar arrastrar a derecha e izquierda hasta la posicin
deseada.
2. Hacer doble click con lo que realiza un ajuste perfecto al igual que en la
opcin comentada anteriormente.

Ocultar una columna


OpenOffice Base permite ocultar una o ms columnas de la tabla temporalmente. Para hacerlo:
1. Seleccionamos la columna que queremos ocultar y ha clic con el botn derecho sobre ella
para seleccionar la opcin Ocultar columna. Para volver a hacerla visible tendrs que hacer
clic con el botn derecho sobre cualquier celda de la primera fila, seleccionar la opcin Mostrar
columnas y por ltimo hacer clic sobre la columna que queramos que vuelva a ser visible o
bien sobre la opcin Todas. Observa la figura 2.28.

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


2. Botn derecho del ratn. En el men contextual seleccionamos Ocultar
columna

Mostrar una columna

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


2. Botn derecho del ratn. En el men contextual seleccionamos Mostrar
columnas. Podremos seleccionar la columna que queremos mostrar o
todas las columnas.

ATENCIN: Estas modificaciones se pierden si no se guardan los cambios al salir de


OpenOffice Base.

Ordenacin de registros en tablas


Para ordenar rpidamente una tabla segn un campo, nos situaremos con el cursor
sobre el campo por el cual queramos ordenar y pulsaremos el botn de ordenacin
Ascendente, o el de ordenacin Descendente.

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

Ordenacin por ms de un campo


Para ordenar por ms de un campo pulsamos el botn 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.

Filtros
Junto con las operaciones de ordenacin mostradas anteriormente, los fltros
constituyen la herramienta de trabajo principal en las labores de recuperacin de
informacin. La mayora de trabajo con bases de datos consisten en aplicar por
tanto un fltro que limite el nmero de registros a partir de un criterio de seleccin y
una vez seleccionado este conjunto de registros, aplicar al mismo una adecuada
ordenacin.
Por tanto podemos definir un fltro como uno o varios criterios de seleccin
aplicados sobre uno o mas campos hasta conseguir nicamente los registros que
cumplan la combinacin de dichos criterios. Para trabajar con fltros podemos
recordar todo lo explicado en el apartado de bsquedas dentro de una tabla. Es
decir, se pueden realizar bsquedas exactas o bsquedas parciales utilizando
caracteres comodn.
Para usar un filtro hacemos clic en el botn Filtro estndar

Aparece la ventana de creacin del Filtro estndar

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 >=

Como.... (permite el uso de comodines '%' es como el asterico *, '?' para


indicar un solo carcter)
No como (Negado Como)
Vacio
No vacio

Pulsando Aceptar aparecen los registros que cumplen la condicin de filtrado que
hemos introducido.
Cuando estamos usando un filtro aparece marcado el botn usar filtro:

Otros botones de la barra de filtros:


Botn 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:

Botn eliminar filtro: Borra un filtro previamente introducido.

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 comodn % o *

Ejercicio 06
Obtener los registros de pacientes cuyo domicilio incluye ALGINET

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

Presentacin de la Unidad 2
Hasta ahora hemos visto 2 modos de seleccionar informacin de una tabla:

Bsquedas
Filtros

Hemos visto que aplicando fltros uno detrs de otro, se puede seleccionar
informacin 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 adems estamos limitados a 3 condiciones de filtrado. Por ejemplo,
no podramos 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 adems no podemos
guardarlos. Si construimos un fltro complejo y dentro de X tiempo queremos volver
a acceder a esa informacin tenemos que volver a crear el fltro desde el principio.
Con las consultas de seleccin no tenemos estos inconvenientes.

Objetivo de la Unidad 2

Saber crear una consulta de seleccin en una base de datos que nos
proporcione la informacin que precisemos en un momento dado

Consultas de seleccin
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 ms tablas
que cuando se ejecutan, como si fuera una macro instruccin compuesta de otras
pequeas instrucciones, conformarn una nueva vista de dicha tabla o tablas.
Las operaciones que podemos incluir en una consulta son:

Seleccin 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 informacin a partir de una o ms
tablas (una o ms consultas, tablas y consultas).

Pasos previos a la creacin de una consulta


Supongamos que nos hacen una demanda de este estilo: Relacin alfabtica de
pacientes pensionistas.
Si tuviramos que obtener informacin indagando en un listado obtenido a partir de
la tabla completa de pacientes, esto sera un trabajo laborioso y montono, sobre
todo cuando el nmero de registros es elevado. En ese momento hay que
plantearse que mediante las consultas, OpenOffice Base permite obtener la
informacin de manera fcil y rpida.
Este es el pues el primer paso, olvidarse del lpiz, el listado en papel y el clsico
punteo y plantearse realizar una consulta.
Lo siguiente es analizar la pregunta que nos hacen y traducirlo a ese lenguaje de
interrogacin que ya vamos conociendo, es decir:
1.
2.
3.
4.

Campos que necesito.


Identificacin de la(s) tabla(s) que contienen dichos campos.
Filtros que necesito.
Orden de presentacin

Una vez traducida, la frase con la que hemos comenzado este punto se convertira
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 ms largo, pero nos da las bases para poder empezar. Lo
siguiente que tenemos que hacer es analizar si disponemos de toda la informacin
referida en el punto anterior. Si disponemos de dicha informacin tendremos que
habilitar mecanismos (permisos, conexiones, etc.) que nos permitirn acceder a la
base de datos donde figura dicha informacin. (En el ejemplo, base de datos de
EjemploPacientes)
Identificar en que campos y por tanto en que tabla o tablas se encuentra la
informacin 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 presentacin de registros (Alfabtico) y el orden de presentacin en la que
vamos a presentar las columnas.

Creacin 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 diseo"

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

1. Seleccionamos la tabla que necesitamos


2. Hacemos clic sobre botn Aadir
3. Clic sobre botn Cerrar.
4) En este momento tendremos en pantalla la ventana de creacin de consultas.

5) Seleccionamos en la tabla el campo que queremos que aparezca en la consulta y


lo arrastramos hasta el apartado CAMPO en la seccin inferior de la ventana. Cada
campo en una columna diferente.

Borrar un campo de una consulta


Mientras estamos en el modo de diseo de una consulta, podemos borrar un campo
de la consulta:
1) Seleccionamos el campo a eliminar haciendo clic con el ratn en la cabecera del
campo. La columna queda seleccionada en video inverso.
2) Pulsamos la tecla suprimir (Supr).

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

Para quitar el orden en la presentacin de datos elegimos (sin ordenar) en el


desplegable de ordenacin

Mostrar el resultado de una consulta en modo edicin


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

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

Mostrar el resultado de una consulta


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

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

Criterios en las consultas

Para filtrar los datos en una consulta tendremos que especifcar la condicin de
fltrado en la fila de CRITERIOS de la consulta. Podemos poner criterios en ms de
un campo.
Para borrar un criterio de filtrado simplemente lo borramos de la fila CRITERIOS

Ejercicio08
En la base de datos ejemplopacientes.odb, crear una consulta que nos proporcione
un "listado alfabtico 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 dediseo.

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


Cerrar.

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 alfbetico, poniendo orden ascendente a los campos


Apellido1, Apellido2, Nombre.

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

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

Ejemplos de critrios 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 ms de un criterio de seleccin, justo debajo de la fila


Criterio existe otra titulada "O". En ella podemos escribir un nuevo filtro.

Ejercicio09
En la base de datos EjemploPacientes.odb, crear una consulta que tenga todos los
centros que estn en GILET, ordenados por en nmero de centro.
Lo resolvemos paso a paso:
1) Creamos una nueva consulta en modo vista de diseo.
2) Aadimos la tabla CENTROS.
3) Elegimos los campos Centro y NombreCentro.
4) Ponemos ordenacin 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

Parametros
Imaginemos que una vez creada la consulta del ejercicio anterior, nos piden una
consulta con los centros de salud de Burjasot. De momento tendramos 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
quisiramos obtener los centros de una poblacin en concreto tendramos que
hacer una nueva consulta.
Para solucionar este problema usamos los parmetros. Crearemos una nica
consulta parametrizada, de forma que cada vez que la ejecutemos, OpenOffice
Base nos pregunte, la poblacin 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 poblacin del centro.
Lo resolvemos paso a paso:
1) Creamos una nueva consulta en modo vista de diseo.
2) Aadimos la tabla CENTROS.
3) Elegimos los campos Centro y NombreCentro.
4) Ponemos ordenacin ASCENDENTE al campo Centro.
5) Ponemos el criterio de filtrado al campo NombreCentro. El criterio sera:
Como :Diga_Poblacin

6) Ejecutamos la consulta para ver los resultados. Aparece la ventana de peticin


del parametro:

En la casilla "Valor" podemos introducir la poblacin deseada, por ejemplo GILET,


tambin podemos poner caracteres comodn. 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%

Crear consultas con ms de una tabla


Podemos crear consultas que nos muestren informacin contenida en dos o ms
tablas. El proceso es sencillo, slo tenemos que incluir en la consulta las tablas que
contienen los campos que queremos mostrar, ahora bien, para que la informacin
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 estn.
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 estn relacionadas a partir del
campo Centro.
5) Creamos una nueva consulta en modo vista Diseo.
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 poblacin. En el criterio pondremos: COMO :Dime_Poblacin
11) Guardamos la consulta con el nombre ListadoFacultativosPorCentro

Ejercicios 12, 13 y 14

Ejercicio 12
A partir de la base de datos EjemploPacientes.odb, crear una consulta que nos de el
cdigo del centro, el nombre del centro y la direccin del centro. Ordenar el listado
por cdigo del centro. (NOTA: El cdigo 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
cdigo de centro que empieza por 46) Guardar la consulta como Ejercicio 12-2
Modifcar la consulta del listado de centros para que salgan una relacin alfabtica
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 relacin 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
cdigo del centro, el nombre del centro y la direccin del centro. Ordenar el listado
por cdigo 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

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

Ejercicios 15, 16 y 17

Ejercicio 15
Modificar la consulta del ejercicio anterior para que salgan los consultorios que
estn 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 segn demanda. Es
decir en el campo DescrNucleo, tendremos que poner un parmetro que nos
pregunte la poblacin, 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 alfabticamente) a los que no se les ha
asignado un nmero de colegiado.

Guardar la consulta como Ejercicio-17

Ejercicio18
En la base de datos EjemploPacientes.odb crear una consulta que nos de un listado
de todos los centros con cdigo de centro, nombre de centro, y nombre de
facultativo que trabaja en el centro. Ordenar por cdigo 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) ningn facultativo. Cuando
hacemos una consulta de ms de una tabla, hemos dicho anteriormente que las dos
tablas tienen que poder combinarse a partir de un campo comn. Esta combinacin
tiene unas propiedades. Para acceder a las propiedades de la combinacin:
1) Hacemos clic en la la linea que une las dos tablas, vemos que se queda
seleccionada en azul:
2) Botn derecho del ratn sobre la linea de combinacin, y seleccionamos Editar

Aparece la ventana de propiedades de la unin:

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 combinacin. En nuestro caso combinamos a partir de los
campos FACULTATIVOS.Centro y CENTROS.Centro
TIPO DE COMBINACIN: Indica como va a hacer Base la combinacin de las
dos tablas. Lo vemos con ms detalle.

TIPOS DE COMBINACIN
Si vemos el men desplegable de tipo de combinacin veremos que tenemos 4
posibilidades:
1) JOIN INTERNO: Los resultados de la combinacin 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:

Si hacemos una combinacin 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.

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 (CONTINUACIN)
Crear la consulta anterior como Ejercicio18-INTERNO. Comprobar el nmero de
registros que devuelve la consuta, debe ser 65
Modificar la consulta anterior para que el tipo de combinacin sea JOIN-DERECHO.
Observese que la tabla de la izquierda de la combinacin 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 combinacin sea JOINIZQUIERDO. Guardar la consuta como Ejercicio18-IZQUIERDO. Comprobar que la
consulta devuelve 66 registros y que el facultativo "ALMENDROS CORTINA OSCAR"
no tiene centro asignado.

Consultas de agregacin
Abrimos la consulta "Domicilios de pacientes" . En esta consulta tenemos nombre,
domicilio y poblacin de los pacientes. Imaginemos que deseamos saber cuantos
pacientes hay por poblacin, 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 saldran 56 registros de ALBORACHE, 541 de
ALGINET.. En esta consulta todos estos registros se agrupan en uno y adems en la
segunda columna le indicamos a Base que nos cuente el nmero 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 alfabtica de
poblaciones y el nmero de pacientes que hay en cada una de ellas.
Lo hacemos paso a paso:
1) Creamos una nueva consulta en modo diseo.
2) Agregamos la consulta "Domicilios de pacientes"

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.

6) Guardar la consulta como EJERCICIO-19


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

En este ejercicio hemos usado la funcin de agregacin CONTAR. Pero OpenOffice


Base permite usar las siguientes funciones de agregacin:

Promedio
Contar
Mximo
Mnimo
Suma
Desviacin estandar
Varianza

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 pequea 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.

Ejercicio20
En la base de datos Neptuno.odb, crear a partir de la consulta Facturas, otra
consulta que nos agru pe por pas destinatario, cuanto nos cuesta los gastos de
envio (campo cargo). Queremos saber el total gastado, cuantos envos hemos
hecho, el mximo por pas, el mnimo por pas, y el promedio.
Lo hacemos paso a paso: 1
) Creamos una nueva consulta en modo de diseo
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 botn
"Funciones" para activarla

6) En el campo PaisDestinatario ponemos funcin de agrupacin AGRUPAR. En los


campos Cargo, vamos seleccionando las funciones de agrupacin: Suma, Contar,
Mnimo, Mximo, Promedio.

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.

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 agrupacin.
2) Agruparemos por el campo vendedor.
3) Usaremos la funcin de agrupacin 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 pas. El resultado de la consulta debe ser algo
parecido a:

Guardar la consulta como Ejercicio-22

Consultas con campos calculados


Cuando creamos una consulta no tenemos por que limitarnos nicamente a los
campos de la tabla o consulta subyacentes. Tambin 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,


AoPedido, etc.
Das transcurridos entre 2 fechas.
Concatenacin de campos separados en un nico campo.
Operaciones aritmticas sobre campos numricos.

Operaciones con cadenas de caracteres


Las cadenas de caracteres normalmente estn asociadas a campos de tipo texto. El
operador princpal para este tipo de datos es la concatenacin o unin de cadenas,
lo expresamos con el smbolo ||. As '

'Jos' || 'Lpez' da como resultado 'JosLpez'


'Jos' || ' ' || 'Lpez' da como resultado 'Jos Lpez'

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:

Guardar la consulta como Ejercicio-23

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 concatenacin de nombre, apellidos y
DescrNucleo. Con la inclusin de algunas cadenas entrecomilladas de valor fijo.
3) Crear el alias "Encabezado Carta" para el campo calculado.

Clculos numricos
Podemos realizar las operaciones aritmeticas comunes:

Suma +
Resta Producto *
Divisin /

Podemos usar parntesis () para defnir el orden en que se realizan las operaciones.
Los operandos, pueden ser campos, parmetros 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.

Conclusin del Mdulo 2


En este mdulo hemos visto como extraer la informacin que precisamos de una
base de datos. Hemos empezado con las Bsquedas y Filtros que nos sirven para
buscar informacin 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 informacin
que precisamos.

Presentacin del Mdulo 3


En este mdulo vamos a centrarnos en Calc, el programa de hoja de clculo de la
suite OpenOffice. Ser el programa base desde el que analizaremos la informacin,
tanto la que podamos crear en Calc, como la informacin almacenada en Base de
OpenOffice.

El mdulo se estructura en 3 unidades:

La primera es una pequea introduccin - repaso de conocimientos


bsicos de hoja de clculo
En la segunda unidad aprenderemos a usar las tablas dinmicas de Calc,
que son una forma muy rpida y efectiva de analizar datos en esta hoja de
clculo.
En la tercera unidad aprenderemos a establecer conexiones con fuentes
de datos en diferentes formatos: Access, Dbase, FoxPro, Hojas de
clculo, ficheros de texto plano. Para lo cual usaremos conjuntamente Base
y Calc.

El mdulo tiene un componente prctico 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 clculo realizadas y enviarlas posteriomente al
profesor. Se indica claramente en cada ejercicio.

Objetivos del Mdulo 3

Conocer los conceptos bsicos que se manejan en programas de hoja de


clculo (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 dinmicas. Saber analizar informacin de bases de datos
Base OpenOffice, mediante esta herramienta.
Acceso a diferentes formatos de datos (TXT, DBASE, MDB, etc) con Base y
su posterior anlisis con Calc.

Presentacin de la Unidad 1
En esta unidad se presenta la hoja de clculo Calc, a nivel de introduccin. Se
introducen los conceptos bsicos que manejan todas las hojas de clculo, libros,
hojas, celdas, rangos, frmulas, 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.

Objetivo de la Unidad 1

Hacer una introduccin bsica a los conceptos manejados en las hojas de


clculo.
Conocer los siguientes conceptos: Libro, Hoja, Celda, Rango, Formula,
Direccin de Celda, Referencias absolutas, Referencias Fijas
Mtodos basicos usados en hoja de calculo, copiar una formula, arrastrar
una formula
Conocer las funciones bsicas de calc, SUMA, PROMEDIO, BUSCARV, SI
Tener una visin bsica de que tipo de problemas se solucionan con hojas de
clculo

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 clculo. Las hojas de clculo estn orientadas a resolver
problemas en los que podemos hacer clculos 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 clculo, tablas, grfcos, etc que podamos crear en Calc,
se guardan en un nico fichero con la extensin ODS. Segn la terminologa de
Calc, cuando abrimos un fichero con la extensin ODS, estamos abriendo un "libro
de Calc".
Por razones de compatibilidad con Microsoft Office, Calc tambin permite trabajar
con el formato XLS, aunque su formato nativo es el ODS.

Hoja de clculo
Un libro de Calc puede tener muchas hojas de clculo. Cuando abrimos Calc se crea
automticamente un libro en blanco, con 3 hojas de clculo vacas. 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 botn derecho del ratn sobre una de estas etiquetas aparece el men
contextual, que permite insertar, eliminar, cambiar el nombre a las hojas

Fila, Columna, Celda

Calc organiza el espacio de trabajo en hojas de clculo. Las hojas de clculo son
rejillas (grids) organizadas en filas y columnas. La interseccin 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 nmeros. Fila 23. Las celdas se referencian por la columna y
por la fila. As celda A10.
La referencia de una celda tambin se llama direccin. La direccin de una celda se
puede usar cuando creemos frmulas 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:

Datos alfanumricos.
Datos numricos.
Frmulas que calculen datos a partir de otras celdas.

Frmulas
Las frmulas en Calc son expresiones que se utilizan para realizar clculos o
procesamiento de valores, produciendo un nuevo valor que ser asignado a la celda
en la cual se introduce dicha frmula. Las formulas empiezan siempre con el signo
igual "=".
Una frmula en Calc puede contener cualquiera de los siguientes elementos:

referencias a celdas
constantes
operadores
funciones

Por ejemplo:

=A1+A2 , es una frmula 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 frmula 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 frmula que calcula la suma de los contenidos de
las celdas A1, A2, A3, A4, A5. Contiene la funcin suma

Rango de celdas
Un rango de celdas ser un conjunto de celdas contiguas. Los rangos se referencian
indicando la di- reccin de su celda superior izquierda, dos puntos ":" y la direccin
de la celda inferior derecha.

Ejercicio 01
Introducir los siguientes datos en una columna de la hoja de clculo. 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 evolucin de las ventas de
sus vendedores a lo largo del ao. 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)

Tenemos que organizar estos datos de ventas por meses en una tabla. Por una
parte tenemos los meses del ao, 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?.
SOLUCIN 1 (Meses en la fila, vendedores en la columna)

SOLUCIN 2 (Vendedores en la fila, meses en la columna)

Por cual optamos? Como muchas veces en informtica, no hay una solucin
correcta y otra incorrecta. Vamos a elegir la segunda solucin, por comodidad para
que la hoja de clculo 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 ms claros que la
lista que nos dieron de contabilidad. Queremos saber el total de ventas por meses.
Es decir, tendremos que aadir una columna ms con el rtulo "Total Mes"

En la celda F6, introduciremos una frmula que nos calcule el total de ventas de
enero. Dicha formula deber sumar las ventas de los 4 vendedores. Vamos a usar
la funcin SUMA, que es una de las ms importantes de las incluidas en Calc.
Nos situamos en F6 y pulsamos el botn 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.

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

Ejercicio 02 - (2 parte)
Ya tenemos la columna con los totales de venta por mes. Vamos a incluir una fla
ms 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.

En B23 pondremos una frmula que calcule el total de ventas del primer trimestre
de Ana. Ser una frmula que sume el rango B6:B8.
=SUMA(B6:B8)

Podemos arrastrar esta frmula hacia abajo? Lo probamos.

Parece que si que hemos podido. Pero Son correctos los datos? Los datos de
ventas trimestrales de Ana deberan ser:

La frmula 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 frmulas. Estamos usando REFERENCIAS RELATIVAS. En la frmula del

primer trimestre le estamos diciendo a Calc:

Al arrastrar la frmula hacia abajo tenemos:

En este caso para el segundo trimestre estamos sumando las ventas de Febrero,
Marzo, Abril, lo cual es incorrecto.
Las frmulas del trimestre correctas son:

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

Ejercicio 02 - (3 parte)
Vamos a aadir 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 botn de estilo porcentual.

La frmula para la celda G6 es =B2*F6


Si esta frmula 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 frmula 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 dlar delante de la referencia de la columna y de la fla. As
el porcentaje del iva en referencia absoluta es $B$2.
Modifcamos la frmula 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
comisin, los porcentajes pactados son:

Aadimos una lnea a la tabla para poner los porcentajes de comisin.

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

Vamos a crear la frmula para la comisin del primer trimestre de Ana. En la celda
B27. Queremos crear una frmula que podamos arrastrar tanto a la derecha (para
los otros vendedores), como abajo (para los otros trimestres).
En principio la frmula es =B19*B23
Vamos a examinar que pasa si arrastramos la frmula hacia abajo, para ponerla a
los otros trimestres.

Veamos que pasa si arrastramos la frmula hacia la derecha para los otros
vendedores:

Recapitulando, en B27 pondremos la frmula =B19*B23. Ahora bien B19 hace


referencia al porcentaje de comisin 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 smbolo 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.

La frmula 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

Ejercicio 03
Aadir 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 funcin


SUMA. En este ejercicio vamos a usar la funcin PROMEDIO. Como no conocemos
todas las funciones vamos a usar la opcin de insertar funcin, que nos abre un
ayudante, en el que paso a paso podremos elegir la funcin 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 funcin
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 ratn en el botn de insertar funcin:

Se abre el ayudante de insertar funcin. Las funciones estn clasifcadas por


categoras

Seleccionamos la categora "Estadsticas" y buscamos la funcin PROMEDIO.

Vemos que en la ventana del ayudante aparece una pequea descripcin de lo que
hace la funcin: "Devuelve el promedio de los argumentos"
Tambin est disponible un botn para buscar ayuda sobre esa funcin.
Hacemos clic en SIGUIENTE y aparece una ventana para insertar los argumentos de
la funcin: Hemos quedado antes, que queremos hacer el promedio de los datos del
rango B6:E6. Podemos escribir el rango directamente:

O bien si desconocemos el rango de datos, primero plegaremos la ventana de


insercin de argumentos, haciendo clic en el botn:

Al pulsar en el botn 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 ratn.
Con el ratn seleccionamos el rango que queremos introducir como argumento de
la funcin B6:E6. Vemos que Calc lo introduce automticamente como argumento
de la funcin. Volvemos a desplegar la ventana, haciendo clic en el mismo botn.
Pulsamos ACEPTAR
Ahora ya tenemos el promedio del mes de Enero. Arrastrar la formula para los otros
meses.
Guardar la hoja de clculo como Ejercicio03.ods

Ejercicio 04
Un profesor crea una hoja de clculo para gestionar las califcaciones de exmenes
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 frmula, luego la arrastraremos hacia


abajo.

Vamos a usar la funcin SI. Hacemos clic en el botn pegar funcin.

Seleccionamos la categora de funciones lgicas, y luego la funcin SI.

La funcin SI, tiene 3 argumentos:

PRUEBA LOGICA. Para Calc prueba lgica es cualquier expresin que se


pueda evaluar a Verdadero o Falso. En la expresin lgica, podemos usar
operadores de comparacin ( = , >, <, <>, >=, <=), o tambin otras
funciones. Tambin podemos hacer referencia a celdas o rangos. Por
ejemplo C3>=7 es una prueba lgica. Tambin lo es C3 > D4.
VALOR SI VERDADERO. Es el valor que devuelve la funcin SI, si la prueba
lgica se evala a VERDADERO. Podemos poner una constante numrica, un
texto, otra funcin, etc.

VALOR SI FALSO. Es el valor que devuelve la funcin SI, si la prueba lgica


se evala a FALSO.

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

Aadir una columna a la tabla con la calificacin tradicional: es decir:

Nos ponemos en E3 y empezamos a escribir la frmula. Esta vez la haremos


directamente sin el ayudante.
=SI(C3<5;"Suspenso"; VALOR_SI_FALSO
La primera parte de la frmula parece clara, preguntamos si el valor de la nota del
examen es menor de 5, si es as la frmula devolver "Suspenso", estamos
preguntando por el Tramo1 de la tabla.
Si la prueba lgica anterior C3<5, se evala 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 ms. Lo hacemos con otra funcin SI.
=SI(C3<5;"Suspenso";SI(C3 <6;"Sufciente";VALOR_SI_FALSO
Si la prueba lgica C3<6 se evala 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 frmula:
=SI(C3<5;"Suspenso";SI(C3
<6;"Sufciente";SI(C3<7;"Bien";SI(C3<9;"Notable";"Sobresaliente"))))
Guardar la hoja de clculo como Ejercicio04.ods

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

Deseamos crear una hoja de clculo en la que introduciendo el cdigo del producto
(celda B1), automticamente aparezca su descripcin y su precio (celdas B2 y B3).
Para ello vamos a usar la funcin BUSCARV. Bsqueda en vertical.

La funcin BUSCARV tiene los siguientes parmetros:

Lo que hace la funcin 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 parmetro "columna". El ltimo parmetro "ordenado" indica si la "matriz
buscar en" est ordenada o no, nosotros siempre pondremos FALSO

VALOR BUSCADO: Es donde hemos introducido el cdigo, 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 descripcin del producto, y
3 en el precio.

Guardar la hoja de clculo como Ejercicio05.ods

Presentacin de la Unidad 2
Una vez repasados los conceptos fundamentales de hoja de clculo en la Unidad1
vamos a usar Calc para analizar datos almacenados en bases de datos. Lo haremos
a travs 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 anisis de datos lo haremos mediante la gestin de tablas dinmicas de Calc, que
nos ofrece una potente herramienta para, mediante una interfaz grfica hacer
tablas de resumen, anlisis y grficos de datos almacenados en base de datos.

Objetivo de la Unidad 2

Conocer la herramienta de anlisis de datos "Tablas dinmicas"


Saber crear tablas dinmicas de acuerdo con nuestras necesidades de
informacin
Saber conectar bases de datos en OpenOffice Base con Calc para la creacin
de tablas dinmicas

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 dnde se encuentran
los datos, cmo se organizan, cmo se pueden obtener, etc.
Al registrar la fuente le indicamos a OpenOffice los parametros de conexin 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 opcin 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

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


Bases de datos

Hacemos clic en el botn NUEVO, aparece la ventana:

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

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

Tablas dinmicas
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 gestin
dinmica de tablas.
Vamos a conocerlas construyendo directamente una tabla dinmica a partir de los
datos de Neptuno. Iremos explicando los conceptos tericos tal como vayan
surgiendo.
En una hoja de clculo en blanco vamos a conectarnos con Neptuno. Para lo cual
iremos a Menu Datos -> Tabla dinmica - > Crear

Aparece la siguiente ventana:

Seleccionamos la base de datos Neptuno:

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 dinmica sobre la consulta FACTURAS


por lo que elegimos:

TIPO CONSULTA
FUENTE DE DATOS: Facturas

Pulsamos ACEPTAR:

(Continua en el siguiente apartado)

Partes de una tabla dinmica

La ventana de creacin de Tabla dinmica est dividida en 2 zonas:

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


consulta
DISEO: Distribucin de los campos a analizar en PAGINA, FILAS,
COLUMNAS, DATOS.

En una tabla dinmica estamos creando de manera visual el equivalente de las


consultas de agregacin vistas en la UNIDAD-02 Consultas del mdulo anterior.
Si recordamos lo visto en el ejercicios 18, 19 y 20 de dicho tema veamos que al
realizar consultas de agregacin tenamos un campo o conjunto de campos a los
que se les aplicaba la funcin AGRUPAR, y otros campos a los que se les aplica
funciones de agregacin: CONTAR, SUMA, PROMEDIO, ETC.
En las tablas dinmicas los campos por los que se agrupa se indican en CAMPO
FILAS, si queremos que ese campo de agregacin 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
agregacin.

Totales de precio con descuento por vendedor


Como ejemplo vamos a crear una tabla dinmica 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 nmerico nos introduce la funcin de agregacin
SUMA.

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

Totales de precio con descuento por destinatario


Imaginemos que queremos saber el mismo dato "PrecioConDescuento" pero
agrupado por "PaisDestinatario":
1) Hacemos clic con el ratn en cualquier celda de la tabla dinmica. Por ejemplo la
A3. Luego botn derecho del ratn y elegimos "Editar el diseo" en el menu
contextual que aparece:

2) Aparece la ventana de creacin de Tabla dinmica. Hacemos clic en el campo


"Vendedor" de CAMPOS DE FILAS, y lo arrastramos a la zona de CAMPOS

Veremos que el campo "Vendedor" ha desaparecido de CAMPOS DE FILAS:

3) Seleccionamos el campo "PaisDestinatario" y lo arrastramos a CAMPOS DE FILAS

Pulsamos ACEPTAR y obtendremos la siguiente tabla:

En estos dos ejemplos hemos visto como de manera mucho ms visual y fcil
hemos conseguido el mismo resultado que con las consultas de agregacin de
OpenOffice Base. Vamos a seguir explorando las posibilidades de las tablas
dinmicas de Calc.

Totales de precio con descuento por pas y vendedor


Crear una tabla dinmica 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 tenamos con
las consultas de agregacin, ya que estamos agregando y cruzando por dos campos
o variables diferentes "Vendedor" y "PaisDestinatario"
En la tabla dinmica, junto al campo "Vendedor" y al campo "PaisDestinatario",
vemos que aparece un desplegable:

Pulsamos en el desplegable de "Vendedor":

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 ao, 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:

Obtendremos la siguiente tabla:

Totales de precio con descuento y nmero de pedidos


por vendedor
Supongamos que queremos saber, el total de lo vendido con descuento por cada
vendedor y el nmero total de pedidos de cada vendedor.
Si analizamos lo que nos piden, vemos que tendremos que usar 2 funciones de
agregacin una que nos sume el precio con descuento, y otra que nos cuente algn
campo (IdCliente, por ejemplo), que nos proporcionar el nmero 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 funcin de agregacin SUMA. Hay que cambiarla a CONTAR, ya que
queremos que nos cuente el nmero de pedidos de cada vendedor. Haremos doble
clic sobre el botn:

Se abre la ventana de seleccin de funcin de agregacin en la que seleccionamos


CONTAR

Al final obtendremos una tabla de este estilo:

Como podemos ver en este ejemplo, en los CAMPOS DE DATOS podemos poner
ms de un campo de la tabla con diferentes funciones de agregacin. Las funciones
de agregacin incluidas en Calc son:

SUMA
CONTAR
PROMEDIO
MX
MN
PRODUCTO
CANTIDAD (solo nmeros): Funciona como CONTAR pero para campos
numricos
DESVEST (muestra). Desviacin estandar
DESVESTP (poblacin)
VARIANZA (muestra)

VARP (poblacin)

Anlisis de pedidos por fecha


Queremos analizar los pedidos de cada vendedor por fechas concretamente por
meses y aos. Vamos a construir una tabla dinmica con:

Vendedor en campos de filas


Suma de PrecioConDescuento en campos de datos
Mes de Pedido en campos de columna
Ao de Pedido en campos de pgina

Vemos que no podemos construir directamente esta tabla dinmica ya que en


nuestra tabla de datos no disponemos de los campos MesPedido y AoPedido.
Tenemos 2 soluciones:
1) Abrir la base de datos Neptuno y en la consulta Facturas aadir los campos
MesPedido y AoPedido.
2) Usar Calc para calcular los datos que nos faltan y generar la tabla dinmica.

Exploremos las 2 soluciones propuestas:


SOLUCIN 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

3) Aadimos 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 ao de la misma y MONTH que nos devuelve el mes.

Alias "AoPedido", YEAR([FechaPedido])


Alias "MesPedido", MONTH([FechaPedido])

4) Guardamos la consulta.
5) Volvemos a Calc y generamos la tabla dinmica:

Obtendremos una tabla de este tipo:

Observese que junto a AoPedido aparece un desplegable en el que podemos elegir


el ao que queremos que nos muestre en la tabla:

Anlisis de pedidos por fecha (2 solucin)


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 aos. Vamos a construir una tabla dinmica con:

Vendedor en campos de filas


Suma de PrecioConDescuento en campos de datos
Mes de Pedido en campos de columna
Ao de Pedido en campos de pgina

Vemos que nos faltan los campos MesPedido y AoPedido.


Lo hacemos paso a paso:
1) Nos situamos en Calc en una hoja de clculo en blanco.
2) Hacemos clic en el botn "Fuente de datos"

Aparece en la pantalla el Explorador de fuentes de datos con 2 zonas diferenciadas:

Lista de Exploracin de fuentes de datos registradas en OpenOffice


Zona de datos, en la que se muestran los datos devueltos por la fuente
seleccionada.

3) Seleccionamos de la fuente de datos NEPTUNO la consulta Facturas, veremos los


datos devueltos por dicha consulta en la zona de datos:

Ahora tenemos que pasar estos datos a la hoja de clculo para poderlos analizar y
manipular.
4) Hacemos clic con el ratn en la interseccin de las filas y columnas de la fuente
de datos y vemos que quedan seleccionados todos los datos de la consulta:

5) Seleccionamos con el raton la celda A1 que es donde queremos pegar los datos.
Hacemos clic en el botn "Datos en Texto", vemos que los datos que devuelve la
consulta Facturas quedan pegados en la hoja de clculo:

5) Los datos que queremos analizar ya estn en la hoja de clculo. Aqu podemos
tratarlos como cualquier tabla de la hoja de clculo, aadiendo columnas auxiliares.
Vamos a aadir 2 columnas auxiliares en las que calcularemos AoPedido y
MesPedido.
Primero ponemos las cabeceras de las nuevas columnas:

Celda AB1 ---> AoPedido


Celda AC1 ---> MesPedido

Ahora ponemos las formulas que calculan el AoPedido y MesPedido en la fila 2. Las
funciones a usar son:

=AO(<<Fecha>>) devuelve el ao de una fecha


=MES(<<Fecha>>) devuelve el mes de una fecha

El dato FechaPedido est en la columna N

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 pequeo
rectangulo negro. Nos situamos con el ratn en este punto, y vemos que el
puntero del ratn pasa de ser la flecha a una pequea cruz.

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 frmula de la columna AC


7) En este momento en la hoja de clculo tenemos una tabla con los datos que
queremos analizar y con los campos que necesitabamos. Construimos la Tabla
dinmica a partir de estos datos.
8) Definimos la nueva area de datos. Cuando hemos pegado los datos desde Base,
Calc se guarda la definicin 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 definicin 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 estn las columnas originales importadas
NO ESTAN las 2 columnas auxiliares que acabamos de crear

Mofidicamos el rango del rea de datos para que incluya las 2 columnas
auxiliares. El nuevo rango ser $A$1:$AC$2156

Pulsamos ACEPTAR. Ahora Calc ya tiene definida la nueva area de datos por
lo que procedemos a crear la Tabla dinmica

8) Vamos a Menu - Datos - Tabla Dinmica - Crear


9) Automticamente Calc detecta la zona de datos de la tabla. Le indicaremos
"Seleccin Actual"

10) Agregamos los campos que nos piden en la Tabla dinmica

11) Al final obtendremos una tabla similar a:

Anlisis 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 dinmica que queremos, los hemos de crear bien
modificando la consulta de OpenOffice Base, o bien modificando la tabla en Calc,
aadiendo las columnas auxiliares necesarias. Qu mtodo es ms cmodo?
Modificando la consulta de OpenOffice Base parece todo ms rpido. 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.
Adems Base no ofrece los cientos de funciones incluidas en Calc con lo que esta
primera opcin es mucho ms 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 dinmica hemos de tener una columna con el dato
"NombreMes". Crearemos una columna auxiliar en AD con una frmula que nos
devuelva el nombre del ms 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 frmula que vaya testeando los valores de "MesPedido",
ms o menos as:
=SI(AC2=1;"enero";SI(AC2=2;"febrero";SI(AC2=3;"marzo";..............
saldr una frmula con 12 funciones SI anidadas, lo cual es bastante engorroso.
Funcionara pero vamos a buscar una manera ms comoda.
CON LA FUNCION ELEGIR

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 frmula con esta funcin tendremos:
=ELEGIR(AC2;"enero";"febrero";"marzo";"abril";"mayo";"junio";"julio";"agosto";"s
eptiembre";"octubre";"noviembre";"diciembre")
CON LA FUNCION BUSCARV
Las 2 soluciones anteriores tienen sus problemas. La funcin SI se complica al tener
que poner muchas funciones SI anidadas. Con la funcin ELEGIR simplificamos un
poco pero estamos limitados a solo 30 valores diferentes.
Vamos a usar la funcin BUSCARV en la que solucionamos los problemas
anteriores.

1) Recordemos del tema introductorio de Calc los parametros de la funcin


BUSCARV

VALOR_BUSCADO: En nuestro caso la celda donde este el "MesPedido"


MATRIZ_BUSCAR_EN: Tabla en la que la funcin BUSCARV busca el
VALOR_BUSCADO en la primera columna de dicha tabla. En nuestro caso
tiene que buscar el valor del ms y devolver el nombre del mes. En la Hoja2
de nuestro libro de clculo 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 ao.
ORDENADO: Indica si la MATRIZ_BUSCAR_EN est ordenada o no. Ponemos
siempre FALSO

2) Introducimos en la celda AD2 la frmula que hemos ido construyendo:

3) Arrastramos la frmula a toda la tabla.

4) Redefinimos el rea de datos para que incluya la nueva columna auxiliar. Menu
Datos - Definir area

5) Creamos la tabla dinmica.

6) Vemos que las columnas de meses no estn ordenadas. Las ordenamos con el
desplegable de NombreMes - Orden personalizado

7) Obtendremos una tabla similar a

Campos de datos - Diferencia respecto a


Imaginemos que queremos comparar el desempeo de los diferentes vendedores
de Neptuno. Segn los datos de contabilidad e informes de gestin se nos indica
que un vendedor fiable es "Andrew Fuller" no es el que ms vende pero tiene
resultados sostenidos en el tiempo, por lo que se ha decido tomarlo como base de
comparacin 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 estn 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.

Vamos a construir esta tabla dinmica. Lo haremos paso a paso:


1) Partimos de la tabla dinmica base con los datos de los vendedores. Botn
derecho del ratn en cualquier celda de la tabla dinmica y seleccionamos "Editar
diseo" en el men contextual.

2) Hacemos doble clic sobre el campo SUMA - PRECIO CON DESCUENTO

3) Se abre la ventana de definicin del campo de datos

Para el valor mostrado, aparte de la funcin de agregacin podemos seleccionar


TIPO

NORMAL: Aplica la funcin de agregacin sin ms.


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"

Campos de datos - Diferencia respecto a - Elemento


Siguiente - Elemento Anterior
Imaginemos que queremos analizar el desempeo de ventas por vendedor tomando
como base las ventas del mes de enero. Construiriamos una tabla dinmica de este
tipo:

En esta tabla se muestra que Buchanan Steven vendi 1164.97 dolares ms 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 ms o menos que en el anterior. Es decir en febrero comparamos
con enero, pero en marzo comparemos con febrero.

Modificamos la tabla dinmica 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 disminucin de ventas.

Campos de datos - % de
Si los datos de ventas de Fuller Andrew representan nuestra base de comparacin,
es decir lo vendido por Fuller es nuestro 100%. Cuanto ha vendido cada vendedor
respecto a este dato?
Construimos la tabla dinmica seleccionando estas opciones para el Campo de
datos:

Obtendremos la siguiente tabla dinmica:

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.

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 ms clara la informacin podemos hacer que se muestre los
datos de ventas como porcentajes del elemento base-.
Modificamos la tabla dinmica con los siguientes valores para el Campo de Datos:

Obtenemos la siguiente tabla dinmica

Esto nos indica que Buchanan Steven en enero vendi un 22.39% menos que Fuller
Andrew en el mismo mes.

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

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 dinmica:

Para crearla introducimos los siguientes parametros en el Campo de Datos:

Presentacin 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.

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 histrico 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

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 extensin "mdb" de MS Access, o, puede hacerse a travs
de lo que se conoce como manejadores de conexin con bases de datos ODBC
(Object Database Connectivity)
Los ODBC son programas que actan como intermediarios entre el usuario y un
sistema de bases de datos en particular, de manera que, una vez establecidos los
parmetros de conexin 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.

En general para poder conectar con un origen de datos necesitamos.

Saber en qu ordenador se encuentran los datos y disponer de enlace fsico


y lgico.
Conocer el formato de los datos y descripcin 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 mayora de los casos, necesitaremos
ponernos en contacto con nuestro Departamento de Informtica de
referencia para conocer los parmetros necesarios y que nos habiliten los
permisos de acceso.

Conexin con Microsoft Access


Microsoft Access ha sido hasta ahora el estandar de bases de datos en
microinformtica y su uso est muy extendido en todos los mbitos tanto
empresariales como en la administracin. El hecho de que sea un programa de
Microsoft por el que hay que pagar licencia de uso ha llevado a plantear a la
administracin a desencentivar su uso proponiendose otros formatos de bases de
datos que por ser OpenSource no precisan de licencias.
An as, en la administacin nos encontramos con muchas pequeas (o no) bases
de datos desarrolladas en este formato, al que debemos ser capaces de acceder
tanto para poder analizar datos de programas todava en uso o programas
histricos que se desarrollaron en este formato.
OpenOffice Base permite la conexin 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

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

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

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 estarn modificando los datos de la aplicacin MDB.
As que cuidado

A partir de este momento podemos usar la base de datos EstudiantesYClasesOpenOffice-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
dinmicas.

Conexin con DBASE


En estos momentos el estndar de base de datos para equipos de ofimtica es
Access. Pero esta situacin no siempre ha sido as. A finales de los aos 80 y
durante gran parte de la dcada de los 90, el formato estndar era el Dbase.
En las bases de datos Dbase, cada tabla se creaba en un fichero separado con la
extensin DBF. Este tipo de ficheros se creaban adems con los lenguajes de
programacin Clipper, y Foxpro.
En algunas Consellerias de la Generalitat Valenciana todava existen en
funcionamiento algunas aplicaciones que se programaron con este formato, y otras
aplicaciones que se mantienen por razones de consulta de histricos.
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.

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 estn las dos tablas INSFACUL, e
INSPACI incluidas en los ficheros de ejemplo del curso.

Recordar otra vez que cuando accedemos a la base de datos Ejemplo-AccesoDBF.obd se est accediendo a los datos originales de DBASE por lo que cualquier
modificacin que hagamos la estamos haciendo en la aplicacin original. As que
cuidado.
Resaltar que en la versin 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 limitacin importante.

Conexin 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 haramos con Excel.
Si se trata de una tabla de datos que se ha creado en Excel puede ser
interesante acceder a ella a travs de una conexin con Base. Con esta
opcin 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 clculo

2) Seleccionamos el fichero EJEDIAG.XLS incluido en los ficheros de ejemplo del


curso

3) Guardamos el fichero como Ejemplo-Acceso-XLS.odb


4) Comprobamos que en la base de datos tenemos la tabla EJEDIAG

En el caso de conexin 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.

Acceso a DBASE desde Calc


En OpenOffice para acceder a ficheros en formato DBF aparte de la opcin de crear
una conexin 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 pgina de codigos en que se cre el fichero DBF, si no la


sabemos seleccionamos la que nos presenta por defecto 850/Internacional

5) Veremos que en la hoja de clculo 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.

Conexin con ficheros TXT


El formato de datos TXT tambin 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 lnea de texto, y
los campos de la tabla se separan delimitndolos con algunos caracteres especiales
(comas, dobles comillas, el carcter | , 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
posicin 1 a la 30, el Apellido2 desde la posicin 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 informtico 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

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 estn los nombres de los campos


Los campos van entrecomillados
La separacin entre campos/columnas de la tabla se hace por el caracter
punto y coma

Introducimos estos datos en el asistente

5) Guardamos el fichero como Ejemplo-Acceso-TXT.odb

Conclusin del Mdulo 3


En este mdulo 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 dinmicas de Calc y hemos visto que
mediante esta metodologa consultar, resumir y relacionar la informacin de las
tablas de una base de datos es una tarea sencilla que podemos hacer desde una
interfaz grfica que no precisa de conocimientos de programacin.
Hemos aprendido a conectar BASE con CALC y estos dos programas con distintos
formatos de base de datos que hay en el mercado.

Conclusin del curso


Despus de estas semanas trabajando con OpenOffice hemos visto que esta suite
ofimatica es una alternativa vlida a otras de pago. En general los programas son
ms o menos similares a los de Microsoft si exceptuamos tal vez Base que se queda
un poco corto en comparacin con Access.
Aunque no nos hayamos convertido en analistas expertos de base de datos si que
me gustara que hubiera quedado claro que el metodo de ponerse directamente a
crear tablas sin ton ni son quede definitivamente descartado de nuestros hbitos.
Vale la pena dedicar, aunque solo sea media hora, a pensar mediante la
metodologa de los diagramas de E/R, cual va a ser la estructura de tablas ms
adecuada para el problema que intentamos modelizar.

También podría gustarte