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.
Anteriormente he planteado esta consulta ( https://community.powerbi.com/t5/Desktop/Cross-filtering-across-tables/m-p/1398390# ) y (https://community.powerbi.com/t5/Desktop/Cross-Filter-across-tables-2/m-p/1412162#M597413), pero no tengo una respuesta eficaz para cerrar el problema. Traspasar con más claridad sobre el requisito.
Reestreando el ejemplo siguiente, con edición menor en filtros:
TABLA 1
Cada fila muestra 1 ID solamente. ID no se repite en LA TABLA 1
Medida : Count_of_unique_ID 8
TABLA 2
Cada fila es una combinación única de ID y Condición. es decir, ID, la condición no se repetirá. La tabla puede tener <ID de la tabla 1. Por ejemplo, no tendrá un nuevo ID 10 que no se ha producido en la tabla 1.
La unión actual está en ambas direcciones y a través de ID
FILTROS Y MEDIDA - SALIDA EXPECTADA.
FILTRO 1 - EDAD < 35 [ELIMINAR TODOS los que están por encima de 35]
FILTRO 2 - EXCLUIR (no filtrar) ID con CONDICION (A O B) - dos seleccionados [ selección múltiple debe permitirse aquí en solución]. Todos los demás que no tengan condición A o B o cualquier condición (no vienen en la tabla 2) deben mostrarse. Donde se produjo A o B ( IDs , debe excluirse ). El filtro debe funcionar como multiseguido, por ejemplo (A o B)
TABLA 1 después de los filtros
Medida : Count_of_unique_ID 3
Basado en la solución anterior de (Equipo de soporte de la comunidad _ zhenbw) en el enlace (https://community.powerbi.com/t5/Desktop/Cross-filtering-across-tables/m-p/1398390#) sólo funciona si se selecciona una condición, es decir, A . Si selecciono dos condiciones, vuelve a su recuento original.
¿Cuál es el mejor appraoch para resolver esto?
Solved! Go to Solution.
Hola @pbhat89 ,
No estoy seguro de lo que quiere decir con"Leo en línea que no podemos hacer referencia a variables de una tabla temporal en Power BI." pero compruebe el siguiente post de SQLBI donde hacen referencias a cómo usar cálculos de variables y obtener datos de esas tablas.
https://www.sqlbi.com/articles/table-and-column-references-using-dax-variables/
En cuanto a mi segundo comentario, estaba haciendo referencia a que puede usar los nuevos parámetros de consulta M para crear una nueva tabla que recoja los valores de segmentación de datos filtrando los datos y, a continuación, use esa 3a tabla para realizar la visualización de datos junto con la segmentación de la condición.
Consulta la entrada del blog a continuación:
https://blog.crossjoin.co.uk/2020/10/25/why-im-excited-about-dynamic-m-parameters-in-power-bi/
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHola @pbhat89 ,
Según los datos que muestre que necesita hacer una medida similar a esta:
Calculation =
VAR temp_table =
FILTER (
ALLSELECTED ( Table1[ID]; Table1[Age] );
NOT ( Table1[ID] IN VALUES ( Table2[ID] ) )
)
RETURN
COUNTROWS ( temp_table )
Tenga en cuenta que solo estoy trabajando con dos segmentaciones en Age y con la condición de agregar segmentaciones adicionales para la altura o la puntuación, debe agregarla al estamento allseleted.
Adjunto de resultado y a continuación:
Tenga en cuenta que en esta opción he desactivado las interacciones entre las dos segmentaciones de datos, pero pueden estar activadas si lo necesita.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsDado que en el caso real - tengo muchas variables en la tabla 1 que se pueden utilizar como filtros - podría aconsejar algo como :
Hola @pbhat89 ,
Como se ha referido, es necesario colocar esas variables dentro de los
Calculation =
VAR temp_table =
FILTER (
ALLSELECTED ( Table1[ID]; Table1[Age]; table [column];...;table [columnzz] );
NOT ( Table1[ID] IN VALUES ( Table2[ID] ) )
)
RETURN
COUNTROWS ( temp_table )
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em Portuguêsgracias @MFelix - lo hice para trabajar, pero con mi tablero real, pero tuve que añadir si argumento filtrado para asegurarse de que se aplica no sólo cuando se seleccionan los filtros en la tabla de condiciones. mis datos reales llega lejos para más complejo donde tengo muchos cálculos aparte de contar. Estas son fórmulas condicionales que dificultan la escritura de un código con requisitos (filtrados y no en) .
Simplemente quiero obtener una tabla X (subconjunto de la tabla 1 ) que se actualiza como i
Parte (A) : seleccione los filtros (diga Edad , Altura )
Parte (B) : pero tiene una interacción diferente (B) con la tabla 2 -
- si la tabla 2 está filtrada ( uno o más seleccionados ) - a continuación, utilice el argumento not in (por ejemplo, como compartido por usted anteriormente)
- si la tabla no se ha filtrado ( nada seleccionado en condiciones ) - la tabla X sólo debe mostrarse en función de los filtros ( Edad , Altura ) y no
tener alguna conexión con el Cuadro 2.
Una vez que esta tabla X se genera / actualiza como i cambiar parámetros en la parte A o B - puedo crear todas las fórmulas de esta sola tabla X. Es fácil hacer la parte de los filtros (ya que las columnas están dentro de la tabla 1) pero con la parte B se vuelve compleja ¿Cómo podemos crear una tabla dinámica (a partir de consultas) que se actualiza en función de (A) y (B) arriba?
Hola @pbhat89
Si entiendo correctamente lo que necesita es que si no hay valores seleccionados en la condición de segmentación de datos debe obtener 6 (con un filtro de edad por debajo de 35) si se seleccionan valores se obtiene el número correcto:
¿Es esto correcto?
Sólo tiene que hacer los cálculos basados en su tabla inicial en este caso estoy usando un recuento que debe volver a escribir la fórmula para:
Calculation =
VAR temp_table =
FILTER (
ALLSELECTED ( Table1[ID]; Table1[Age] );
NOT ( Table1[ID] IN VALUES ( Table2[ID] ) )
)
RETURN
IF (
ISFILTERED ( Table2[Condition] );
COUNTROWS ( temp_table );
COUNTROWS ( Table1 )
)
Tenga en cuenta que esta selección ISFILTERED tiene en cuenta que tiene alguna selección en la condición de segmentación de datos, por lo que si selecciona A, B y C utilizará el no si anula la selección de todos ellos, utilizará la tabla1.
No estoy seguro de si he entendido lo que necesita, pero espero que este sea el resultado que necesita.
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHola @MFelix
Su comprensión es correcta y he logrado obtener mis fórmulas en forma de sintaxis a continuación.
(ignore el nombre, ya que esto se basa en mis datos reales)
Hola @pbhat89 ,
El uso de la tabla temporal le proporciona esa necesidad de crear la tabla con solo unas pocas filas y, a continuación, realizar cálculos encima de ella utilizando las diferentes columnas que están con esa tabla temporal.
Cuando tiene más de una medida relacionada con otra, los cálculos pueden llegar a ser bastante extraños, especcialmente si tiene instrucciones IF en la sintaxis de retorno, más cuando cambia el contexto en una visualización, los resultados también pueden ser desordenados.
Puede comprobar la nueva actualización de parámetros de consulta M que se basa en una selección de segmentación de datos tal vez pueda crear una nueva tabla para crear la segmentación de datos y, a continuación, elaborar el no en la otra tabla.
https://powerbi.microsoft.com/en-us/blog/power-bi-october-2020-feature-summary/#_Toc52195564
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsHola @MFelix
Cuando creo para crear una tabla temporal - no me permite hacer referencia a las columnas en la parte de cálculo. Leí en línea que no podemos hacer referencia a variables de una tabla temporal en Power BI.
Para su otro comentario : ¿podría aconsejar cómo hacerlo?
Si tengo una tabla:
¿cómo puedo crear una tabla dinámica que se actualiza en función de los filtros de la tabla 1, y la selección de arriba que conduce a cambios en la tabla 2 --> y la tabla 1 a partir de entonces (no en parte)
Hola @pbhat89 ,
No estoy seguro de lo que quiere decir con"Leo en línea que no podemos hacer referencia a variables de una tabla temporal en Power BI." pero compruebe el siguiente post de SQLBI donde hacen referencias a cómo usar cálculos de variables y obtener datos de esas tablas.
https://www.sqlbi.com/articles/table-and-column-references-using-dax-variables/
En cuanto a mi segundo comentario, estaba haciendo referencia a que puede usar los nuevos parámetros de consulta M para crear una nueva tabla que recoja los valores de segmentación de datos filtrando los datos y, a continuación, use esa 3a tabla para realizar la visualización de datos junto con la segmentación de la condición.
Consulta la entrada del blog a continuación:
https://blog.crossjoin.co.uk/2020/10/25/why-im-excited-about-dynamic-m-parameters-in-power-bi/
Regards
Miguel Félix
Proud to be a Super User!
Check out my blog: Power BI em PortuguêsCovering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |