3
Workspace: Datos de Empresa • LINUX USER 77 Número 49 WWW.LINUX - MAGAZINE.ES S i somos propietarios de una empresa o trabajamos por cuenta propia, ana- lizar nuestros datos empresariales puede sernos tan útil como a las grandes corporaciones. No es necesario invertir miles de euros en herramientas de inteligen- cia empresarial (IE) de alta calidad. En muchos casos, la aplicación OpenOffice.org Base combinada con la extensión Sun Report Builder pueden hacer el trabajo igual de bien. Sun Report Builder [1] usa el mismo motor de informes que la suite IE Pentaho [2] y su pedigrí la hace una herramienta per- fecta para el análisis de nuestros datos empresariales. OpenOffice.org Base, a su vez, puede conectarse a distintos sistemas de bases de datos, de manera que podemos usarla para extraer datos desde virtualmente cualquier aplicación empresarial que utiliza una base de datos y analizarlos con las herramientas ofrecidas por Sun Report Buil- der. Tómese, por ejemplo, BambooInvoice [3], una aplicación de facturación de fácil uso basada en MySQL/PHP [4], la cual, a pesar de realizar un buen trabajo adminis- trando facturas, es bastante limitada cuando analiza los datos de facturación. OpenOf- fice.org es lo que da el color aquí. Usando la combinación Base/Sun Report Builder, podemos crear una solución que nos per- mita ver los datos de la factura desde distin- tos ángulos y convertir los números en gráfi- cos fácilmente digeribles. Antes de comenzar debemos asegurarnos de que tenemos instalados en nuestro sis- tema Sun Java Runtime Environment y la última versión de la extensión Sun Report Builder. La primera orden empresarial es conectar OpenOffice.org Base al back end de la base de datos de BambooInvoice. Para hacerlo necesitamos un pequeño programa llamado conector, el cual actúa como un puente entre el back end basado en MySQL de BambooInvoice y una base de datos de OpenOffice.org Base. MySQL proporciona dos conectores: Con- nector/ODBC y Connector/J [5]. En el ejem- plo de aquí usaré el último, porque es signi- ficativamente más fácil instalarlo y configu- rarlo. Una vez que descargamos Connector/ J del sitio web de MySQL, desempaqueta- mos el archivo y movemos el que resulta, mysql-connector-java-x.x.x-bin.jar, al lugar que deseemos (por ejemplo, a nuestro direc- torio de inicio). En OpenOffice.org, seleccionamos Herra- mientas | Opciones | OpenOffice.org | Java, a continuación nos aseguramos de que se selecciona el Java Runtime Environment apropiado y pulsamos el botón Ruta Clase. Seguidamente, hacemos lo propio en Añadir CONSTRUCTOR DE BASE CONSTRUCTOR DE BASE Archivo y seleccionamos mysql-connector- java-x.x.x-bin.jar. Para guardar las configu- raciones pulsamos Aceptar, cerramos la ven- tana y volvemos a iniciar OpenOffice.org. Ahora estamos preparados para conectar OpenOffice.org a la base de datos MySQL. En OpenOffice.org, seleccionamos Nueva | Base de Datos. En el Asistente de Database seleccionamos la opción Conectar a base de datos existente, elegimos MySQL de la lista desplegable y pulsamos Siguiente. A conti- nuación seleccionamos la opción Conectar usando JDBC (Conectividad de base de datos de Java) y pulsamos Siguiente. Intro- ducimos los nombres de la base de datos en los campos apropiados (por defecto, Bam- booInvoice usa una base de datos llamada bamboinvoice y la dirección del servidor (Figura 1). Para asegurarnos de que el driver de MySQL JDBC funciona adecuadamente, pul- samos el botón Probar clase. Cuando se ha cargado con éxito, presionamos Siguiente, introduciendo seguidamente el nombre de usuario en el campo Nombre de usuario y marcando el cuadro de comprobación Se requiere contraseña. Para comprobar que todo funciona como debe pulsamos el botón Probar Conexión, y luego Siguiente, seleccio- namos la opción Sí, registrar la base de datos por mí , y por último presionamos Finalizar. Aprendemos a analizar nuestros datos empresariales con la ayuda de OpenOffice.org Base y la extensión Sun Report Builder. POR DMITRI POPOV Inteligencia empresarial con OpenOffice.org Base Inteligencia empresarial con OpenOffice.org Base

Inteligencia empr esarial con OpenOf fice.org Base ...the-eye.eu/public/Site-Dumps/index-of/index-of.co... · Base de Datos. En el Asistente de Database seleccionamos la opción Conectar

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Inteligencia empr esarial con OpenOf fice.org Base ...the-eye.eu/public/Site-Dumps/index-of/index-of.co... · Base de Datos. En el Asistente de Database seleccionamos la opción Conectar

Workspace: Datos de Empresa • LINUX USER

77Número 49W W W . L I N U X - M A G A Z I N E . E S

Si somos propietarios de una empresa

o trabajamos por cuenta propia, ana-

lizar nuestros datos empresariales

puede sernos tan útil como a las grandes

corporaciones. No es necesario invertir

miles de euros en herramientas de inteligen-

cia empresarial (IE) de alta calidad. En

muchos casos, la aplicación OpenOffice.org

Base combinada con la extensión Sun

Report Builder pueden hacer el trabajo igual

de bien.

Sun Report Builder [1] usa el mismo

motor de informes que la suite IE Pentaho

[2] y su pedigrí la hace una herramienta per-

fecta para el análisis de nuestros datos

empresariales. OpenOffice.org Base, a su

vez, puede conectarse a distintos sistemas

de bases de datos, de manera que podemos

usarla para extraer datos desde virtualmente

cualquier aplicación empresarial que utiliza

una base de datos y analizarlos con las

herramientas ofrecidas por Sun Report Buil-

der. Tómese, por ejemplo, BambooInvoice

[3], una aplicación de facturación de fácil

uso basada en MySQL/PHP [4], la cual, a

pesar de realizar un buen trabajo adminis-

trando facturas, es bastante limitada cuando

analiza los datos de facturación. OpenOf-

fice.org es lo que da el color aquí. Usando la

combinación Base/Sun Report Builder,

podemos crear una solución que nos per-

mita ver los datos de la factura desde distin-

tos ángulos y convertir los números en gráfi-

cos fácilmente digeribles.

Antes de comenzar debemos asegurarnos

de que tenemos instalados en nuestro sis-

tema Sun Java Runtime Environment y la

última versión de la extensión Sun Report

Builder. La primera orden empresarial es

conectar OpenOffice.org Base al back end de

la base de datos de BambooInvoice. Para

hacerlo necesitamos un pequeño programa

llamado conector, el cual actúa como un

puente entre el back end basado en MySQL

de BambooInvoice y una base de datos de

OpenOffice.org Base.

MySQL proporciona dos conectores: Con-

nector/ODBC y Connector/J [5]. En el ejem-

plo de aquí usaré el último, porque es signi-

ficativamente más fácil instalarlo y configu-

rarlo. Una vez que descargamos Connector/

J del sitio web de MySQL, desempaqueta-

mos el archivo y movemos el que resulta,

mysql-connector-java-x.x.x-bin.jar, al lugar

que deseemos (por ejemplo, a nuestro direc-

torio de inicio).

En OpenOffice.org, seleccionamos Herra-

mientas | Opciones | OpenOffice.org | Java, a

continuación nos aseguramos de que se

selecciona el Java Runtime Environment

apropiado y pulsamos el botón Ruta Clase.

Seguidamente, hacemos lo propio en Añadir

CONSTRUCTOR DEBASECONSTRUCTOR DEBASE

Archivo y seleccionamos mysql-connector-

java-x.x.x-bin.jar. Para guardar las configu-

raciones pulsamos Aceptar, cerramos la ven-

tana y volvemos a iniciar OpenOffice.org.

Ahora estamos preparados para conectar

OpenOffice.org a la base de datos MySQL.

En OpenOffice.org, seleccionamos Nueva |

Base de Datos. En el Asistente de Database

seleccionamos la opción Conectar a base de

datos existente, elegimos MySQL de la lista

desplegable y pulsamos Siguiente. A conti-

nuación seleccionamos la opción Conectar

usando JDBC (Conectividad de base de

datos de Java) y pulsamos Siguiente. Intro-

ducimos los nombres de la base de datos en

los campos apropiados (por defecto, Bam-

booInvoice usa una base de datos llamada

bamboinvoice y la dirección del servidor

(Figura 1).

Para asegurarnos de que el driver de

MySQL JDBC funciona adecuadamente, pul-

samos el botón Probar clase. Cuando se ha

cargado con éxito, presionamos Siguiente,

introduciendo seguidamente el nombre de

usuario en el campo Nombre de usuario y

marcando el cuadro de comprobación Se

requiere contraseña. Para comprobar que

todo funciona como debe pulsamos el botón

Probar Conexión, y luego Siguiente, seleccio-

namos la opción Sí, registrar la base de datos

por mí, y por último presionamos Finalizar.

Aprendemos a analizar nuestros datos empresariales con la ayuda de

OpenOffice.org Base y la extensión Sun Report Builder.

POR DMITRI POPOV

Inteligencia empresarial con OpenOffice.org BaseInteligencia empresarial con OpenOffice.org Base

Page 2: Inteligencia empr esarial con OpenOf fice.org Base ...the-eye.eu/public/Site-Dumps/index-of/index-of.co... · Base de Datos. En el Asistente de Database seleccionamos la opción Conectar

LINUX USER • Workspace: Datos de Empresa

78 Número 49 W W W . L I N U X - M A G A Z I N E . E S

entre estas tres

tablas, para lo cual

arrastramos el ratón desde un campo en una

tabla al campo objetivo en la otra tabla. De

este modo se añade un conector entre

ambas tablas.

En este caso de muestra necesitamos

crear dos relaciones: bamboo_invoices.id a

bamboo_invoice_items.invoice_id y bamboo-

clients.id a bamboo-invoices.client.id (Figura

2). Luego añadimos los campos

invoice_number, dateIssued, name y

amount a la consulta arrastrándolos desde

las tablas a las columnas Campo en el panel

inferior de la ventana de la consulta.

Una vez añadidos los campos, hemos de

agrupar el campo invoice_number de

manera que todas las filas con el mismo

número de factura aparezcan como un ele-

mento en el informe. Para hacerlo seleccio-

namos Agrupar en la fila Función de la

columna invoice_number. Igualmente, tene-

mos que configurar la opción Función del

campo amount a Suma. De este modo el

campo amount contendrá la suma total de

todas las facturas de pago con el mismo

número de factura.

Para entender mejor qué es exactamente

lo que hacen las funciones Agrupar y Suma,

probamos a ejecutar la consulta sin ellas. El

Listado 1 muestra resultados similares a los

que deberíamos obtener. Como puede apre-

ciarse, una única factura posee una fila sepa-

rada para cada elemento de la misma. A

continuación aplicamos las funciones Agru-

par y Suma como se ha descrito y ejecuta-

mos la consulta de nuevo. El resultado debe-

ría ser una fila simple, que es exactamente lo

que necesitamos (Listado 2).

Seguidamente guardamos la consulta y le

damos un nombre, por ejemplo “Consulta

1”. Luego, podemos comenzar a trabajar en

un nuevo informe.

Para un nuevo informe, cambiamos a la

sección Informes y pulsamos el enlace Crear

Vista de Didesño de Informe. Esto abre un

informe en blanco en Sun Report Builder. En

la sección Datos del panel Propiedades,

especificamos una fuente de datos seleccio-

nando Consulta de la lista desplegable Tipo

de Contenido y la Consulta 1 creada de la

lista Contenido. A continuación arrastramos

Después de que demos un nombre a la

base de datos (por ejemplo, “BambooIn-

voice”), la guardamos, abrimos la base de

datos y pulsamos el botón Tablas. Tras intro-

ducir la contraseña de la base de datos,

deberíamos ver una lista de todas las tablas

en la base de datos bambooinvoice.

Creación de Consultas e

Informes

Ahora explicaré cómo crear un informe sim-

ple que imprima una lista de todas las factu-

ras almacenadas en BambooInvoice. Cada

elemento en la lista contendrá el número de

factura, nombre del cliente, fecha de crea-

ción de la factura y el importe total. Todos

los datos están almacenados en las distintas

tablas de BambooInvoice, de modo que

debemos crear una consulta que extraiga las

grabaciones de ellos. Cambiamos a la sec-

ción Consultas y pulsamos el enlace Crear

Vista de Diseño de Consulta para crear una

consulta nueva. En la ventana de la con-

sulta, añadimos tres tablas de la base de

datos: bamboo_invoices,

bamboo_invoice_item y bamboo_clients.

Seguidamente hemos de crear relaciones

Figura 1: Configuración de Connector/J.

Figura 3: Creación de un informe simple. Figura 4: Consulta para el segundo informe.

Figura 2: Consulta para el primer informe.

Page 3: Inteligencia empr esarial con OpenOf fice.org Base ...the-eye.eu/public/Site-Dumps/index-of/index-of.co... · Base de Datos. En el Asistente de Database seleccionamos la opción Conectar

hacerlo pulsamos dos veces en el gráfico,

que lo pondrá en modo edición, pulsamos

con el botón derecho en el gráfico y seleccio-

namos el elemento Tipo de Gráfica, lo que

abrirá el asistente Tipo de Gráfica que nos

ayudará a seleccionar y configurar el for-

mato que deseemos (Figura 6).

Conclusión

Usando Sun Report Builder podemos conver-

tir OpenOffice.org Base en una potente herra-

mienta. Si no tienes ganas de crear la solución

que hemos descrito desde cero, puedes des-

cargarte la base de datos de prueba Bambo-

oInvoice.odb [6], que contiene los informes y

consultas descritos anteriormente.

La base de datos requiere una instalación

BambooInvoice que funcione, por lo que

debemos sustituir las configuraciones de

conexión por defecto. Para hacerlo, abrimos

la base de datos BambooInvoice.odb, selec-

cionamos Editar | Base de Datos | Propieda-

des y sustituimos el nombre de usuario y la

contraseña predeterminados. �

Workspace: Datos de Empresa • LINUX USER

79Número 49W W W . L I N U X - M A G A Z I N E . E S

los campos desde la ventana Añadir campo

a la sección Detalle del informe y los organi-

zamos y formateamos como deseemos

(Figura 3). Ya está, nuestro informe está pre-

parado. Para probarlo pulsamos el botón Eje-

cutar Informe de la barra de herramientas

principal de Report Builder.

Adición de Gráficos

Como Sun Report Builder soporta gráficos

(de tarta, barra, etc.), podemos explorar

nuestros datos visualmente mediante gráfi-

cos en lugar de hacerlo con filas planas de

texto y números. Por ejemplo, podemos

crear un informe con un gráfico que repre-

sente la cantidad facturada por cada cliente.

De manera similar a un informe normal, un

informe con un gráfico extrae los datos

directamente de una tabla o consulta. Como

tenemos que conseguir filas de tablas dife-

rentes, necesitamos éstas. En este caso,

debemos obtener los datos del campo name

de la tabla bamboo_clients y el campo

amount de la tabla bamboo_invoice_items.

Al igual que en la consulta anterior, tene-

mos que configurar la opción Función de los

campos name y amount a Agrupar y Suma

(Figura 4). Tras guardar la consulta, creamos

un nuevo informe que la usará como fuente

de datos (Figura 5). Como querremos que

nuestro gráfico aparezca en el informe una

sola vez, deberemos situarlo en la sección

Enabezamiento del Informe o en Pie del

Informe, luego pulsamos el botón Gráfico de

la barra de herramientas principal de Report

Builder y dibujamos un gráfico en la sección

del informe que deseemos. Después de ase-

gurarnos de que el gráfico está seleccionado

(por ejemplo, tiene unos tiradores verdes

alrededor), seleccionamos la consulta ade-

cuada como su fuente de datos.

Nótese que en lugar de crear la consulta

en la sección Consultas, podemos especifi-

carla directamente como la fuente de datos

del gráfico en el informe. Para ello, seleccio-

namos Comando SQL de la lista desplegable

Tipo de Contenido, luego pulsamos el botón

al lado de la lista Contenido para abrir la

ventana de consulta; a continuación lo usa-

mos para crear la consulta. Una vez que

guardamos la consulta creada, el sistema la

convierte en sentencias SQL y las inserta en

el campo Contenido.

Por defecto, Sun Report Builder inserta

una gráfica de barras, aunque podemos

cambiarlo por otro tipo de gráfico. Para

Figura 5: Añadiendo un gráfico. Figura 6: Sustitución fácil del gráfico de barras predeterminado.

[1] Sun Report Builder: extensions.

services.openoffice.org/project/

reportdesign

[2] Pentaho: www.pentaho.com

[3] BambooInvoice: www.

bambooinvoice.org

[4] “Cómoda Solución” de Dmitri Popov.

Linux Magazine edición en castellano

nº 48.

[5] Conectores MySQL: http://www.

mysql.com/products/connector/

[6] Base de datos BambooInvice única:

www.mediafire.com/?gi44bdx1z4m

RECURSOS

01 invoice_number dateIssued name amount

02 3 11/27/08 Nuts and Bolts Inc 2743

Listado 2: Consulta con Agrupar y Suma

01 invoice_number dateIssued name amount

02 3 11/27/08 Nuts and Bolts Inc 375

03 3 11/27/08 Nuts and Bolts Inc 2157

04 3 11/27/08 Nuts and Bolts Inc 211

Listado 1: Consulta sin Agrupar y Suma