Este post es una continuación de la semana anterior. Voy a arrancar desde ahí, así que deberías ver ese post antes.

Como vimos, teníamos dos cartas, y en cada una de ellas tenemos imágenes distintas para cada una de ellas: en distintos sets vienen reediciones con otro arte.

En la API que vimos anteriormente, el arte viene en una lista de registros JSON, que Power BI detecta convenientemente como una lista.

Está claro que la mejor idea, hablando del mismo naipe, no sería desagregar la lista de imágenes en la misma tabla: multiplicaría la cantidad de filas que hay allí. No sería correcto. Lo mejor que podemos hacer en este caso, es referenciar la consulta que hicimos primero.

Para ello, en PowerQuery, damos click a botón derecho en la consulta de las cartas, y click en Reference. Esto lo que hace es usar la consulta como la base de otra, y todo cambio hecho en la primera impacta en la consulta referenciada.

La consulta por defecto se llama cardinfo (2). La renombramos a images. De esa consulta, vamos a sacar todas las columnas de la tabla, menos data.id, y data.card_images, quedándonos lo siguiente:

Vemos que cada ID está acompañado de una lista, que es precisamente la lista de artes distintos con sus respectivos valores. Una vez tenemos eso, clickeamos en las dos flechas horizontales, y elegimos Expand To New Rows:

La tabla mutará a la cantidad de imágenes cargadas en cada listas.

Ahora, cada fila es un registro, que nuevamente deberemos expandir. En este caso, sólo nos interesan dos columnas, ID e Image URL. Las seleccionamos y extendemos:

¡Suscribite al blog!

Nos quedará lo siguiente:

Y ahora si, podemos aplicar los cambios y cerrar PowerQuery. Si revisamos el modelo, automáticamente va a haber creado la relación correspondiente:

Lo cual permite armar ya un tablero con las cartas que tengamos en la consulta:

Dejé en este repo el tablero, por si querés darle una mirada (y bienvenido sos a modificarlo a tu gusto): https://github.com/animamartin/Tableros/

Desde Ánima queremos ayudar a una fundación sin fines de lucro que promueve el aprendizaje de las personas que menos tienen.

Por eso, toda donación recibida durante 2024 será donada a la Fundación Fonbec, que podés investigar acá.

Compartiendo la nota, dando like o comentando abajo, nos ayudás un montón. También aportás suscribiéndote a nuestro canal de YouTube.

Categorías: BlogPower BI

Avatar photo

Martín Longo

Director de Ánimadata y Business Intelligence Engineer. Quemadísimo, escribo acá mis opiniones.