En esta ocasión vamos vamos a hablar de otra herramienta del stack de Microsoft para soluciones de BI: PerformancePoint. La idea de escribir esta entrada me surgió como algunas otras, algún colega lo pregunta en los foros.
Pregunta
Is there any way that I could setup that drop down menu will show just words: Fiscal Month, Fiscal Quarter, and Fiscal Year? I do not want to see the names of the months and the year. And it will point, for example, to the fiscal month based on today's date? And Fiscal Month should be default selection.
Is it possible to do?
Básicamente requiere un filtro que no disponga de fecha sino de elementos con nombre: Mes Fiscal, Trimestre Fiscal y Año Fiscal, y que acoten los datos segmentando por la dimensión tiempo, basados en la fecha actual.
Respuesta
Sure! xD
En realidad la respuesta fue algo más larga, así que vamos…
Desarrollo
En la creación de Dashboards (o paneles en spanish) es muy frecuente la implementación de filtros que faciliten al usuario la interacción con los distintos elementos que contienen, como informe analíticos, scorecards, etc..
Para implementar un filtro de tiempo y en particular de Inteligencia de Tiempo es obligatorio tener configurada una dimensión de tipo tiempo, suena obvio pero por si acaso lo comento (quien no ha visto una dimensión de tiempo sin configurar mínimamente?)
Para nuestro ejemplo, vamos a suponer que tenemos una dimensión de tiempo con una jerarquía Calendario con los siguientes niveles: Años, Semestres, Trimestres, Meses y finalmente días.
Vamos al DashBoard designer o Diseñador de Paneles. Voy a utilizar la versión 2007 en la que los filtros son elementos propios de cada panel, no se pueden compartir, pero el mecanismo para implementarlos en 2010 es básicamente el mismo.
¿Que es Inteligencia de Tiempo?
La versión corta es que Microsoft ha utilizando este término para definir los métodos ideados para facilitar el uso de la dimensión tiempo en un cubo. La versión larga puedes leerla de TechNet. En PerformancePoint se limita a la utilización de fórmulas en filtros de tiempo para facilitar la visualización de conjuntos con nombre.
Configurar conexión
Ya en el diseñador, el primer paso es configurar el tiempo en la conexión. Para esto nos vamos a la carpeta Orígenes de Datos, en el Explorar de área de trabajo, y seleccionamos el origen que utilicen los elementos del panel dónde vamos a implementar el filtro. El origen de datos debe ser de tipo Multidimensional.
En el editor del origen de datos, acceder a la pestaña Tiempo:
En el desplegable dimensión de tiempo hay que seleccionar la dimensión que nos facilitará la información sobre el tiempo en los distintos elementos que formen parte del panel en el que queramos incluir el filtro.
En miembro de referencia seleccionar un miembro que defina la granularidad más baja, por ejemplo el día 15, Mar 2011
En nivel de la jerarquía seleccionaremos el nivel que identifique el miembro establecido en el miembro, en el punto anterior. Siguiendo el ejemplo establecemos Día.
En Fecha de referencia se elegirá la fecha correspondiente al miembro seleccionado: 15/05/2011 15/03/2011
Solo queda asociar los niveles de la jerarquía los niveles de agregación:
Y con esto finaliza la configuración del origen de datos necesaria para implementar un filtro de tiempo.
Creación del filtro Inteligencia de Tiempo
Para crear el filtro hay que posicionarse en el dashboard dónde vayamos a utilizarlo y podremos acceder al panel de Filtro (en caso de PerformancePoint 2007):
Iniciamos el asistente y seleccionamos la plantilla Inteligencia de Tiempo, utilizando el origen de datos que configuramos anteriormente.
Llegamos a la página del asistente que nos permite definir los elementos que aparecerán en el filtro escribiendo fórmulas. En este caso vamos a crear los siguientes:
Si pulsamos el botón de vista previa podemos ver como se generan los conjuntos MDX formados por miembros de la dimensión de tiempo que se ‘esconden’ tras las fórmulas que hemos escrito.
Finalizamos el asistente e insertamos el filtro en el panel y lo conectamos con los elementos que contenga el dashboard.
Conclusión
Pues concluyendo hemos creado un panel con un filtro de tiempo que nos permite determinar qué periodos puede seleccionar el usuario
Enlaces de interés
Crear un filtro mediante una plantilla de inteligencia de tiempo en el Diseñador de paneles
Acerca de la sintaxis de las expresiones de inteligencia de tiempo
Vincular filtros a cuadros de mandos e informes
Saludos.