Transcripción del video

Hola! En esta ocasión voy a estar hablando acerca de la interacción entre slicers. Esto sale por una pregunta que me hicieron en el curso de Power BI. El título de la pregunta es “Slicers Tablas Lookup filtren otros slicers de otras Tablas Lookup”. La pregunta está un poco larga, por lo que no la voy a leer, solo la voy a resumir pero tú puedes pausar el video para leerla.

Decidí responder esta pregunta porque personalmente es algo que me molesta cuando no se cuida al diseñar reportes. En resumen Josu me está contando que tiene 3 slicers, y que le gustaría que, al momento de seleccionar una opción, los otros slicers interactúen y muestren solamente las opciones que contienen información.

Veamos a qué se refiere en Power BI

Por ejemplo, aquí tengo un Slicer con los vendedores de esta empresa. Además también tengo un Slicer con los clientes de la misma empresa. Y por último tengo una tabla con las ventas a cada cliente.

Ahora, quiero que veas esto para comprender mejor la pregunta de Josu. Si selecciono a Kaley West, por ejemplo, verás que la tabla SI reacciona y nos muestra únicamente los clientes a los que le vendió.

Pero fíjate cómo el Slicer de Cliente NO tuvo ningún cambio. Además, si ahora selecciono un cliente cualquiera de ese slicer, fíjate lo que pasa en la tabla. Verás que ya no tenemos datos. Y eso es porque la combinación de ese vendedor con ese cliente NO existe, ese vendedor NO le vende a ese cliente.

Este es un comportamiento muy molesto para el usuario, y por eso es importante que cuidemos esto en nuestros reportes de Power BI, para que el usuario de nuestros reportes no se frustre.

Antes de continuar, si quieres descargar este archivo de Power BI y las diferentes tablas con datos ve al link que se encuentra en la descripción y podrás descargar todo este material y más.

Además suscríbete y déjame un comentario para saber qué es lo que quieres aprender.

Este comportamiento se debe a la dirección de las relaciones en nuestro modelo de datos. Y así es como debe de funcionar, porque ese modelo de datos está siguiendo las mejores prácticas en el modelado de datos.

Pero lo interesante es que aún y así vamos a poder recrear el comportamiento que está buscando Josu.

Josu busca que el Slicer de cliente reaccione a las selecciones que haga en el otro Slicer. Bien, para lograrlo primero debo de crear una medida.

Esta medida la voy a llamar “Filtro para Slicers” y lo único que va a tener la medida es un COUNT(). El cual se va a ver así:

Filtro para Slicer = COUNT(Ventas[ID Venta])

Esto significa que va a contar el número de ventas que se hayan presentado, pero debido al Filter Context, va a tomar en cuenta las selecciones que hagamos en nuestros slicers.

Ahora voy a seleccionar el Slicer de clientes. Y vamos a agregar esta medida al panel Filters. En el campo de visualización. Y le voy a poner que el conteo tiene que ser mayor que “0”. Así solamente nos va a mostrar aquellas combinaciones que son ciertas.

Ahora fíjate como este Slicer de clientes está reaccionando al vendedor que seleccionemos.

Si queremos que el Slicer de Vendedores también reaccione, también debemos de agregar esta medida al Slicer de Vendedor.

Y ¡ya está funcionando como lo esperábamos!

Si quieres entender a fondo todos los conceptos que están entrando en juego en este tutorial, entra al link que se encuentra en la descripción para que puedas dominarlos.

¡Bien! Eso es todo por ahora y nos vemos la próxima ocasión. ¡Hasta luego!