SumaProducto en medida

Un usuario Pregunto ✅

BI2018No

¡Hola expertos técnicos!

Me gustaría realizar un «sumproducto» en dos series de tiempo en la misma tabla de datos. Todo ID1 debe multiplicarse por ID2 para todos los intervalos de tiempo. ¿Cómo puedo hacer esto usando fórmulas DAX en una medida?

Hora IDENTIFICACIÓN Valor
01.01.2018 1 12
02.01.2018 1 14
03.01.2018 1 dieciséis
01.01.2018 2 100
02.01.2018 2 200
03.01.2018 2 300
12 * 100
+ 14 * 200
+ 16 * 300
= 8800

OwenAuger

Hola,

Con su tabla existente, una medida como esta usando SUMX le dará el resultado que está buscando. He utilizado variables para aclarar el cálculo.

SumProduct measure = 
SUMX (
    VALUES ( YourTable[Time] ),
    VAR ValueID1 =
        CALCULATE ( SUM ( YourTable[Value] ), YourTable[ID] = 1 )
    VAR ValueID2 =
        CALCULATE ( SUM ( YourTable[Value] ), YourTable[ID] = 2 )
    RETURN
        ValueID1 * ValueID2
)

Saludos

Owen

OwenAuger

Hola,

Con su tabla existente, una medida como esta usando SUMX le dará el resultado que está buscando. He utilizado variables para aclarar el cálculo.

SumProduct measure = 
SUMX (
    VALUES ( YourTable[Time] ),
    VAR ValueID1 =
        CALCULATE ( SUM ( YourTable[Value] ), YourTable[ID] = 1 )
    VAR ValueID2 =
        CALCULATE ( SUM ( YourTable[Value] ), YourTable[ID] = 2 )
    RETURN
        ValueID1 * ValueID2
)

Saludos

Owen

jordancole0517

En respuesta a OwenAuger

¡OWEN! ¡¡¡¡¡GRACIAS!!!!!

¡Esto ayudó a resolver mi publicación a continuación!

https: //community.powerbi.com/t5/Desktop/Row-Subtotals-not-calculating-correctly-for-Forecast/mp/19 …

@OwenAuger

BI2018No

En respuesta a OwenAuger

¡Muchas gracias por una rápida y excelente respuesta!

Una pregunta más si me lo puedo permitir.

Si ValueID1 representa un precio por hora, y ValueID2 representa los productos vendidos, y quiero devolver un precio promedio ponderado, entonces tendré que dividir la respuesta aquí con la SUMA de ValueID2, ¿supongo? ¿Cómo se puede hacer esto de una buena manera?

SumProduct measure = 
SUMX (
    VALUES ( YourTable[Time] ),
    VAR ValueID1 =
        CALCULATE ( SUM ( YourTable[Value] ), YourTable[ID] = 1 )
    VAR ValueID2 =
        CALCULATE ( SUM ( YourTable[Value] ), YourTable[ID] = 2 )
    RETURN
        ValueID1 * ValueID2
)

Zubair_Muhammad

En respuesta a OwenAuger

Hola @ BI2018No

Solo otra forma de hacerlo. ….

MEasure =
SUMX ( VALUES ( Table1[Time] ), CALCULATE ( PRODUCT ( Table1[Value] ) ) )

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *