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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

Medición o cálculo con la entrada del usuario (segmentación de datos o filtro)

queridos gurús de PBI

Estoy luchando por encontrar la forma más fácil de crear un cálculo / medida con una entrada dinámica del usuario.

Mi tabla inicial es la siguiente

artículo
descripción del artículo
Fy
Mes
dimensión
Cantidad
ABC
ABC-Description
2021
1
Ordered
55
ABC
ABC-Description
2021
1
forecast current month
60
ABC
ABC-Description
2021
1
forecast m-1
70
ABC
ABC-Description
2021
1
forecast m-2
70
ABC
ABC-Description
2021
1
forecast m-3
100

Necesito, para cada elemento, calcular una fórmula con "ordenado" como entrada de corrección y selección de variables de "corecast m-*". La fórmula completa es = ABS(Ordenado - Pronóstico M-*)/(ABS(Ordenado)+ABS(Pronóstico M-*)) y me gustaría dar la posibilidad a cada usuario de cambiar de "pronóstico m-1" a "pronóstico m-3" usando una cortadora o un filtro.

El resultado final sería una tabla como

ITEM Item Descripción ordenada Fcast M-* (seleccionada por el usuario) Resultado de la fórmula

6 REPLIES 6
Syndicate_Admin
Administrator
Administrator

gracias @v-kalyj-msft

funciona muy bien. El único problema que he visto es que, dado que por tabla tiene múltiples entradas / grupos, tiene un comportamiento extraño cuando activo el total en la parte inferior de cada columna, lo que significa calcular lo mismo a nivel agregado (imagine que necesito agregar el artículo por familia de productos o por cliente.

¿Hay algo que pueda hacer para permitir que también el total muestre correctamente la suma de todas las filas de una columna?

gracias

@moia79 ,

Lo siento, no tengo muy claro a qué te refieres. Cuando enciendo el total, obtiene el resultado.

vkalyjmsft_0-1665394916205.png

vkalyjmsft_1-1665394934700.png

Si su muestra real es más complicada, ¿le gustaría exponer más o dar un ejemplo?

Saludos
Equipo de apoyo a la comunidad _ kalyj

Lo siento, fui demasiado rápido en responder 🙂

por lo tanto, un ejemplo de mi conjunto de datos es el siguiente

moia79_0-1665399310368.png

las filas individuales se calculan correctamente, sin embargo, el total en lugar de ser la suma de todas las entradas muestra solo el valor máximo (parece), preferiría ver la suma de todos los "Ordenados" y "Pronóstico". ¿Es posible añadiendo una operación "SUM" en la fórmula?

gracias por sus comentarios del rey

Saludos

Moia79

@moia79 ,

Lo siento por la respuesta tardía, modifico mi ejemplo para que contenga más elementos.

vkalyjmsft_0-1666687306524.png

Luego modifique la fórmula de esta manera:

Ordered =
VAR _T =
    SUMMARIZE (
        'Table',
        'Table'[Item],
        "Ordered",
            MAXX (
                FILTER (
                    ALL ( 'Table' ),
                    'Table'[Item] = MAX ( 'Table'[Item] )
                        && 'Table'[dimension] = "Ordered"
                ),
                'Table'[Quantity]
            )
    )
RETURN
    SUMX ( _T, [Ordered] )
Fcast M-* =
VAR _T =
    SUMMARIZE (
        'Table',
        'Table'[Item],
        "Fcast M-",
            MAXX (
                FILTER ( 'Table', 'Table'[dimension] = SELECTEDVALUE ( 'Table'[dimension] ) ),
                'Table'[Quantity]
            )
    )
RETURN
    SUMX ( _T, [Fcast M-] )
Formula result =
VAR _T =
    SUMMARIZE (
        'Table',
        'Table'[Item],
        "Formula resut",
            ABS ( [Ordered] - [Fcast M-*] )
                / ( ABS ( [Ordered] ) + ABS ( [Fcast M-*] ) )
    )
RETURN
    SUMX ( _T, [Formula resut] )

Obtenga el resultado correcto:

vkalyjmsft_1-1666687419547.png

Adjunto mi muestra a continuación para su referencia.

Saludos
Equipo de Apoyo a la Comunidad _ kalyj

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

Funciona 🙂

gracias

Syndicate_Admin
Administrator
Administrator

@moia79 ,

De acuerdo con su descripción, aquí está mi solución.

Solo puede usar medidas, ya que el valor de las columnas calculadas no puede verse afectado por la segmentación de datos. Crea tres medidas.

Ordered =
MAXX (
    FILTER (
        ALL ( 'Table' ),
        'Table'[Item] = MAX ( 'Table'[Item] )
            && 'Table'[dimension] = "Ordered"
    ),
    'Table'[Quantity]
)
Fcast M-* =
MAXX (
    FILTER ( 'Table', 'Table'[dimension] = SELECTEDVALUE ( 'Table'[dimension] ) ),
    'Table'[Quantity]
)
Formula result =
ABS ( [Ordered] - [Fcast M-*] )
    / ( ABS ( [Ordered] ) + ABS ( [Fcast M-*] ) )

Obtén el resultado.

vkalyjmsft_0-1664939029833.png

Adjunto mi muestra a continuación para su referencia.

Saludos
Equipo de apoyo a la comunidad _ kalyj

Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.

Helpful resources

Announcements
September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

Top Solution Authors