cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Helper I
Helper I

Filtrar tabla de otra tabla con múltiples relaciones

Necesito ayuda para averiguar cómo puedo filtrar un FactTable con un DimTable, donde una columna en el DimTable está relacionado con dos columnas en el FactTable.

Si filtro un valor en DimTable, quiero todas las filas de FaceTable que coincidan en al menos una de las columnas.

Ejemplo:

Creo una relación entre Teamleader y Person AND entre Responsable y Persona.

Si filtro en el valor C DimTable, quiero todas las filas en FactTable que tiene C en Teamleader o Responsible (o ambos).

FactTable:

Valor

Líder del equipo

Responsable

10

A

A

10

B

A

5

C

B

20

A

C

20

B

B

15

C

A

DimTable:

Persona

A

B

C

¡Muchas gracias de antemano!

1 ACCEPTED SOLUTION
Administrator
Administrator

Hola, @Lenerius

Según su descripción, creé datos para reproducir su escenario. El archivo pbix se adjunta al final.

Hecho:

b1.png

Tenue:

b2.png

No hay ninguna relación entre dos tablas. Puede crear una medida como se indica a continuación.

Visual Control = 
IF(
    MAX('Fact'[Teamleader]) in DISTINCT(Dim[Person]) || MAX('Fact'[Responsible]) in DISTINCT(Dim[Person]),
    1,0
)

A continuación, debe colocar la medida en el filtro de nivel visual y utilizar 'Persona' de la tabla 'Dim' para filtrar el resultado.

b3.png

Resultado:

b4.png

b5.png

Saludos

Allan

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

4 REPLIES 4
Helper I
Helper I

Hola Allan! ¡Muchas gracias por la respuesta rápida y excelente! Esto era perfecto para filtrar la mesa como yo quería. Pero, ¿por qué no funciona cuando tengo un gráfico de columna visual y quiero, por ejemplo, visualizar la suma de valor?

¡Gracias de nuevo! @v-alq-msft

Administrator
Administrator

Hola, @Lenerius

Según su descripción, creé datos para reproducir su escenario. El archivo pbix se adjunta al final.

Hecho:

b1.png

Tenue:

b2.png

No hay ninguna relación entre dos tablas. Puede crear una medida como se indica a continuación.

Visual Control = 
IF(
    MAX('Fact'[Teamleader]) in DISTINCT(Dim[Person]) || MAX('Fact'[Responsible]) in DISTINCT(Dim[Person]),
    1,0
)

A continuación, debe colocar la medida en el filtro de nivel visual y utilizar 'Persona' de la tabla 'Dim' para filtrar el resultado.

b3.png

Resultado:

b4.png

b5.png

Saludos

Allan

Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

¡Hola! Creo que hice mi ejemplo arriba un poco demasiado simple. Lo que realmente tengo es una FactTable con las siguientes columnas: Fecha, Valor, ID, Líder de equipo, Responsable.

Y me gustaría crear un gráfico de columnas que tenga año y mes en el eje X. Y tengo el siguiente measue como valor: calculate(Distinctcount(FactTable[ID]))

¿Cómo puedo filtrar el gráfico de columnas si quiero contar el número de ID durante un mes que tiene a la persona A como responsable o Teamleader?

La solución anterior funciona muy bien al filtrar una tabla con un identificador único en cada fila. Pero cuando acumulo tengo problemas.

¡Agradecido por tu fantástica ayuda como siempre! ¡Gracias!

Responsive Resident
Responsive Resident

CREAR una tabla con

Valor , líder del equipo

Unión

Valor , Responsable

eliminar valores duplicados

Enlace dim a segunda columna

Enlace de la primera columna al valor

Helpful resources

Announcements
secondImage

Congratulations!

We are excited to announce the Power BI Super Users!

Microsoft Ignite

Microsoft Ignite

Join digitally, March 2–4, 2021 to explore new tech that's ready to implement. Experience the keynote in mixed reality through AltspaceVR!

secondImage

The largest Power BI virtual conference

100+ sessions, 100+ speakers, Product managers, MVPs, and experts. All about Power BI. Attend online or watch the recordings.