Lista de comprobación para finalizar un modelo de datos en Power BI Desktop

En el mes de diciembre pasado, Melissa Coates publicó en su blog SQL Chick lo que denominó “Checklist for Finalizing a Data Model in Power BI Desktop”. Se trata de un compendio de normas a tener en cuenta no solo al finalizar un proyecto con Power BI, también en su diseño. Estas normas se refieren solo al modelo de datos, dejando de lado los informes en si.

Aunque es una lista extensa de acciones o consideraciones a tener en cuenta, no es exhaustiva pues no tiene en cuenta tampoco cuestiones como el rendimiento, la administración de informes, su publicación o el manejo de todo ello en Power BI Services. Pero es una lista muy valiosa a la que de vez en cuando conviene recurrir para recordar ciertos aspectos que mejoren el modelo de datos y le den coherencia.

Como el … Seguir leyendo...

La capa semántica en Power BI

Power BI, y otros productos de BI de nueva generación, ha incorporado al Business Intelligence perfiles de creadores de informes que no hace mucho era imposible que pudieran hacerlo. Muchos de ellos son grandes conocedores de Excel y han encontrado en Power BI una forma natural de transmitir los datos que manejan.

Antes, solo profesionales de marcado perfil técnico en bases de datos y de la herramienta de turno de BI eran capaces de transformar grandes volúmenes de datos en informes rápidos de ejecutar y entender. Ahora, con estas herramientas el segmento que se aventura a crear proyectos de BI se ha ampliado.

Pero una cosa es crear un conjunto de datos pequeño de uso individual y otra muy distinta es la de crear uno con cierta amplitud, complejidad y volumen que tengan que utilizar otros. La capa semántica, al … Seguir leyendo...

Tabla de fechas con Power Query

En Power BI casi siempre es necesaria una tabla maestra de fechas, no es una tarea compleja pero si que requiere de un cierto tiempo de dedicación en cada proyecto que iniciamos. Podemos recurrir a DAX para crearla, aunque lo más eficiente es hacerlo en Power Query.

Según el tipo de conjunto de datos es posible que necesitemos las fechas comprendidas entre dos rangos concretos, o puede que lo más conveniente sea tener solo las fechas de la tabla de hechos. En cualquiera de los dos casos expondré dos funciones adaptadas por mi, que por otro lado podéis encontrar en distintos sitios de la web.

Lo ideal es tener de una función que cree la tabla así como los campos necesarios de una forma automática. Para ello crearemos un nuevo query (Nuevo origen, Consulta en blanco) y pegaremos el código … Seguir leyendo...

Inventarios y el GMROI

Una de las mayores preocupaciones en muchos sectores industriales y comerciales es la gestión del inventario. Por un lado, es necesario disponer de suficiente mercancía en el almacén para atender a la marcha del negocio, pero por el otro es evidente que un inventario sobredimensionado supone una inversión cuantiosa y por lo tanto puede lastrar los beneficios.

En algún momento en futuras entradas hablaremos de la gestión en rotación del stock, pero hoy nos ocupa conocer el rendimiento que obtenemos de él y así poder tomar medidas si el coste del inventario perjudica los beneficios de la empresa. Para ello se utiliza un indicador denominado “Margen bruto de la inversión realizada en inventario” conocido como GMROI (Gross Marginn Return On Investiment). Este indicador nos dará una escala de ese retorno de la inversión, es decir de lo que obtenemos por … Seguir leyendo...

Reutilizar funciones en Power Query de Excel: LibPQ

El mes pasado hablamos como reutilizar funciones en Power Query, también de las deficiencias que actualmente tiene el editor avanzado de la herramienta. Por suerte, y mientras Microsoft no ofrece una solución mejor, Vitaly Potyarkin ha realizado un estupendo trabajo con la herramienta LibPQ, aunque solo tiene sentido en la actualización de datos locales, ya sea en Power BI o en Excel.

Esta herramienta permite tener en una o varias carpetas con archivos de texto con las funciones definidas y de una manera sencilla poder utilizarlas en cada proyecto, esto significa que si hacemos una modificación en una función, esta nueva versión estará disponible sin hacer ningún paso más, en aquellos archivos pbix o de Excel que tengamos estas funciones vinculadas.

Además, como las funciones están en archivos de texto podemos utilizar un sistema de control de versiones. LibPQ permite … Seguir leyendo...

Importar imágenes a Power BI

La única forma por defecto que tiene Power BI para mostrar imágenes es a partir de algún campo de una tabla que contenga una URL que apunte a la imagen a mostrar, es decir la imagen debe estar online en un servidor externo. Esto trae algunos inconvenientes: no es posible visualizar la imagen si trabajamos con Desktop y sin conexión a internet, y si alguna vez desaparece esa imagen en el servidor, la perderemos y no se mostrará en los informes.

Lo ideal sería que Power BI importara las imágenes incorporándolas al modelo de datos, pero no lo hace, aunque con un pequeño truco es posible llevarlo a cabo, al menos con imágenes de un tamaño moderado. En diciembre tanto Gerhard Brueckl como Jason Thomas propusieron una solución simple que consiste en disponer de las imágenes originales en una carpeta, … Seguir leyendo...

Forecast

El forecast es una de las necesidades más frecuentes en muchos ámbitos, aunque no siempre es sencillo escoger el método mas adecuado para llevarlo a cabo, existen técnicas generales para simplificarlo. Con Power BI podemos realizar forecast desde un gráfico de líneas que contenga una serie de tiempo o bien acudir a R para poder modelar el algoritmo en detalle adecuándolo a las particularidades de los datos.

La ciencia de realizar previsiones en el tiempo fiables es tan compleja como lo sea el escenario planteado. Para el profano requiere de un aprendizaje para entender las diferentes variables que pueden afectar a la previsión. En ocasiones nos puede valer una simple regresión lineal, muchas veces requerimos de un suavizado debido a una evidente estacionalidad, en otras ocasiones existen factores irregulaes difíciles de detectar.

Cuando hablamos de forecast, hablamos de futuro a … Seguir leyendo...

Medidas, Kpi, cuadros de mando, informes

A menudo suelo encontrarme con ciertas confusiones con términos habituales utilizados en BI. Algunos son sólo equivocos, otros en cambio se utilizan como sinónimos cuando en realidad no lo son.

El más típico es hablar de Kpi cuando en realidad se quiere decir medida. Una medida es un dato cuantificado, puede ser una medida originada en los datos de origen o bien calculada en el propio BI y representa el valor de un dato. Una Kpi (key performance indicator -Indicador clave de rendimiento-) por lo general es la comparación entre dos o más medidas e intenta ser un medidor del desempeño, aunque no tiene que ser siempre así, es el caso más habitual.

Una medida suele ser el importe de ventas y un Kpi típico puede ser el porcentaje de ventas sobre objetivos. Es decir que un Kpi pone en Seguir leyendo...

Reutilizar funciones en Power Query

Cuando accedemos a “Obtener datos” o a “Editar consultas” en Power BI estamos lanzando la aplicación antiguamente denominada “Power Query”. Esta aplicación permite de una forma muy visual importar datos y transformarlos en una lograda intenficie de usuario con multitud de opciones para limpiar datos, crear nuevas columnas, girar tablas, etc.

Por debajo de Power Query existe un lenguaje denominado “M”, cualquier acción con las opciones de la cinta del menú, el programa lo convierte a este lenguaje. Siempre tenemos la posibilidad de ir al “Editor avanzado” y visualizar cada uno de los pasos. Pero también podemos tomar el editor como lugar principal de nuestro trabajo y obviar, en parte o en su totalidad, la utilización de las opciones visuales de la aplicación escribiendo nosotros mismos el código.

El editor de Power Query es uno de los puntos donde Microsoft … Seguir leyendo...

Fecha actual, mes corriente, día de hoy

Cuando abrimos un informe en cualquier sistema de BI es habitual querer ver la información actual o al menos el último dato disponible y en Power BI no es posible hacerlo de una forma automática y elegante. Este requerimiento es muy habitual y dependiendo de cada conjunto de datos y su tipo de conexión puede resolverse de formas distintas.

La manera más secilla para encontrar una solución es la de añadir una columna calculada a la tabla fechas que nos diga si es la fecha actual, también podemos añadir fechas relativas como la del mes anterior por ejemplo. Muchos tendrán la duda si hacerlo mediante Power Query o bien delegarlo a DAX.

Vamos a seguir un ejemplo como forma de explicación. partimos de un conjunto de datos que ya dispone de una tabla “Fechas” y tres columnas: Fecha, Mes, Año, … Seguir leyendo...

Anticiparse a la pérdida de clientes

Muchos son los proyectos de Business Intelligence que se utilizan como meros instrumentos de reporting, sin ir un paso más allá que aproveche de verdad las ventajas de disponer de la información reunida y resumida en un único lugar. Es obligatorio disponer de un informe que resuma la venta por cliente pero pocas veces se va más allá.

Existen sectores muy competitivos, donde el esfuerzo para ganar un nuevo cliente es enorme y donde existe la necesidad de seguir invirtiendo en la fuerza comercial puesto que la rotación de clientes es alta. Muchas veces no se cae en la cuenta que es más rentable mantener a los clientes existentes que conseguir otros nuevos.

Ganamos nuevos clientes, pero también los perdemos

Existen miles de tratados de marketing para fidelizar a los clientes, de cómo retenerlos con acciones específicas, pero en la … Seguir leyendo...

DAX y CALCULATE()

Dependiendo del origen de datos, un proyecto con Power BI puede suponer la necesidad de aplicar muchos conocimientos: el manejo de una herramienta ETL como Power Query, el modelado de datos donde DAX tiene un papel fundamental para crear medidas calculadas y finalmente la creación de informes.

Con Power BI se aventuran muchos tipos de usuarios, perfiles con una experiencia previa diversa y unos conocimientos muy variables, muchos tienen un gran conocimiento de Excel pero un pobre conocimiento del modelado de datos, pero casi siempre entre los analistas, aquellos que siempre necesitan ir un paso más allá de las demandas habituales de información tienen lagunas importantes y especial miedo a enfrentarse a DAX.

DAX es una colección de funciones, operadores y constantes que se pueden usar en una fórmula o expresión, para calcular y devolver uno o más valores

Aunque … Seguir leyendo...

Documentar los objetos de Power BI Service

A medida que los usuarios van creando nuevos informes, dashboards, conjuntos de datos y demás objetos es necesario tener cierto control. En Power BI Service disponemos de estadísticas de utilización y podemos ir navegando por la aplicación para ver los objetos creados pero no tenemos una estadística que nos diga por ejemplo el número de infomes que existen o una lista de todos los dashboards de todas las áreas de trabajo.

Aunque disponíamos de un par de estadísticas dispersas, en una aplicación propia y en un Power BI Desktop, encontramos el blog de Prathy Kamasani quien en los últimos meses ha ido construyendo unos informes que recogen buena parte de la información que las APIs de Power BI exponen y así poder acceder por ejemplo a todas las actualizaciones de los conjuntos de datos, saber con qué frecuencia fallan y … Seguir leyendo...

Organizar medidas calculadas en una sola carpeta

En Power BI, por defecto cualquier medida al crearse se coloca en la tabla en la que creamos. Puede que en muchos modelos de datos esto sea coherente pero también en muchas ocasiones conviene tenerlas todas agrupadas en un solo lugar.

Para hacerlo disponemos de un secillo truco que nos permitirá hacer esta agrupación. Tenemos que crear primero una tabla manual vacía que llamaremos por ejemplo “Cálculos”, lo hacemos mediante la opción “Especificar datos” y luego cada medida calculada le indicaremos que su “Tabla inicial” será esta.… Seguir leyendo...

Crear y utilizar funciones en Power Query

Power Query permite la creación de funciones propias y su utilización tal y como podemos hacer con las funciones incorporadas al propio entorno. Como en todo lenguaje de programación es muy conveniente la utilización de funciones pues permiten reutilizar el código e incrementar la consistencia del proyecto. Esta entrada tiene por objetivo realizar una breve y simple introducción a la creación y uso de funciones.

Las funciones en Power Query tienen una sintaxis propia de expresiones lambda donde se describe primero los parámetros a la inzquierda y las expresiones a la derecha:

Parámetros de entrada => Expresión de la función

Para seguir estos ejemplos debemos ir a “Obtener datos” y escoger “Consulta en blanco” y seleccionar “Editor avanzado”.

Ejemplo de raíz cuadrada:

let
        RaizCuadrada = (x) => x * x
in 
        RaizCuadrada(5)

En el caso de requerir parámetros opcionales podemos … Seguir leyendo...

Funciones de Power Query y la facilidad de #shared

Power Query es una aplicación disponible con Excel y Power BI Desktop que permite importar y transformar datos. El nombre de Power Query parece que ha desaparecido de las aplicaciones y directamente entramos en él mediante la acción de “Obtener datos” o bien de “Editar consultas”.

Se trata de un entorno que permite hacer multitud de cambios en los datos mediante una estudiada y simple interfaz de usuario donde se van realizando pasos que siempre podemos deshacer o modificar. Por debajo de Power Query está M, el lenguaje al que se traducen todas las acciones que realicemos.

Para realizar los pasos de importación y transformación de datos podemos utilizar el entorno gráfico, podemos recurrir directamente al código o bien una combinación de ambos. El código M está disponible mediante la opción denominada “Editor avanzado”. En este editor podemos añadir … Seguir leyendo...

Informes con preguntas y respuestas (Q&A)

Hace unas semanas hablamos de esta funcionalidad existente en los dashboards, hoy hay un cambio importante con la versión recién lanzada de este mes de diciembre de 2017 dando un paso importante para consolidar la utilidadad de preguntas y respuestas (Q&A en su abreviación en inglés). Ahora está disponible en los informes y en Power BI Desktop.

Esta utilidad permite crear visuales mediante la escritura en lenguaje natural de los parámetros ofreciendo además autocorrección e interacción sobre lo que uno va escribiendo. Para muchos usuarios no técnicos, una vez comporbadas las posibilidades, seguro que será un gran aliciente.

Para utilizar esta primera versión, aún en preliminar, es necesario primero activarla desde las opciones: Archivo, Opciones y configuración, Opciones, Características de versión preliminar, Q&A

Una vez realizada esta acción, Power BI nos pedirá reiniciar el programa. A partir de aquí ya … Seguir leyendo...

Compartir y colaborar en Power BI

Cuando accedemos a Power BI Service por primera vez accedemos a la única área de trabajo disponible denominada “Mi área de trabajo”. Opcionalmente podemos crear áreas de trabajo adicionales como forma de organizar diferentes conjuntos de datos, informes o dashboards. En ocasiones la decisión de agrupar un tipo de información viene determinada por las personas con los que compartiremos los informes.

Colaborar

La áreas de trabajo están pensadas como lugares temporales en los que trabajar, también un lugar para compartir con otros colegas mientras se trabaja en unos informes y dashboards que luego se publicarán al resto de la organización en forma de aplicación. Compartir un área de trabajo es simple, tan solo debemos ir a “Editar área de trabajo”, añadir los correos electrónicos con quien queremos compartir y establecer el nivel de acceso (miembro o administrador).

 

Publicar

Una … Seguir leyendo...

Elementos visuales

Power BI dispone 30 objetos visuales de serie, aunque el objeto “R” es un elemento con muchas caras pues permite componer un script que llame a librerías externas que pueden dibujar multitud de gráficos distintos.

Al margen de los elementos de serie, visibles en la caja de herramientas de “Visualizaciones”, existen otros muchos que podemos incorporar a nuestros informes, estos están disponibles en lo que Power BI denomina “almacén” y que nos da acceso a más de 100 elementos visuales adicionales divididos por categorías.

Es difícil tener en mente todos los objetos visuales existentes y por ello muchas veces desconocemos si hay una manera mejor de mostrar cierta información. Por ello es interesante revisar de vez en cuando los elementos visuales que se van incorporando. SQLbi ofrece una visión general de la mayoría de elementos existentes. También podemos … Seguir leyendo...

Última actualización de datos en un informe

En muchos informes que se deben actualizar con frecuencia muchos usuarios se sienten algo perdidos al analizar la información si no conocen la última fecha de actualización del conjunto de datos. Es posible que analicemos un conjunto que se actualiza varias veces al día y es lógico que este dato tenga su importancia.

La solución es simple, solo tenemos que crear una tabla que se rellene cada vez que reciba la orden de actualización, para ello, debemos ir a “Obtener datos”, “Consulta en blanco”, luego entramos en el “Editor avanzado”.

y podemos copiar y pegar el siguiente código:

let
    FechaHoraDeHoy = DateTime.From(DateTimeZone.SwitchZone(DateTimeZone.FixedLocalNow(),1)),
    ConvierteATabla = #table(1, {{FechaHoraDeHoy}}),
    RenombreColumna = Table.RenameColumns(ConvierteATabla,{{"Column1", "Última actualización"}}),
    TipoFechaHora = Table.TransformColumnTypes(RenombreColumna,{{"Última actualización", type datetime}}),
in
    TipoFechaHora

Luego, en cualquier informe podemos incluir, por ejemplo, un visual tipo “Tarjeta” tal como muestra la siguiente imagen.

 … Seguir leyendo...