Conector de datos a medida. Ejemplo sobre Strava

Power BI contiene multitud de posibles tipos de fuentes de datos con los que acceder a infinidad de sistemas y orígenes de datos distintos. Aunque Microsoft intenta multiplicar las opciones, siempre quedarán otros orígenes menos populares de los que nunca se publicará un driver.

Para solucionar estos casos, el equipo de Power BI publicó en el mes de mayo el “Data Connector SDK Developer”, es decir un conjunto de herramientas de desarrollo con las que poder construir nuestros propios conectores de datos.

Se trata de una utilidad dirigida a programadores y que comparte utilidad con Power Query y solo es utilizable desde Power BI Desktop y no hay anuncio de la posibilidad futura de su uso en Power View Service. De momento es una versión en preliminar y que tendrá alguna evolución antes de publicarse como una herramienta … Seguir leyendo...

Power BI Embedded y el famoso RLS

Actualización a 16 de agosto de 2017. Como puede observarse en el este enlace, finalmente se ha incorporado esta característica a la propia creación del token de autentificación (mediante generateTokenRequestParameters)

Power BI es una herramienta que crece día a día, ofrece mucho pero aún encontramos muchas lagunas. De cara al desarrollador hay aspectos importantes que aún no están cubiertos por la versión actual de la solución. Una de ellas es el filtro a nivel de fila (seguridad a nivel de fila), el conocido como RLS (Row Level Security).

En la versión Desktop podemos emparejar un conjunto de datos con un “Role” para establecer un filtro predeterminado según el usuario que acceda a un informe. De esta manera podemos asegurarnos que por ejemplo un informe de ventas dirigido a vendedores cada uno de ellos acceda solo a sus … Seguir leyendo...

Licencias en Power BI. Cambios y polémica

En los últimos meses ha habido un cambio importante en la forma en la que Microsoft licencia el servicio de Power BI y aún sigue habiendo alguna duda, aunque más orientada a los desarrolladores. Estas lagunas vienen dadas por comentarios realizados en varios eventos por la propia Microsoft y por documentos publicados que aún no llevan el sello de oficiales.

Free / Pro

El cambio más importante, efectivo desde el mes de junio, ha resultado dejar la versión gratuita como una herramienta de uso exclusivamente personal, tiene alguna funcionalidad más que antes pero no permite compartir ningún informe con otros usuarios, tampoco otros usuarios pueden compartir nada con un usuario con licencia gratuita. Muchas empresas adquirían unas pocas licencias PRO con las que poder manejar el entorno y compartían su contenido con usuarios con licencia gratuita. Esto ya no es … Seguir leyendo...

Seguridad de la información en Power BI

En el momento de desplegar por primera vez un proyecto de Power BI en una empresa es necesario tener en cuenta una serie de aspectos sobre la seguridad y compartición de la información. La mayor parte de parámetros referentes a estos aspectos están por defecto activados, por lo que es necesario que antes de que el administrador de acceso a los primeros informes haga una lista de seguridad donde quede reflejado lo que podrán o no podrán hacer los usuarios finales y con ello configurar correctamente el entorno.

Cada mes aparecen nuevas características y posibilidades de compartición y publicación por lo que al poco tiempo de publicar este post seguro que existirán opciones adicionales a tener en cuenta, algunas de las actuales son las siguientes.

Más de un administrador

Para poder parametrizar la aplicación es necesario tener una cuenta con … Seguir leyendo...

Componentes del crecimiento

Tradicionalmente, cuando realizamos un análisis del crecimiento, comparamos los datos actuales con los del año anterior o cualquier otro periodo en valores absolutos o porcentuales. La mayor parte de empresas no van a buscar mayor detalle y se conforman con esta métrica aplicada a las dimensiones de producto, división, geográfica, etc.

El análisis de componentes del crecimiento añade un poco más de sofisticación descomponiendo el crecimiento en varios factores para conocer como el volumen de ventas (unidades vendidas) ha afectado al crecimiento o el efecto que ha tenido la variación del precio o el impacto de los nuevos lanzamientos o el de los productos descartado, también se incluye un efecto genérico, habitualmente un remanente debido a que en ocasiones pueden aumentar o disminuir la proporción de venta de productos caros puesto que incluso manteniendo el volumen invariable y el mismo … Seguir leyendo...

Lenguajes de programación en Power BI

Power BI es el compendio de tecnologías que existían ya en las últimas versiones de Excel (Power Query, Power Pivot y Power View). Entendiendo que hay 3 aspectos diferenciados: conexión y carga de datos, manejo de los datos y visualización, en Power BI disponemos de 3 lenguajes distintos para cada una de estas situaciones, aunque no es imprescindible siempre su manejo, sí que, en proyectos reales, donde surgen muchas excepciones y requerimientos específicos será necesario conocer.

El proceso de adquisición de datos (en el modo de importación) se vale de un lenguaje denominado Power Query Formula Language, conocido popularmente como M, es el encargado de crear las consultas, aplicar cierta lógica a las mismas, incluir parámetros y disponer de funciones para acometer filtros y otras transformaciones de datos hasta el modelo de datos que tendremos en Power Query.… Seguir leyendo...

Modos de utilización/licencias de PowerBI

Power BI es una aplicación en la nube de Azure, esto significa que la aplicación reside en los servidores de Microsoft y no puede ser instalada fuera de ellos. Este tipo de entornos tienen dos partes: los datos y la aplicación propiamente dicha. Mientras que el servidor de aplicaciones está en la nube, los datos pueden estar también en la nube pero también pueden residir en los servidores propios de cada empresa.

El acceso a los informes puede realizarse de diferentes formas y dependerá también de varios factores, como la licencia disponible, que cambia sustancialmente a partir de ahora. Para ello podemos poner diferentes escenarios.

Usuario individual

Power BI da acceso gratuito a un tipo de licencia que permite a cualquier persona crear informes mediante la aplicación de escritorio Power BI Desktop (gratuita) y publicar dichos informes y sus … Seguir leyendo...

Origen de datos Power BI Services

En la versión de abril 2017 se ha puesto en producción una funcionalidad muy esperada, la que permite tener como origen de datos un Conjunto de Datos ya existente en el servicio de Power BI. Esto significa que podemos crear un archivo con Power BI Desktop donde por ejemplo solo disponga del modelo de datos y los propios datos y que con ello podamos crear otros archivos con informes a partir de este Conjunto de datos disponible en el servicio.

Esto significa que podemos crear informes, varios desarrolladores a la vez si es necesario, a partir del juego de datos definido previamente. El Conjunto de datos será de solo lectura y no será posible realizar cambios en el Conjunto de datos mientras sea utilizado, los cambios deberán realizarse en Desktop para luego subirlos al servicio sustituyendo al Conjunto de datosSeguir leyendo...

Importar un archivo CSV contenido en un archivo Zip

R es uno de los lenguajes script más populares dentro de las comunidades de análisis avanzados y estadística. Dispone de una numerosa comunidad trabajando en distintos entornos, tanto empresariales como científicos y tiene un repositorio de funciones con millares de referencias. Además, posee capacidades propias de un lenguaje script de propósito general.

Dentro de esta segunda parte de sus capacidades, podemos aprovecharlo para multitud de tareas como la que hoy nos ocupa: la capacidad de importar dentro de Power BI un archivo de datos (en nuestro ejemplo un archivo CSV) que está contenido dentro de un archivo zip.

La descripción del ejemplo la podéis encontrar en este vídeo. Aquí veréis que antes de empezar es necesario disponer del entorno de R instalado en nuestro PC puesto que son dos paquetes distintos al de la instalación de Power BI, se … Seguir leyendo...

Diferencias entre Power BI y Microsoft Reporting Services

Es frecuente que muchos desarrolladores con conocimientos del entorno de Microsoft SQL Server se pregunten qué es lo que realmente aporta Power BI, existiendo una herramienta tan utilizada como es SQL Server Reporting Services (SSRS). ¿En qué se diferencian?

Para empezar SSRS es una herramienta que se instala junto con la licencia de SQL Server en nuestros servidores locales, mientras que Power BI es un servicio en la nube de Microsoft (Azure), de momento bajo el paraguas de Office 365. Esto significa que los informes no están en nuestros servidores, los usuarios acceden a los centros de datos de Microsoft.

SSRS es una herramienta ya veterana que ha cambiado poco hasta hoy, con una interface de usuario algo antigua y orientada a los programadores, de manera que los informes resultantes son muy estáticos y si el usuario final desea interactuar … Seguir leyendo...

Temas predefinidos en Power BI

En la última versión (marzo 2017) ha aparecido una nueva funcionalidad que permite cambiar los colores por defecto de algunos elementos de los informes desarrollados con Power BI. Es un primer paso con algunas lagunas pero ayuda a unificar por ejemplo los colores de los gráficos en un conjunto de informes más allá de los colores predeterminados.

Además de los colores de los gráficos también permite cambiar este aspecto en las tablas y matrices, siempre que les configuremos un estilo (dentro de Table style o Matrix style). Para ello será necesario construir un fichero con formato json con el siguiente formato

{

“name”: “Mi Tema”,

“dataColors”: [ “#31B6FD”, “#4584D3”, “#5BD078”, “#A5D028”, “#F5C040”, “#05E0DB”, “#3153FD”, “#4C45D3”, “#5BD0B0”, “#54D028”, “#D0F540”, “#057BE0” ],

“background”:”#FFFFFF”,

“foreground”: “#F2F2F2”,

“tableAccent”:”#5BD078″

}

Son, de momento, solo 5 parámetros. El primero (name) indica el nombre que … Seguir leyendo...

Recuperar con Power BI tablas web paginadas

Desde Power BI, en concreto desde Power Query, es posible recuperar información contenida en una tabla de una página html. Pero es frecuente que una tabla extensa esté paginada con lo que dificulta la obtención de toda la información. Para hacerlo podemos adoptar diferentes aproximaciones, pero una de ellas me parece la más sencilla y rápida para quienes no dominen mucho el lenguaje “M” que es el que utiliza Power Query.

La estrategia pasa por crear una función, encargada de recoger los datos de cada página contenida en la tabla web y una tabla que contendrá el resultado de cada consulta a cada una de las páginas. No es la mejor solución pues es necesario indicar el número de páginas a explorar, pero si es la más simple que he encontrado.

Para hacer un ejemplo he tomado la página de … Seguir leyendo...

Formato condicional con símbolos

De momento las capacidades de Power BI en matrices para establecer un formato condicional a una columna son algo limitadas, pero algún truco puede utilizarse para que de forma simple lo podamos hacer.

Partimos de la tabla que ya vimos en la anterior entrada y como ejemplo vamos a establecer un formato condicional simple con un color para una columna de crecimiento. Lo marcaremos con un fondo de color rojo si el valor es negativo. En otra columna pondremos un símbolo junto al crecimiento que indicará de forma visual si el valor es positivo o negativo de manera que quede como la siguiente imagen:

Formato condicional con un solo color

Lo aplicaremos en la columna “% Crecimiento Trim”. Seleccionamos el elemento tabla en la que tengamos la medida y buscamos la medida dentro de la caja “Values” de sus propiedades. … Seguir leyendo...

Periodos y crecimientos

En nuestros proyectos habituales siempre aparece la necesidad de disponer de datos en periodos concretos y crecimientos respecto del mismo periodo del año anterior. En la industria farmacéutica suele usarse para muchos datos de venta los periodos del mes, trimestre, acumulado y TAM (Total Anual Móvil). En este post se describe un escenario típico de ventas auditadas nacionales con estos datos.

Partimos de un esquema de tablas similar al siguiente.

En cualquier caso, la información que nos interesa es la radicada en la tabla de ventas y seguiremos este orden: primero construimos una medida con las ventas del periodo, luego otra medida con las ventas del mismo periodo pero en el año anterior y acontinuación una medida con el porcentaje de crecimiento entre la venta del año anterior en el periodo y la venta del periodo en el año actual. … Seguir leyendo...

Datos del Banco Mundial en Power BI

Entre los proveedores de información pública, el Banco Mundial es uno de los más interesantes, tanto por la extensión de los datos como la cobertura mundial. Esta institución, además ofrece su banco de datos online de diferentes formas. Podemos manejar la información mediante sus herramientas en la web, descargar los datos por grupos homogéneos (según temática, país, proyecto) en distintos formatos, poder leer sus informes creados a partir de los datos en formato PDF o también acceder a los datos mediante una simple API.

Esta API la podemos utilizar para importar los datos a Power BI puesto que se basa en la composición de una URL con la que Power BI realizará una petición. Como ejemplo hemos tomado la información de unos cuantos países con las más de 1.300 medidas que nos da el Banco Mundial para cada país … Seguir leyendo...

Título dinámico en Power BI

Aunque Power BI dispone de la caja de texto, herramienta que escogeríamos para poner un título en un informe, también lo podemos hacer con una ficha (Card) y como a la ficha se le puede asociar un valor y este valor puede ser una fórmula DAX, rápidamente caemos en que es posible disponer de un texto que responda por ejemplo a la selección de un filtro.

En el caso de ejemplo, basado en los datos de población por edad que facilita el INE hemos añadido una nueva medida llamada “Título” y la hemos compuesto con la siguiente expresión:

Titulo = IF(HASONEVALUE('INE POBLACION'[Provincia]); "Población por edad en " & VALUES('INE POBLACION'[Provincia]); "Población por edad a nivel nacional")

La fórmula se lee de la siguiente manera: si hay una provincia seleccionada, el título se compondrá de la concatenación del texto “Población por … Seguir leyendo...

Datos del Instituto Nacional de Estadística en Power BI

El INE español (Instituto Nacional de Estadística) ofrece multitud de datos que se pueden descargar en diferentes formatos y que posteriormente podemos incorporar a Power BI, pero también ofrece una API bastante sencilla de utilizar que mediante una URL permite obtener los datos en formato JSON. Esta opción nos parece muy acertada pues nos ahorrará en el futuro andar exportando e importando y con solo actualizar en Power BI obtendremos los últimos datos existentes.

Existe un tutorial con el que poder obtener la URL necesaria, se necesita algo de tiempo para entender dónde obtener los diferentes códigos necesarios para la petición, pero también dispone de un apartado con el que de forma guiada obtendremos lo necesario. El generador de URLs JSON utiliza un asistente ofreciéndonos opciones tras nuestras selecciones. En este caso vamos a tomar los datos del IPC (Indice … Seguir leyendo...

Power BI: Seleccionar fechas

Si en las tablas de origen disponemos de campos con el mes, el año en cualquier formato siempre podemos poner una lista o un desplegable en el informe a modo de filtro, pero si además en la tabla tenemos un campo con formato de fecha, también podemos incorporar un filtro para un periodo, con fecha de inicio y fecha de fin.

En octubre de 2016 apareció un nuevo tipo de slicer, puede que uno de los que acaben por pasar más desapercibidos, se trata del filtro de fechas. Este slicer no tiene un icono específico, simplemente al añadir un slicer, si el campo es detectado como de tipo fecha, entonces el slicer se convierte en una caja donde poder escoger entre un rango de fechas.

Para modificar las fechas de inicio y fin hay dos posibilidades: podemos arrastrar … Seguir leyendo...

DAX: Fechas y calendarios

Hay entornos donde siempre es complejo manejar fechas, pero en Power BI, mediante DAX, se ha allanado bastante el camino. Tanto en este enlace como en este otro podréis ver la cantidad de fórmulas que aporta el entorno con lo que llegar al punto deseado será más sencillo tanto para manejar fechas como para realizar cálculos basados en ellas.

Por ejemplo, en ocasiones podemos tener la necesidad de crear una tabla, que a modo de un calendario, registre aquellas fechas, meses, trimestres, etc de un periodo de tiempo, o puede que de las fechas de nuestros datos. Hacerlo en Power BI es algo muy sencillo. Para ello nos vamos a “Modeling” y “New Table”

En la barra de fórmulas podemos escribir por ejemplo:

FECHA = CALENDAR (DATE (2017, 1, 1), DATE (2017, 12, 31))

es decir todos los días del … Seguir leyendo...

Power BI. Esperando funciones básicas

Parece que el equipo de programación de Power BI está trabajando, presentando cada semana opciones nuevas en la web y mensualmente en la versión Desktop, pero sigue centrado en el desarrollo de la parte de datos y olvidándose bastante de las funcionalidades visuales de los informes, así que las novedades vienen despacio.

Entre las novedades visuales de febrero tenemos por ejemplo la posibilidad de parametrizar el grosor de las líneas en los gráficos, así como el formato de unión entre sus tramos.

Pero siguen sin aparecer funciones muy esperadas como la posibilidad de añadir un filtro a un slicer lo cual resolvería unos cuantos problemas, por ejemplo la posibilidad de mostrar la fecha actual en un slicer, algo que nos parece de perogrullo.

Otras mejoras visuales recientes incluyen la posibilidad de evitar que se corten (wrap) los … Seguir leyendo...