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

DAX: creación de una medida (basada en una tabla filtrada) que no se ve afectada por las segmentaciones de datos

Hola a todos,

Estoy intentando crear una medida que contará el número de valores únicos en una columna específica de una tabla después de que se haya filtrado en función de los valores de otra tabla. Ambas tablas están vinculadas. La dificultad es que quiero que esa medida no se vea afectada por las rebanadoras que pueda tener.

Traté de adjuntar un .pbix que contiene un modelo de datos que se parece al que tengo, pero no parece funcionar.

Básicamente, tengo mi tabla F Group que tiene la colum Variable1 (que toma los valores "Sí" o "No"). Esta tabla está vinculada a la tabla Ing Group (a través de varias otras tablas) que tiene el colum Ing-ID. Quiero crear una medida que cuente el número de valores únicos en la columna Ing-ID cuando Variable1 de la tabla Grupo F es "Sí", y quiero que esa medida no se vea afectada por las segmentaciones de datos.

Hasta ahora, se me ocurrió

Nb_IngID = COUNTX(SUMMARIZE(ALL('Ing Group'), 'Ing Group'[Ing-ID]), 'Ing Group'[Ing-ID])

que no se ve afectado por las segmentaciones de datos, pero cuenta todos los valores de Ing-ID,incluso aquellos para los que Variable1 es "No". No puedo encontrar una manera de introducir una función FILTER dentro de esa medida.

Además, sé que probablemente sería más fácil crear otra tabla, pero desafortunadamente no es una opción ya que no puedo crear/cambiar el modelo.

¡Gracias si puedes ayudarme!

2 ACCEPTED SOLUTIONS
AlB
Super User
Super User

No @Twelve

No se puede adjuntar el archivo, tienes que compartir la URL al archivo alojado en otro lugar: Dropbox, Onedrive... o simplemente cargue el archivo en un sitio como tinyupload.com (no se requiere registro).

Suponiendo que hay relaciones para propagar los filtros en F hasta ING:

Nb_IngID =
CALCULATE ( DISTINCTCOUNT ( 'Ing Group'[Ing-ID] ), 'F Group'[Variable] = "No" , ALL( ))

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

View solution in original post

AlB
Super User
Super User

@Twelve

El ALL( ) es porque usted declaró que no quería ninguna interferencia de ninguna cortadora, que es un poco de un requisito impar / inusual. Si exige un argumento en DQ, puede usar ALL( ) con las tablas/columnas que espera que tengan segmentaciones de datos activadas. O tal vez:

Nb_IngID =
CALCULATE (
    DISTINCTCOUNT ( 'Ing Group'[Ing-ID] ),
    'F Group'[Variable] = "No",
    ALL ( 'Ing Group' ),
    ALL ( 'F Group' )
)

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

View solution in original post

5 REPLIES 5
AlB
Super User
Super User

@Twelve

El ALL( ) es porque usted declaró que no quería ninguna interferencia de ninguna cortadora, que es un poco de un requisito impar / inusual. Si exige un argumento en DQ, puede usar ALL( ) con las tablas/columnas que espera que tengan segmentaciones de datos activadas. O tal vez:

Nb_IngID =
CALCULATE (
    DISTINCTCOUNT ( 'Ing Group'[Ing-ID] ),
    'F Group'[Variable] = "No",
    ALL ( 'Ing Group' ),
    ALL ( 'F Group' )
)

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

Anonymous
Not applicable

@AlB,

Hice exactamente lo que sugeriste: ¡Utilicé ALL() con las mesas que tenían rebanadoras y funcionó exactamente como necesitaba!

Estoy aceptando su respuesta como solución, ya que me da exactamente lo que quería y es claro y elegante. Muchas gracias por su ayuda, realmente lo agradezco.

¡Ten un buen día!

amitchandak
Super User
Super User

@Twelve , Puede agregar filtro como un ejemplo

Nb_IngID - COUNTX(SUMMARIZE(Filter(ALL('Ing Group'), 'Ing Group'[Ing-ID] á "X" ), 'Ing Group'[Ing-ID]), 'Ing Group'[Ing-ID])

Puede utilizar treatas para filtrar valores de otra tabla

https://docs.microsoft.com/en-us/dax/treatas-function

AlB
Super User
Super User

No @Twelve

No se puede adjuntar el archivo, tienes que compartir la URL al archivo alojado en otro lugar: Dropbox, Onedrive... o simplemente cargue el archivo en un sitio como tinyupload.com (no se requiere registro).

Suponiendo que hay relaciones para propagar los filtros en F hasta ING:

Nb_IngID =
CALCULATE ( DISTINCTCOUNT ( 'Ing Group'[Ing-ID] ), 'F Group'[Variable] = "No" , ALL( ))

Por favor, marque la pregunta resuelta cuando haya terminado y considere dar un pulgar hacia arriba si las publicaciones son útiles.

Póngase en contacto conmigo de forma privada para obtener asistencia con cualquier necesidad de BI a gran escala, tutoría, etc.

Salud

SU18_powerbi_badge

Anonymous
Not applicable

Gracias por tomarse el tiempo para ayudar!

Cuando probé su fórmula, funcionó como se pretendía en el modelo de datos falsos que creé, pero no en el real. Para el real, dijo que la función ALL() requiere al menos un parámetro. No estoy seguro de por qué funcionó en uno, pero no en el otro. La única diferencia es que en la real utilizo una conexión DirectQuery.

¿Hay alguna manera de ajustar la fórmula para que funcione con una conexión de DirectQuery?

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.