En esto de ponerme al día con el Blog, voy a publicar un pequeño plugin que tengo desarrollado hace ya algún tiempo, se trata de un plugin que facilita el uso de Google Visualization en xactions de Pentaho, pueden ver algunas demos aquí.
Componentes:
- eGlu-google-viz.jar
Uso:
1) Copiar el archivo eGlu-google-viz.jar en [BISERVER_HOME]/tomcat/webapps/pentaho/WEB-INF/lib
2) En el contexto de PDS (Pentaho Design Studio) , editando una xaction, debe crearse una nueva entrada de tipo Custom.
Luego configurar el componente:
En Component Class, siempre debe ir: ar.com.eglu.pentaho.googleviz.EGluGoogleVizComponent
Los inputs posibles son:
- input-resultset: es obligatorio, de tipo result-set y contiene el set de datos que se utilizará para generar los gráficos.
- data-cols-types: es obligatorio, de tipo string, define los tipos de datos de las columnas que formarán parte de la salida, son cadenas separados por coma, deben ser la misma cantidad que los columnas efectivas (las que serán mostradas, por defecto todo el result-set), los valores posibles son: boolean, number, string, date, datetime y timeofday.
- data-cols-labels: es opcional, de tipo string, define los nombres de las columnas columnas que formarán parte de la salida, son cadenas separados por coma, deben ser la misma cantidad que los columnas efectivas. Si no se define este input se utiliza el nombre de las columnas que retorna la consulta sql.
- data-cols: es opcional, de tipo string, define las columnas columnas que formarán parte de la salida, son números enteros separados por coma, deben ser la misma cantidad o menos que las columnas del result-set. Si no se define este input se utilizarán todas las columnas y en el orden en que se encuentren en el resultset. La primera columna comienza por 1. Puede repetirse el mismo número varias veces.
Ejemplo:
input-resultset:
-----------------------------------------------
| idCliente | cliente | fecha | importe |
-----------------------------------------------
| 1 | cliente1 | 10/01/2009 | 10 |
| 2 | cliente2 | 10/01/2009 | 20 |
| 3 | cliente3 | 10/01/2009 | 30 |
| 3 | cliente4 | 10/01/2009 | 15 |
-----------------------------------------------
data-cols: 2,3,4 Notar que solo se mostrarán cliente, fecha e importe, se descarta idCliente. Esto produce 3 columnas efectivas.
data-cols-types: string,date,number data-cols-labels: Razón Social,Fecha,Venta
Los outputs posibles son:
- data-out: nombre de la variable que contendrá los valores generados por el plugin, estos valores son en realidad, un DataTable que requerie la API de Google para generar los gráficos, contiene los datos propiamente dichos.
3) Crear la salida html utilizando data-out, a continuación muestro un snippet de código que pueden utilizar, el componente de la xaction donde generarlo puede ser un Message Template.
<html> <head> <script type="text/javascript" src="https://www.google.com/jsapi"></script> <script type="text/javascript"> google.load('visualization', '1', {'packages':['motionchart']}); google.setOnLoadCallback(drawChart); function drawChart() { var r="{data-out}"; var opt="{width: 800, height:400}"; var fun=new Function("v","o","render("+r+",v,o,"+opt+")"); fun(0.5,'chart_div'); } function render(data, version, id_object_render_to,options) { var data=new google.visualization.DataTable(data,version); var chart =new google.visualization.MotionChart(document.getElementById(id_object_render_to)); chart.draw(data, options); } </script> </head> <body> <h2>Demo GoogleViz - by Magm (eGlu)</h2> <h3>Motion</h3> <div id="chart_div"></div> <div id="chart_div1"></div> </body </html>
Les adjunto además de los archivos necesarios, una serie de ejemplos y un backup de la base de datos de MySQL necesaria para correr algunos de los ejemplos. Deberán crear una conexión llamada dwventas desde la consola de administración que apunte a la base de datos una vez restaurada. Deberán renombrar los archivos a .rar para poder descomprimirlos.
He agregado el archivo (Demo_GoogleViz_eGlu.rar_.txt) es un video de como se ve en Pentaho. Gracias por el comentario Carlos!
Adjunto | Size |
---|---|
Demo_GoogleViz_eGlu.rar_.txt | 162 bytes |
googleviz-eglu.src_.rar_.txt | 162 bytes |
material-googleviz-eglu.rar_.txt | 162 bytes |
Una buena aportación para
Subido por Carlos el 2 Febrero, 2010 - 20:20
Una buena aportación para ponerte al dia.
No tendrás un pantallazo de ejemplo de cómo queda la visualización en Pentaho?
Como se ve
Subido por magm el 3 Febrero, 2010 - 01:24
En respuesta a Una buena aportación para por Carlos
Mil perdones, era mi intención agregar un video de como se ve en Pentaho desde el principio, ahora modifico el post y lo agrego.
Saludos