Está en la página 1de 19

Introduccin a Pentaho Dashboard

Material Extrado de Pentaho Solutions - Business Intelligence and Data Warehousing with Pentaho and MySQL

Lic. Ana Smail


Ao 2010

Introduccin a Pentaho Dashboard

La comunidad de cdigo abierto se nutre de la participacin y la


cooperacin. Hay varios canales de comunicacin disponibles
donde las personas pueden ayudar, pero no estn obligados a
hacerlo. Usted es responsable de su propio xito, lo que
requerir tiempo, esfuerzo y una pequea cantidad de
capacidad tcnica.

Ao 2010

Introduccin a Pentaho Analysis

Bibliografa
Pentaho Solutions - Business Intelligence and Data Warehousing with Pentaho and MySQL de Roland Bouman
Jos van Dongen

Bibliografa web
http://wiki.pentaho.com/display/ServerDoc1x/03.+Action+Sequenc
es
http://wiki.pentaho.com/display/ServerDoc2x/Design+Studio
http://wiki.pentaho.com/display/ServerDoc2x/3.+Action+Sequence
+Editor

Ao 2010

Introduccin a Pentaho Analysis

Qu veremos en este mdulo ?




Introduccin a pentaho Dashboard




CDF : community Framework Dashboard

Pentaho Designer: Action Sequence

Ao 2010

Introduccin a Pentaho Dashboard




Un Dashboard (tablero de instrumentos) es una


aplicacin que se utiliza para presentar el
contenido de BI de alto nivel a los usuarios finales.

El contenido del Dashboard, es casi siempre de


carcter grfico.

Por lo general, los indicadores grficos de alto


nivel que aparecen en el Dashboard proporcionan
cierto grado de interactividad que permite al
usuario navegar por contenidos ms detallados.

Ao 2010

Introduccin a Pentaho Dashboard


CDF (Community Dashboard Framework)


Es un conjunto de tecnologas open source que permite a los


desarrolladores de BI crear cuadros de mando dinmicos para el
Pentaho Server BI.

Los CDF Dashboard, son pginas web que utilizan la tecnologa


AJAX para combinar de forma dinmica los componentes de BI,
tales como informes, grficos, tablas OLAP, y mapas.

El CDF est incluido en el servidor Pentaho BI, pero es desarrollado


y mantenido por los miembros de la Comunidad Pentaho en vez de
la Compana Pentaho.

Se distribuye bajo licencia LGPL. Se aloja en :


http://code.google.com/p/pentaho-cdf/.

Ao 2010

Introduccin a Pentaho Dashboard


Dnde encontrar documentacin?
La documentacin del proyecto est disponible en:
 el Wiki de Pentaho
http://wiki.pentaho.com/display/COM/Community
+Dashboard+Framework.


Hay un foro en forums.pentaho.com, que se


dedica a temas del CDF.

Para obtener asistencia comercial, puede contactar


con WebDetails en http://www.webdetails.pt/

Ao 2010

Introduccin a Pentaho Dashboard


CDF: Conceptos y Arquitectura

Extrado de: Pentaho Solutions - Business Intelligence and Data -Warehousing with Pentaho and MySQL

Ao 2010

Introduccin a Pentaho Dashboard


CDF: Conceptos y Arquitectura
1.

El usuario final desde un navegador web explora un dashboard. Lo que


causa una peticin HTTP enviada al Pentaho Server BI.

2.

El Pentaho Server BI recibe la solicitud y reconoce que debera entregar


un dashboard al cliente. La solicitud contiene el nombre y el path de la
solucin del dashboard, basta con localizar el archivo xcdf que
corresponde.

3.

El archivo. Xcdf especifica:


template-dashboard: marcadores de posicin de componentes +
instrucciones JavaScript para llenar los componentes.

template-document o externo (debe estar explcitamente)


4.

La pgina web es recibida por el navegador en el que se lee y se


muestra. El dashboard es inicializado.

Ao 2010

Introduccin a Pentaho Dashboard


CDF: Conceptos y Arquitectura
5.

Despus de la inicializacin del Dashboard, los componentes


responden a los comandos implementados por el objeto.(p.e.:
update, actualizacin del contenido)

6.

El Pentaho Server BI recibe la solicitudes de los componentes,


que por lo general, solicitan la ejecucin de un action sequence.

7.

El Pentaho Server BI ejecuta la action sequence.

8.

El contenido generado por la action sequence se enva de


nuevo al componente solicitante. Este coloca el contenido en su
marcador de posicin dentro del document-dashboard con lo
que se hace visible.
Ao 2010

Introduccin a Pentaho Dashboard


Glosario
Pentaho Solution Repository:




Una solucin es un conjunto de documentos que juntos definen los procesos


y actividades que implementan la solucin de sistemas de un problema de
negocios.
Las actividades y procesos ejecutados por Pentaho BI se encuentran en
pentaho/biserver/pentaho-solutions

Action Definition:




Definicn XML que especifica parmetros, recursos y seteos requeridos para


la ejecucin de un paso dentro de un componente.

Action Sequence Definition:




Documento XML que define la interaccin entre una o ms Action Definition.


Se almacenan el Solution Repository.

Component:




Puede contener todo el cdigo requerido para ejecutar una tarea o solo ser
una interface a otra aplicacin o sistema. Los datos e instrucciones para los
componentes son provedos por una Action Sequence Definition.

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO

Antes de empezar hay que ajustar el encoding segn el documento How


Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: detalle de componentes


El panel de control contiene los siguientes componentes:


En la parte superior izquierda, un grfico circular que
muestra el gasto por Ejercicio.

En la parte inferiror izquierda, un grfico circular que


muestra el gasto por fuente.

En la parte superior derecha un grfico de barra que de


acuerdo al ejercicio y fuente selecionada muestra las 10
partidas de la red programtica en las que ms se ha
gastado.

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Setup


Crear una carpeta separada para mantener todos los items relacionados
con el dashboard (es mejor hacerlo desde la consola de usuario). Esto
hace ms sencillo crear nuevos, slo copiando y modificando uno ya
existente, y permite reusar componentes.
Para ver la carpeta creada hay que refrescar el repositorio.

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Setup


Cuando creamos una carpeta desde la consola de usuario de


Pentaho, se crea asociado a la carpeta un archivo index.xml .

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: archivo .xcdf


El archivo .xcdf es un archivo XML que describe el dashboard.

Se crean en cualquier directorio del Solution Repository, para


permitir que el usuario navegue hasta el Dashboard.

Todo el contenido del archivo est entre los tags <cdf> y


</cdf>.

Los tags ms importantes son:


<title>: es obligatorio y define el nombre del dashboard y
cmo aparece al usuario.

<template>: identifica el template del contenido del
dashboard. El valor es un nombre de archivo.

<style>: identifica un document template, en el que
contenido del dashboard se colocar. Si no se especifica, se
utilizar en por defualt provedo por el CDF.


Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: creando el archivo .xcdf
Primer paso en la creacin de un Dashboard.

Crear un nuevo archivo de texto presupuesto.xcdf directamente en el


directorio presupuesto, con algn editor de texto.

1.

Abrir el archivo presupuesto.xcdf y agregar el siguiente contenido:

1.

<?xml version="1.0" encoding="ISO-8859-1"?>


<cdf>
<title>Dashboard Presupuesto</title>
<author>Ana</author>
<description>Dashboard Presupuesto</description>
<icon></icon>
<template>presupuesto-template.html</template>
</cdf>

Salvar el archivo

2.

Archivos en el directorio Material/Dashboard/01-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Crear el archivo HTML del Dashboard



Crear el document-dashboard.
El archivo presupuesto.xcdf incluye el tag <template>, para especificar el content template
del dashboard:





<template>presupuesto-template.html</template>

Este archivo presupuesto-template.html debe crearlo en el mismo directorio dnde est el


presupuesto.xcdf.
Abrir el presupuesto-template.html y agregar:
<h1>Prueba Dashboard</h1>
<script language=javascript type=text/javascript>
// Obtener repositorio de la solucion y path
var solution = Dashboards.getQueryParameter(solution);
var path = Dashboards.getQueryParameter(path);
// Dashboard Parameters
//parameter definitions go here
// Component Definitions
var components = [];
</script
<script language="javascript" type="text/javascript">
// Dashboard initialization
function load(){
Dashboards.init(components);
}
load();
</script>

Salvar los cambios.

Archivos en el directorio Material/Dashboard/01-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: informacin en el cdigo del document-dashboard



Obtener el path y la solucin.


?solution=SIU&path=/Dashboard/presupuesto&action=pres
upuesto.xaction

Parmetros de Dashboard
Dashboard.globalcontext=true, es el valor por default

Define el comienzo de la seccin de parmetros y permite al
dashboard utilizar todas las variables globales como
parmetros





Componentes de Dashboard
El padrn tpico es el de crear todas las definiciones de
componentes y aadir todos juntos al objeto Dashboard con
una llamada a su mtodo init.

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: TESTING


Desde la Consola de Usuario, refrescando primero el repositorio (esto


conviene hacerlo desde la Consola Administrativa antes de iniciar sesin
en la de Usuario)

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Action Sequence Grfico de Gasto por Ejercicio
Por cada component del Dashboard de ejemplo tenemos que crear una
Action Sequence.

Crear una Action Sequence se utiliza el PENTAHO DESIGN.


1.

Iniciar PENTAHO DESIGN desde:


pentaho/design_tools/design-studio/PentahoDesignStudio.exe

Archivos en el directorio Material/Dashboard/02-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Pentaho Design Studio
Las principales funciones son crear/editar, testear, y
desplegar action sequence, xml y otros documentos.




Editores basados en formularios que sirven para la


definicin de los action sequences y generar los
correspondientes documentos XML.

No utilizado para crear o modificar report definitions,


esquemas OLAP o ETL scripts, pero s para linkear estos
recursos en los correspondientes componentes.

Los archivos de las Action Sequence finalizan con .xaction.

Es una aplicacin que corre dentro de ECLIPSE

Archivos en el directorio Material/Dashboard/02-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Pentaho Design Studio
2.

Crear un proyecto para el repositorio de soluciones de


Pentaho BI Server.

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Encoding del Pentaho Design Studio
3.

Configurar Design Studio para trabajar por defecto con ISO8859-1.

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Desarrollando Action Sequence
Las nuevas Action Sequences son creadas a partir de un
Template





El template por default es blank


Otros Templates: Hello World, Send Email, Shark Burst,
Sample Burst Action

Desin Studio contiene 4 tabs para la configuracin de


action sequences:







General: propiedades generales asociadas con la action


sequence.
Define Process: Donde se hace la definicin del proceso.
Especifica inputs, action definitions, workflow y outputs.
XML Source: Visualiza y edita el XML.
Test: Ejecuta la action sequence sobre un Pentaho BI Server
que est corriendo.

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Action Sequence Grfico de Gasto por Ejercicio
1.

2.

Crear una nueva action sequence dentro de SIU/Dashboard/presupuesto


llamada EjercicioPagado.xaction
El primer paso de la action sequence es un proceso relacional llamado

EjercicioPagadoData (se puede encontrar este tipo de Process Action en el submen


Get Data Form), que tiene asociada una consulta SQL
3.

El segundo paso de la action sequence es llamada PieChart. El proceso se


encuentra en el submen Chart.

Algunas opciones del grfico circular:
<chart-attributes>
<chart-type>PieChart</chart-type>
<url-template><![CDATA[javascript:clickOnEjercicio('{ejercicio}')]]></url-template>
<paramName>ejercicio</paramName>
<include-legend>false</include-legend>
<title-font>
<font-family>Ariel</font-family>
<size>12</size>
<is-bold>false</is-bold>
<is-italic>false</is-italic>
</title-font>
</chart-attributes>

Documentacin:
http://wiki.pentaho.com/display/ServerDoc2x/Chart+Reference

Archivos en el directorio Material/Dashboard/02-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: XactionComponet


Incluir el componente , xactionComponent,


en el template-document del dashboard:


Agregar una marca de posicin dashboard dnde


se mostrar la salida del componente.

Archivo SIU/dashboard/presupuesto/presupuesto-template.html
<div id="ejercicioPObject"></div>
<script language="javascript" type="text/javascript">
resto del archivo

El tag <div> debe estar antes que el tag <script>

Archivos en el directorio Material/Dashboard/02-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: XactionComponet


Crear un objeto JavaScript que sabe qu action


sequence ejecutar.

ejercicioP =
{
name: "ejercicioP",
type: "xaction",
solution: "SIU",
path: "Dashboards/presupuesto",
action: "EjercicioPagado.xaction",
listeners:[],
parameters: [],
htmlObject: "ejercicioPObject",
executeAtStart: true,
preExecution:function(){},
postExecution:function(){}
}

var components = [ejercicioP];


Archivos en el directorio Material/Dashboard/02-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: XactionComponet


Agregar el parmetro ejercicio


var ejercicio = "null";

Crear la funcin que reacciona a la


seleccin de una porcin del grfico.
<SCRIPT LANGUAGE="JavaScript">
function clickOnEjercicio(value) {
Dashboards.fireChange('ejercicio',value);
}
</SCRIPT>

Archivos en el directorio Material/Dashboard/02-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: XactionComponet


Los atributos de un component son:










name: string que identifica el componente. Debe ser nico.


Type: string que se usa para instanciar un objeto de una clase
de componente. (en este caso Xaction o XactionComponente)
Solution: string con el nombre del repositorio de la solicin.
Path: Ruta dentro de la solucin.
Action: nombre del archivo .xaction.
Parameters: arreglo de parmetros deben ser pasados
cuando se invoca la action sequence.
htmlObject: string asignado al id del marcador de posicin
<div>. Establece un link entre el documento HTML y el objeto
Javascript.
executeStart: valor booleano. En true hace que el componete
sea creado con todos los componentes al iniciarse el
dashboard. Sin embargo, puede cambiar en respuesta al
cambio en un parmetro.

Archivos en el directorio Material/Dashboard/02-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Action Sequence Grfico de Gasto por Fuente
Creamos una Action Sequence que devuelva el segundo grfico de torta,
mostrando las fuentes y el monto pagado:

1.

Crear una nueva action sequence dentro de


SIU/Dashboard/presupuesto llamada fuentePagado.xaction.

2.

El primer paso de la action sequence es un proceso relacional llamado


fuentePagadoData (se puede encontrar este tipo de Process Action en el

submen Get Data Form), que tiene asociada una consulta SQL
3.

El segundo paso de la action sequence es llamada PieChart. El proceso


se encuentra en el submen Chart.

<chart-attributes>
<chart-type>PieChart</chart-type>
<url-template><![CDATA[javascript:Dashboards.fireChange('fuente',
'{fuente}')]]></url-template>
<paramName>fuente</paramName>

..
El mtodo fireChange() comunica el cambio del parmetro al objeto
Dashboard
Archivos en el directorio Material/Dashboard/03-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: XactionComponent Grfico de Gasto por Fuente


Incluir el componente , xactionComponent, en el


template-document del dashboard:




Agregar una marca de posicin dashboard dnde se


mostrar la salida del componente.
Crear un objeto JavaScript que sabe qu action sequence
ejecutar.
Agregar el parmetro fuente
var fuente = "null";

Modificar la funcin que reacciona a la seleccin de una


porcin del grfico.

<SCRIPT LANGUAGE="JavaScript">
// Esta funcion es ejecutada cuando un usuario que ha
// seleccionado una fuente selecciona un ejercicio
// El proposito de la funcion es resetear la variable fuente a
// null y pasar el ejercicio que ha sido seleccionado
// The function is executed from the url-template tag in the ejercicioPagado.xaction
function clickOnEjercicio(value) {
fuente = "null";
Dashboards.fireChange('ejercicio',value);
}
</SCRIPT

Archivos en el directorio Material/Dashboard/03-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Action Sequence Grfico de Gasto por
Red Programtica para un Ejercicio y Fuente


Creamos una Action Sequence que devuelva el segundo


grfico de torta, mostrando las fuentes y el monto pagado.
1.
Crear una nueva action sequence dentro de
SIU/Dashboard/presupuesto llamada RedPPagado.xaction.
2.

Usar la If Statement (Process Action),para testear cul de los


parmetros ejercicio o fuente tiene valor y construir la consulta
MDX al cubo de presupuesto.

3.

Como ltimo paso de la action sequence crear un


proceso llamado RedBarChart. El proceso se encuentra
en el submen Chart y corresponde a un grfico de
Barras.

Archivos en el directorio Material/Dashboard/04-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: XactionComponent Grfico de Gasto por Red
Programtica para un Ejercicio y Fuente


Incluir el componente , xactionComponent, en el templatedocument del dashboard:





Agregar una marca de posicin dashboard dnde se mostrar la


salida del componente.
Crear un objeto JavaScript que sabe qu action sequence
ejecutar.

redPP =
{
name: "redPP",
type: "xaction",
solution: "SIU",
path: "Dashboards",
action: "RedPPagado.xaction",
listeners:["fuente", "ejercicio"],
parameters: [["fuente", "fuente"], ["ejercicio", "ejercicio"]],
htmlObject: "redPPObject",
executeAtStart: true,
preExecution:function(){},
postExecution:function(){}
}
var components = [ejercicioP,fuenteP,redPP];

Archivos en el directorio Material/Dashboard/04-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Cambio dinmico del ttulo del Dashboard
Se trata de que el ttulo del Dashboard cambie respondiendo a la seleccin
de Ejercicio o Fuente, o ambas.

Agregar un marcador de posicin




<div id="titleObject"></div>


Agregar el componente nuevo:
titleString =
{
name: "titleString",
type: "text",
title: "SIU_Presupuesto",
listeners:["fuente", "ejercicio"],
htmlObject: "titleObject",
executeAtStart: true,
expression: function(){return this.title},
preExecution:function(){
if( ejercicio == "null" && fuente != "null") {
this.title = "Top Ten por " + fuente;
}
else if ( ejercicio != "null" && fuente == "null") {
this.title = "Top Ten por " + ejercicio;
}
.. },
postExecution:function(){}
}
var components = [ejercicioP,fuenteP,redPP,titleString];

Archivos en el directorio Material/Dashboard/05-presupuesto

Ao 2010

Introduccin a Pentaho Dashboard


EJEMPLO: Personalizar el Document Template


El document-template usado por default es el que se


entrega con el CDF y se encuentra en PentahoSolution/System/Pentaho-cdf y se llama templatedashboard-mantle.html que no incluye navegacin.

Creamos en el mismo directorio uno personalizado llamado


template-dashboard-siu.html

Agregamos al archivo pentahosolution/SIU/Dashboard/presupuesto/presupuesto.xcdf el


tag

<style>siu</style>
Lo que le informar que este dashboard tiene un document
tempplate personalizado.

Archivos en el directorio Material/Dashboard/05-presupuesto

Ao 2010

Preguntas
Lic. Ana Smail
(anasmail@unnoba.edu.ar)

Ao 2010

También podría gustarte