Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Anonymous
Not applicable

Valores de segmentación dinámicos

Tengo un informe que estoy usando para resumir los hightlights de tres tablas de datos.

Quería poder segmentar los datos de las tres tablas al mismo tiempo y, ya que tienen valores comunes, los he configurado en un modelo relacional:

Table Relationships.jpg

Las tres tablas tienen 2 columnas en común que se utilizan para formar 2 uniones. Hay un número 'Set' y un código 'Type'.

Esto funciona bien y con dos segmentaciones de datos que puedo cortar por 'Set' y 'Type' y funciona según lo esperado.

Sin embargo, no todos los 'Tipos' son aplicables a todos los 'Sets' por lo que las segmentaciones de datos muestran valores para los tipos que no existen en determinados conjuntos.

Así que el problema que estoy teniendo es cómo hacer que los valores de la segmentación de datos cambien dinámicamente en función de la selección de otra segmentación de datos.

Por ejemplo, el conjunto 1 solo tiene los tipos ABC1, DEF y ABC2, sin embargo, la segmentación muestra TODOS los tipos de los otros conjuntos también y no solo los que son pertenientes al conjunto 1.

Del mismo modo, el conjunto 3 sólo tiene los tipos AB1, AB2, AZ1, AZ2, DEF pero muestra TODOS los tipos:

slicers2.png

Básicamente, cuando selecciono un 'Set' de la segmentación, esperaría que el 'Tipo' cambie dinámicamente para mostrar solo los tipos relacionados con ese 'Set'. Actualmente todos los tipos se muestran para todos los conjuntos.

¿Hay alguna manera de que la segmentación de datos 'Type' pueda cambiar dinámicamente para mostrar solo los tipos que son relevantes para el 'Set' seleccionado?

Cualquier puntero sería muy apreciado.

PS Tengo un pbix de muestra preparado con las relaciones formadas y una segmentación de ejemplo con datos muestreados, pero no pude ver una manera de cargarlo.

1 ACCEPTED SOLUTION
swise001
Continued Contributor
Continued Contributor

@FruitandVeg

Gracias por compartir el archivo.

Como se sospecha: el uso de filtros bidireccionales para las 3 rutas de filtro no funcionará. Introduce ambiguedad.

swise001_0-1600772192746.png

El patrón de crossfilter puede funcionar para usted. Aquí hay una fórmula de muestra:

Table1CrossFilter = Calculate(countrows('Table 1'),crossfilter('UNION TABLE ON TYPE'[TYPE],'Table 1'[TYPE],BOTH))

Cuando esto se introduce como filtro para la segmentación - (donde value > 0 ) filtrará los resultados visibles de la segmentación de datos como desee.

swise001_1-1600772294924.png

El desafío con este método - es determinar cómo manejar situaciones donde Table1, Table2 o Table3 están vacíos (por ejemplo, con el conjunto 4.) El uso del método crossfilter como se muestra esencialmente 'en blanco' la segmentación de datos, ya que está propagando una tabla en blanco a la segmentación de tipos.


Para resolver este problema: deberá introducir algún DAX que establecerá condicionalmente qué tablas propagar la relación en función de si hay resultados. Así, por ejemplo, si se selecciona el conjunto 4 - solo la Tabla 2 tiene resultados, por lo que esta es la única relación que se debe propagar al filtro de tipo. Si las 3 tablas tienen resultados, los 3 filtros se pueden propagar.

Espero que esto te ayude a empezar.

View solution in original post

6 REPLIES 6
PaulDBrown
Community Champion
Community Champion

@FruitandVeg

Para compartir el archivo PBIX (¡muy útil!), subirlo a un servicio en la nube (Onedrive, Google Drive, Dropbox...) y compartirlo desde allí





Did I answer your question? Mark my post as a solution!
In doing so, you are also helping me. Thank you!

Proud to be a Super User!
Paul on Linkedin.






Anonymous
Not applicable

Gracias por la respuesta. @PaulDBrown

He subido un archivo pbix de muestra a Dropbox. Enlace aquí.

swise001
Continued Contributor
Continued Contributor

@FruitandVeg

Gracias por compartir el archivo.

Como se sospecha: el uso de filtros bidireccionales para las 3 rutas de filtro no funcionará. Introduce ambiguedad.

swise001_0-1600772192746.png

El patrón de crossfilter puede funcionar para usted. Aquí hay una fórmula de muestra:

Table1CrossFilter = Calculate(countrows('Table 1'),crossfilter('UNION TABLE ON TYPE'[TYPE],'Table 1'[TYPE],BOTH))

Cuando esto se introduce como filtro para la segmentación - (donde value > 0 ) filtrará los resultados visibles de la segmentación de datos como desee.

swise001_1-1600772294924.png

El desafío con este método - es determinar cómo manejar situaciones donde Table1, Table2 o Table3 están vacíos (por ejemplo, con el conjunto 4.) El uso del método crossfilter como se muestra esencialmente 'en blanco' la segmentación de datos, ya que está propagando una tabla en blanco a la segmentación de tipos.


Para resolver este problema: deberá introducir algún DAX que establecerá condicionalmente qué tablas propagar la relación en función de si hay resultados. Así, por ejemplo, si se selecciona el conjunto 4 - solo la Tabla 2 tiene resultados, por lo que esta es la única relación que se debe propagar al filtro de tipo. Si las 3 tablas tienen resultados, los 3 filtros se pueden propagar.

Espero que esto te ayude a empezar.

Anonymous
Not applicable

Muy útil, gracias!

swise001
Continued Contributor
Continued Contributor

@FruitandVeg

Las segmentaciones de datos se desconectan entre sí y los filtros solo fluirán en 1 dirección en función del diseño del modelo. Puede considerar algunas opciones:

1. Intente usar relaciones bidireccionales para insertar los cambios de las tablas de datos modificadas a la otra segmentación de datos. Sin embargo, esto puede llevar a la ambiguedad en el modelo, ya que todo está vinculado.

2. Cree una medida con CROSSFILTER y aplíquela como filtro visual a sus segmentaciones.

También puede compartir un enlace a su archivo PBIX (si lo pone en la nube).

Anonymous
Not applicable

Gracias por la respuesta.

CROSSFILTER suena como que podría ser el camino a seguir, pero no estoy seguro de cómo estructurar esto para agregarlo en una medida.

He subido un archivo pbix de muestra a Dropbox. Enlace aquí.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

Check out the April 2024 Power BI update to learn about new features.

April Fabric Community Update

Fabric Community Update - April 2024

Find out what's new and trending in the Fabric Community.