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

La lógica de la medida es correcta, pero la tarjeta está sumando medida incorrectamente

Hola

¡Agradezco cualquier ayuda que pueda conseguir! Para problemas de sensibilidad, etiquete mis medidas con nombres genéricos.

Estoy tratando de crear una tarjeta que llame al número de unidades en rojo. La tarjeta mira la medida IN_RED. IN_RED medida se basa en otras 3 medidas: Calificador rojo, Calificador rojo del grupo 1 y Calificador rojo del grupo 2. La medida del Calificador Rojo del Grupo 1 marca la Unidad como 1 si está en Rojo (si no se alcanza el umbral). La medida del Calificador Rojo del Grupo 2 marca la Unidad como 1 si está en Rojo. La medida Red Qualifer marca la Unidad como 1 si la medida Red Qualifer del Grupo 1 o la medida red Qualifer del Grupo 2 están marcadas como 1.

IN_RED : CALCULATE(DISTINCTCOUNT('Group1'[Unit]),FILTER(ALL('Group1'),[Red Qualifier]-1))

Calificador rojo ?

IF(CALCULATE('Group1'[Group1 Red Qualifier],ALLEXCEPT('Group1','Group1'[Unit]))-1---- CALCULATE('Group2'[Group2 Red Qualifier], ALLEXCEPT('Group2','Group2'[Unit]))-1,1,0)
Calificador rojo del Grupo 1 ? IF('Group1'[Valor]>33,1,0)
Calificador rojo del grupo 2 : IF('Group2'[Valor]>20,1,0)

UnidadIN_REDCalificador rojoClasificación roja del Grupo 1Clasificación roja del Grupo 2
A1101
B 000
C 000
D1101
E1111
F1111
G 000
Total7111

Como se puede ver cuando pongo todas las medidas en la tabla, los totales no son exactos, pero la lógica es correcta. Sin embargo, necesito que el total de la medida IN_RED sea correcto, así que la tarjeta funcionará. Basado en la medida IN_RED, mi tarjeta debe decir 4 (como en hay 4 unidades en rojo). Intenté cambiar las medidas a columnas calculadas, pero eso tampoco funciona. ¡No puedo entenderlo! Si alguien tiene alguna entrada, por favor hágamelo saber.

1 ACCEPTED SOLUTION

Hola @mayerkath ,

Puesto que ha habido relaciones de varios a varios en estas tablas, usted tiene mejor crear una tabla de Bridge para crear la relación 1-to -many como esta:

Table = DISTINCT('Main Table'[ID])

relationshi.png

El grupo 1 rojo y el grupo 2 rojo son columnas calculadas:

Group 1 Red Qualifier = IF('Table 1'[Value 1] > 3,1,0)

Group 2 Red Qualifier = IF('Table 2'[Integer 1]> 5,1,0)

Cree la columna Red Qualufier en la tabla principal:

Red Qualufier = 
IF (
    CALCULATE (
        SUM ( 'Table 1'[Group 1 Red Qualifier] ),
        ALLEXCEPT ( 'Table 1', 'Table 1'[UNIT] )
    ) = 1
        || CALCULATE (
            SUM ( 'Table 2'[Group 2 Red Qualifier] ),
            ALLEXCEPT ( 'Table 2', 'Table 2'[UNIT] )
        ) = 1,
    1,
    0
)

Crear medida de IN_RED:

IN_RED = 
CALCULATE (
    DISTINCTCOUNT ( 'Main Table'[UNIT] ),
    FILTER ( 'Main Table', [Red Qualufier] = 1 )
)

Cuando elijo un mes en la segmentación, el resultado es así:

re.png

Adjunto un archivo de muestra en el siguiente, espera ayudarle.

Saludos
Equipo de apoyo a la comunidad _ Yingjie Li
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

8 REPLIES 8
v-yingjl
Community Support
Community Support

Hola @mayerkath ,

En primer lugar, debe saber que si la fórmula de su Calificador Rojo del Grupo 1 y la fórmula del Calificador Rojo del Grupo 2 son los mismos que su publicado, debe calcularse columna en lugar de medidas, las medidas no pueden citar los valores de columna directamente.

Así que El Calificador Rojo también es una columna calculada y debe modificarse así:

Red Qualufier = 
IF (
    CALCULATE (
        SUM ( 'Group1'[Group 1 Red Qualifier] ),
        ALLEXCEPT ( Group1, Group1[UNIT] )
    ) = 1
        || CALCULATE (
            SUM ( 'Group2'[Group 2 Red Qualifier] ),
            ALLEXCEPT ( Group2, Group1[UNIT] )
        ) = 1,
    1,
    0
)

En la medida [IN_RED], simplemente elimine all() en el filtro:

IN_RED = 
CALCULATE (
    DISTINCTCOUNT ( 'Group1'[UNIT] ),
    FILTER ( 'Group1', [Red Qualufier] = 1 )
)
// COUNTX(
//     FILTER(
//         Group1,
//         [Red Qualufier] = 1
//     ),
//     [UNIT]
// )

sum.png

Adjunto un archivo de muestra en el siguiente, espera ayudarle.

Saludos
Equipo de apoyo a la comunidad _ Yingjie Li
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Anonymous
Not applicable

¡Gracias por tu ayuda!

Sin embargo, cambiar Red Qualifier a una columna calculada con su lógica anterior crea un error de dependencia circular: "Se detectó una dependencia circular: Group1[Group1 Red Qualifier], Group1[Column], Group1[Group1 Red Qualifier]."

No estoy seguro de cómo hacer esto ahora.

amitchandak
Super User
Super User

@mayerkath , Pruebe una medida como

IN_RED á sumx(values( 'Group1'[Unit]), CALCULATE(DISTINCTCOUNT('Group1'[Unit]),FILTER(ALL('Group1'),[Red Qualifier]-1)))

Anonymous
Not applicable

Desafortunadamente, esto no funciona. Cuando lo probé, el valor de la tarjeta de medida IN_RED cambió de 7 a 49. Asumo que está resumiendo todas las unidades en rojo en lugar de agruparlas.

Hola @mayerkath ,

¿Podría considerar compartir un archivo de muestra ficticio sin ninguna información sesentiva o modificar el archivo basado en mi archivo de ejemplo y compartirlo para su posterior discusión?

Saludos
Equipo de apoyo a la comunidad _ Yingjie Li
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Anonymous
Not applicable

Aquí están los datos de muestra para el Cuadro 1:

mayerkath_0-1605728920021.png

Aquí están los datos de muestra para el Cuadro 2:

mayerkath_1-1605728984125.png

Tabla principal que filtra la tabla 1 y 2:

mayerkath_2-1605729034436.png

Puse la misma lógica para las medidas de mi primer post inicial. Para aclarar, hay una relación en las tablas donde las tablas principales filtran TODAS las tablas en el panel. Así que "Tabla principal" está filtrando "Tabla 1" y "Tabla 2" por la columna ID.

Aquí está el resultado:

mayerkath_3-1605729104805.png

Lo cual es lamentablemente incorrecto. Cualquier ayuda sería apreciada.

Hola @mayerkath ,

Puesto que ha habido relaciones de varios a varios en estas tablas, usted tiene mejor crear una tabla de Bridge para crear la relación 1-to -many como esta:

Table = DISTINCT('Main Table'[ID])

relationshi.png

El grupo 1 rojo y el grupo 2 rojo son columnas calculadas:

Group 1 Red Qualifier = IF('Table 1'[Value 1] > 3,1,0)

Group 2 Red Qualifier = IF('Table 2'[Integer 1]> 5,1,0)

Cree la columna Red Qualufier en la tabla principal:

Red Qualufier = 
IF (
    CALCULATE (
        SUM ( 'Table 1'[Group 1 Red Qualifier] ),
        ALLEXCEPT ( 'Table 1', 'Table 1'[UNIT] )
    ) = 1
        || CALCULATE (
            SUM ( 'Table 2'[Group 2 Red Qualifier] ),
            ALLEXCEPT ( 'Table 2', 'Table 2'[UNIT] )
        ) = 1,
    1,
    0
)

Crear medida de IN_RED:

IN_RED = 
CALCULATE (
    DISTINCTCOUNT ( 'Main Table'[UNIT] ),
    FILTER ( 'Main Table', [Red Qualufier] = 1 )
)

Cuando elijo un mes en la segmentación, el resultado es así:

re.png

Adjunto un archivo de muestra en el siguiente, espera ayudarle.

Saludos
Equipo de apoyo a la comunidad _ Yingjie Li
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Anonymous
Not applicable

Creé un archivo. ¿Cómo puedo compartir con usted? Mi lugar de trabajo puede restringir los archivos vistos por fuentes externas.

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.

Top Kudoed Authors