[DAX] Herramienta para ver linaje de medidas

Ya existiendo Power BI hace 10 años, ha reportes y modelos semánticos en muchas instituciones que fueron creciendo de sobre manera. Los simples excels pasan a modelos estrellas y las medidas de una línea usan cada vez más medidas anidadas.

Si alguna vez tuviste que mantener un modelo así o te toca hoy revisar modelos que no hiciste, seguramente pensaste que era complejo pasar de una medida a la otra buscando que hace cada una.

En este artículo te muestro DAX Measures Lineager. Una web para apreciar de forma visual las relaciones y expresiones de medidas de modelos semánticos.

Comenzamos nuestro camino como nos gusta hacer aquí en La Data Web, con conceptos y definiciones. Veamos que es un linaje y que es la herramienta.

El linaje de una medida es el proceso de rastrear y visualizar el ciclo de vida completo de la medida, desde su origen hasta su destino final. En el proceso puede tener orígenes de tablas o medidas.

DAX Measures Lineager: es una página web desarrollada por nosotros para hacer más simple este camino. También, es una Power Bi External Tool que nos hace el camino fácil hacia el linaje.

Link aquí

¿Cómo cargo mis medidas manualmente?

La herramienta funciona cargando un archivo json o pegando del portapapeles. Lo que vamos a colocar en la herramienta es el resultado de una consulta DAX. En el apartado de ayuda nos vamos a encontrar con la siguiente consulta DAX:

La misma busca todas las dependencias que tiene un objeto "medida" y lo devuelve en formato JSON. So podemos guardarlo en un archivo JSON o seleccionar la fila y copiar (Ctrl+C).

En la web tenemos dos íconos, uno para subirlo y otro para pegar el texto:

En este caso yo por ejemplo pego el contenido:

Esto automáticamente nos cargará el diagrama. Iniciar con una columna de tablas que están pintadas de naranja las otras cajas son las medidas. Para movernos funciona igual que las herramientas de tableros "boards" que existen hoy. Con botón del medio nos movemos. Si clickeamos una medida, nos abre un menú que muestra su lógica pinta las medidas y tablas relacionadas:

Si hay muchos elementos no los encontramos, podemos buscar de dos formas:

  • Highlight: pinta con Azul las cajas cuyo texto van coincidiendo con el contenido:
  • Isolate: busca la medida que coincida con el texto todas las relacionadas, eliminando aquellas que no participen del linaje (ideal si es muy grande la cantidad de medidas)

Finalmente tenemos tres botones.

  • Ajustar la vista, el famoso fit to content para centralizar si nos alejamos mucho en el diagrama.
  • Descargar la vista actual filtrada a png
  • Ayuda que nos indica como usar la plataforma

Power Bi External Tool

Para automatizar el proceso y que sea mucho más simple para ustedes hemos creado una external tool. Pueden descargarla aquí. La external tool es un acceso directo que nos abre el navegador con un json de dependencias en el portapapeles. Por esta razón, cuando abramos el navegador y demos click al botón "Start" nos pedirá acceso al portal papeles.

Esto lo pide porque el json de respuesta de dependencias está en el portapapeles. Una vez en permitido el permiso, el navegador lo recordará y el proceso sería muy ágil:

El instalador puede que de una alerta de Windows SmartScreen pero dejenme decirles que pueden confiarlo puesto que solo distribuye 2 archivos en las carpetas de power bi para que aparezca el puntero de la external tool.

Eso es todo. Ojala que les sea útil para revisar estos modelos que tenemos que dar soporte y no los construimos o no recordamos sus linajes.