Total acumulado

Un usuario Pregunto ✅

ElliotP

Hola,

Estoy absolutamente perdido en cuanto a cómo calcular un total acumulativo. He intentado buscar en Google, leer los foros, seguir la documentación, descomponer el cálculo, probarlo como medida y como columna calculada; Siempre parece referirme al mismo número. Así por ejemplo; Marzo será el 10, el 12 de abril, pero en lugar de mostrarme el 10 de marzo y el 22 de abril, me muestra el 10 de marzo y el 12 de abril.

Por ejemplo: https://gyazo.com/41bd333cedac290e6980772906ff0034 con una medida

En mi columna Mes como una columna de fecha, he intentado usar todo tipo de funciones, incluidas funciones de cálculo, suma, suma, basadas en el tiempo.

El filtro comúnmente recomendado de [Date] <= MAX [Date] siempre devuelve un error. La función anterior devuelve errores con la preocupación de que no haya una función por encima de ella. Cualquier ayuda será muy apreciada; Hoy he pasado horas tratando de resolver esto y tengo la sensación de que hay una diferencia entre el dax pivotante y el powerbi dax. Quiero poder dar forma y transformar mis datos en powerbi, usando dax en powerbi.

Cualquier ayuda será muy apreciada.

Sean

En respuesta a Vvelarde

@ElliotP Perdón por la publicación original. Era de mi teléfono y tenía errores tipográficos Guiño sonriente

Bien, aquí está la fórmula para el total acumulado como una columna calculada (con el formato correcto)

Running Total COLUMN =
CALCULATE (
    SUM ( 'All Web Site Data (2)'[UniquePageviews] ),
    ALL ( 'All Web Site Data (2)' ),
    'All Web Site Data (2)'[Date] <= EARLIER ( 'All Web Site Data (2)'[Date] )
)

¡Y como puede ver, funciona! Smiley feliz

Running Total 2.png

Y aquí está la fórmula MEASURE

Running Total MEASURE = 
CALCULATE (
    SUM ( 'All Web Site Data (2)'[UniquePageviews] ),
    FILTER (
        ALL ( 'All Web Site Data (2)' ),
        'All Web Site Data (2)'[Date] <= MAX ( 'All Web Site Data (2)'[Date] )
    )
)

Que también funciona …

Running Total 3.png

pfabra

Hola,

Intenté como se sugirió, pero solo lo hice funcionar casi.

pfabra_0-1614130420025.png

Debido a que no hay datos actuales desde el 01/01/2021 en adelante, se mostrará el último valor. ¿Cómo puedo mostrar el acumulado solo si hay un valor real?

Datos reales acumulados =
CALCULAR(
SUM (‘Previsión de ingresos por contrato'[Actual]),
FILTRAR(
TODOS (‘Previsión de ingresos por contrato’),
‘Previsión de ingresos por contrato'[Month] <= EARLIER ('Previsión de ingresos por contrato'[Month])
))

¡Gracias por adelantado!

Salud,

BrentonC

Utilicé las soluciones proporcionadas, aunque necesitaba restablecer la suma cada semana, esto funcionó bien para mí. Se agregó una variable para comparar el número de la semana. Agrega cada día a medida que avanza hasta que llega una nueva semana, comienza de nuevo.

Running SOP = 
var x = SOP[Week Number]

return
CALCULATE (
    SUM ( 'SOP'[Production Tonnes])
    , ALL (SOP),
    ('SOP'[Date] <= EARLIER ( 'SOP'[Date]) && weeknum(SOP[Date],2) == x))

total acumulado.PNG

ajj263

¿Alguien sabe cómo obtener el total acumulativo por sitio?

Fecha y hora Sitio número
1/01/2015 6:00 Automóvil club británico 35
1/01/2015 6:00 cama y desayuno 22
1/01/2015 6:00 CC 47
1/01/2015 18:00 Automóvil club británico 12
1/01/2015 18:00 cama y desayuno sesenta y cinco
1/01/2015 18:00 CC 24
2/01/2015 6:00 Automóvil club británico 35
2/01/2015 6:00 cama y desayuno 78
2/01/2015 6:00 CC sesenta y cinco
2/01/2015 18:00 Automóvil club británico 12
2/01/2015 18:00 cama y desayuno 45
2/01/2015 18:00 CC 68
01/03/2015 6:00 Automóvil club británico 66
01/03/2015 6:00 cama y desayuno 74
01/03/2015 6:00 CC 32
01/03/2015 18:00 Automóvil club británico 36
01/03/2015 18:00 cama y desayuno 54
01/03/2015 18:00 CC 69
4/01/2015 6:00 Automóvil club británico 24
4/01/2015 6:00 cama y desayuno 56
4/01/2015 6:00 CC 35
4/01/2015 18:00 Automóvil club británico 45
4/01/2015 18:00 cama y desayuno 39
4/01/2015 18:00 CC 57
5/01/2015 6:00 Automóvil club británico 78
5/01/2015 6:00 cama y desayuno 35
5/01/2015 6:00 CC 15

BrentonC

En respuesta a ajj263

@drnareshchauhan

Es un poco engañoso, aunque podría crear referencias de la tabla y filtrar en cada sitio (si no hubiera demasiados) Utilice la solución proporcionada para la suma acumulativa basada en la fecha. Luego une todas las mesas … aunque estoy seguro de que debe haber una forma mejor …
EDITAR:
Me avergüenza incluso haber pensado en eso, una forma mucho mejor de sumar dos columnas en su situación es usar Python

# 'dataset' holds the input data for this script
dataset['cumsum'] = dataset.groupby(['site','datepd'])['number'].cumsum()

Notas:

A Pandas no le gusta devolver las fechas correctamente, cree una columna duplicada que sea el tipo de fecha datepd de su columna de fecha.
Cambie su fecha original a texto para que luego tenga una referencia de la fecha.
Usa el código de arriba.

Seleccione el conjunto de datos.

Eliminar la columna datepd

Cambie la columna de fecha al tipo de fecha nuevamente.

Debería estar bien para ir.

Capture.PNG

Zhengy

¿Por qué en la medida usamos MAX () pero usamos Anterior () en la columna calculada? ¿Son intercambiables?

serh2

Hola,

He estado tratando de sumar acumulativa durante mucho tiempo, pero no pude. Les doy el ejemplo a continuación, si me pueden ayudar, realmente se lo agradeceré. Gracias por su consideración. Dios te bendiga.

Intento 2017-01 + 2017-02 e intento escribir una nueva hoja. Te doy un ejemplo de excel.

1.JPG2.JPG

wstan77

Hola,

Tengo problemas para obtener las expresiones DAX correctas.

La columna del total acumulado se calcula manualmente … este es el resultado que quiero lograr con la medida del total acumulado. El total acumulado se suma para cada equipo y en las fechas.

Capture.PNG

Estoy usando la expresión DAX actual, pero se está ejecutando total independientemente del equipo.

Medida total corriente =
CALCULAR(
SUM (Hoja1[Qty]), FILTRO (TODOS (Hoja1), Hoja1[Date]<= MAX (Hoja1[Date])))

¿Alguien puede ayudar? Gracias.

plaa

Hola,

Obtuve esta expresión funcionando en un gráfico de barras para que muestre el total correcto cuando [Date] El campo se selecciona como eje x. Sin embargo, si uso la jerarquía de fechas como eje x, ya no funcionará. En lugar de acumular el total, da el total del período. Por ejemplo, si las ventas totales en enero son 100 y 200 en febrero, muestra 100 para enero y 200 para febrero, en lugar de 100 para enero y 300 para febrero como debería. ¿Alguien sabe cuál podría ser el problema?

CALCULATE (
    SUM ( [TotalSales] );
    FILTER(
	ALL ( [Sales] );
        Sales[Date] <= MAX( Sales[Date] )
    )
)

ShokYee

Mientras trato de aprender Power BI,

También me he enfrentado a la misma pregunta, pero los datos que tengo pueden ser ligeramente diferentes a la situación anterior.

Tengo una muestra de datos que son los datos de ventas de algunos países.

Quiero encontrar las ventas totales acumuladas, pero tengo ventas que ocurren más de una vez en el mismo día.

Intenté aplicar la fórmula anterior, pero solo se aplica a nivel de ‘año’, pero el valor también es incorrecto.

Esto es lo que pretendo conseguir: Gráfico que quiero tener

Aquí están los datos de muestra: Imagen de datos de muestra

Aquí está la fórmula que trato de aplicar: Fórmula del total acumulado que traté de aplicar

(donde la fecha aquí es la ‘Fecha de pedido’ y con el valor que es ‘Ventas’)

Realmente aprecio si alguien puede tener una respuesta, si hay algo que desee, se lo proporcionaré.

¡Muchas gracias!

rdurkin

@ElliotP

Una medida común que probablemente le resulte útil en los modelos tabulares de PowerPivot o SSAS es encontrar totales acumulados. Por ejemplo, es posible que desee ver las ventas totales de un producto a medida que se acumulan a lo largo del tiempo o, para los modelos de inventario, el total disponible en un momento determinado. Puedes encontrar más consejos y trucos en mi blog, www.bipatterns.com.

Comencemos con una medida base en una tabla dinámica muy simple.
Ventas totales: =
CALCULAR ( SUMA ( FactSales[SalesAmount] ) )

Ventas totales

Ahora hagamos nuestro primer intento de calcular un total acumulado. Esta es la fórmula más intuitiva, pero tiene un error común que no es necesariamente fácil de ver de inmediato.
Ventas totales acumuladas: =
CALCULAR (
[Total Sales],
FILTRAR (
TODOS ( DimDate[Datekey] ),
DimDate[Datekey] <= MAX ( ( DimDate[Datekey] ) )
)
)
Partes clave de la fórmula: el uso de ALL (DimDate[DateKey]) da como resultado que se ignore el contexto actual, por lo que se analizarán las fechas fuera del contexto de la fila dinámica actual. El segundo paso clave es la comparación de DimDate[Datekey] <= MAX ( ( DimDate[Datekey] ). Esto significa que se calcularán todas las fechas en la columna DateKey que están antes del contexto de fila de la tabla dinámica actual.

Si ponemos esta medida en una tabla, obtendremos los números correctos, pero nos quedará un problema.

Ventas Totales Cumalative

La fórmula devuelve un número para las fechas que no tienen ventas. Necesitamos agregar algo de manejo de errores, que se describe a continuación.
Ventas acumuladas (correcto): =
SI (
CUENTAS ( FactSales ) > 0,
CALCULAR (
[Total Sales],
FILTRAR (
TODOS ( DimDate[Datekey] ),
DimDate[Datekey] <= MAX ( ( DimDate[Datekey] ) )
)
),
BLANCO ()
)

La función SI comprueba para asegurarse de que hay ventas en el contexto seleccionado actual, de lo contrario, devuelve en blanco. Puede ver la diferencia entre las dos medidas a continuación:

Ventas totales acumulativas (correcto)

Si tiene alguna pregunta para mí, puede comunicarse conmigo a través de LinkedIn o en el Comunidad PowerBI.

Márquelo como una solución o dé un kudo si funciona para usted; de lo contrario, avíseme si tiene un problema y haré todo lo posible para ayudarlo.

Gracias,

Ryan Durkin

MilapM

En respuesta a rdurkin

Hola @rdurkin, no puedo entender cómo la declaración IF está manejando el error. Explique de una manera un poco más clara. Gracias.

Anónimo

En respuesta a rdurkin

Hola
Intento la fórmula anterior pero no puedo obtener resultados, no sé por qué. ¿Puede usted ayudar?
CALCULAR (
SUM (vwExecucaoMensalItem[BudgetPurchaseValue] ),
FILTRO (
TODOS (vwExecucaoMensalItem[Date] ),
vwExecucaoMensalItem[Date]
)
)

sdjensen

¿Leíste este artículo? Realmente explica todo lo que necesita saber sobre el total acumulativo

ElliotP

En respuesta a sdjensen

@sdjensen He leído ese artículo y esa es la base en la que he estado trabajando, pero fue en vano. Cuando intento imponer la medida en una tabla o creo una nueva columna con esos datos, simplemente me da el mismo valor que corresponde con los datos.

Fotos para demostrar mejor el problema:

https://gyazo.com/ca41ce0b2d8ec572608d4afda4cffd32

https://gyazo.com/4e8d9b3e1cc38c514048272ced01a534

https://gyazo.com/14a6089654df6e90e7fd5595fd842ebd

La columna Fecha se establece en una fecha, las Páginas vistas únicas se establecen en Números enteros. Sinceramente, estoy perdido en este punto.

Vvelarde

En respuesta a ElliotP

@ElliotP

Reemplazar esto:

Todos (Allwebsitedata (2) [Date]),

Por

Todos (Allwebsitedata (2)),

La razón es porque está usando el campo de fecha en su tabla de datos, si usa una tabla de calendario, la fórmula funciona perfectamente.

ElliotP

En respuesta a Vvelarde

@Vvelarde

Muchas gracias, estamos progresando.

Lo probé como medida y como una nueva columna calculada, pero muestra el total acumulado en cada fila; fotos para demostrar;

https://gyazo.com/0d365fcaaba2507bca2dffe1177837eb

https://gyazo.com/37b810f7b9f4659492b405b3362106db

Además, ¿qué quiere decir con respecto a la tabla de fecha del campo de fecha? ¿Debo configurarlo en otro tipo de tabla?

Vvelarde

En respuesta a ElliotP

@ElliotP

Para una columna calculada:

Cantidad acumulativa2 =
VAR CURRENTDATE = ‘Todos los datos del sitio web (2)'[Date]
REGRESO
CALCULATE (SUM (‘Todos los datos del sitio web (2)'[UniquePagePreviews]); FILTER (all (‘Todos los datos del sitio web (2)’); ‘Todos los datos del sitio web (2)'[Date]<= FECHA ACTUAL))

cumu.png

Por una medida:

Cantidad acumulativa-M =
CALCULATE (SUM (‘Todos los datos del sitio web (2)'[UniquePagePreviews]); FILTER (all (‘Todos los datos del sitio web (2)’); ‘Todos los datos del sitio web (2)'[Date]<= MAX ('Todos los datos del sitio web (2)'[Date])))

Espero que esto te ayude.

Sean

En respuesta a Vvelarde

@ElliotP Perdón por la publicación original. Era de mi teléfono y tenía errores tipográficos Guiño sonriente

Bien, aquí está la fórmula para el total acumulado como una columna calculada (con el formato correcto)

Running Total COLUMN =
CALCULATE (
    SUM ( 'All Web Site Data (2)'[UniquePageviews] ),
    ALL ( 'All Web Site Data (2)' ),
    'All Web Site Data (2)'[Date] <= EARLIER ( 'All Web Site Data (2)'[Date] )
)

¡Y como puede ver, funciona! Smiley feliz

Running Total 2.png

Y aquí está la fórmula MEASURE

Running Total MEASURE = 
CALCULATE (
    SUM ( 'All Web Site Data (2)'[UniquePageviews] ),
    FILTER (
        ALL ( 'All Web Site Data (2)' ),
        'All Web Site Data (2)'[Date] <= MAX ( 'All Web Site Data (2)'[Date] )
    )
)

Que también funciona …

Running Total 3.png

AliceW

En respuesta a Sean

¡Muchas gracias por la fórmula!

Hice un ajuste para que funcionen varios filtros aplicados en la página: en lugar de ALL (), he usado ALLSELECTED ([Date]).

drnareshchauhan

En respuesta a Sean

@Sean

Hola señor, la medición total en ejecución funciona en mi caso, pero no muestra un valor diferente para las diferentes categorías.

Quiero mostrar casos de covid acumulados según el distrito, pero no puedo hacerlo. Probé muchas fórmulas por dos días.

Alguien ayúdeme

gracias de antemano !

CUANDO USO MEASURE

fecha distrito resultados no de confirmado
20-5-20 A POS 1
21-5 A NEG 0
22-5 A POS 1
23-5 A NEG 0
24-5 B POS 1
25-5 B POS 1
26-5 B POS 1
27-5 C POS 1

Deja un comentario

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