Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
elenarelinque
Creator
Creator

Suma acumulada o acumulativa

Buenas,

Necesito hacer una resta acumulada de un importe pero no tengo claro como hacerlo. Simplificando el caso tenemos:

elenarelinque_3-1670423877346.png

Tengo una serie de pedidos, cada uno de ellos contiene artículos. Necesito saber si tengo stock suficiente para servirlos. La cuestión es que el dato de stock lo tengo por articulo, es decir, en las 4 líneas del articulo 'yyy' tengo 15 unidades pero no es real, porque cada uno de esos pedidos va a consumir stock y , en este caso , para el 5º pedido ya no tendría stock suficiente.

Necesito hacer una suma acumulada de cada articulo como en la columna 'Cant. Pedida acumulada' y restar en cada linea al stock para obtener el disponible. Actualmente consigo sumar el total de ese articulo con esta expresión pero no lo hace acumulado: =Sum(TOTAL <ARTICULO_DIMA> CANTIDAD_PEDIDA)

También me valdría el restar a la cantidad de stock cada cantidad de pedido que se vaya dando.

Esta es mi tabla real:

elenarelinque_1-1670423066142.png

Muchas gracias de antemano.

Un saludo.

 

 

 

1 Solution

Accepted Solutions
joseph_morales
Creator II
Creator II

Hola @elenarelinque 

Para el ejemplo planteado, podrias realizar una acumulación por articulos y productos para obtener en la columna Cantidad acumulada, la cantidad acumulada hasta ese momento de ese articulo con la siguiente expresión:

 

sum(aggr(

RangeSum(Above(Sum( [Cantidad Pedida]), 0, RowNo(TOTAL)))
,
Articulos,Pedidos))

 

 

Donde con RangeSum(above .... permite acumular el monto de la columna Cantidad Pedida, desde la primera fila hasta la ultima, pero con Sum(aggr(.. solo acumularas por cada articulo en cada pedido.

Teniendo esto puedes aplicar restarle este valor al stock quedando de la siguiente manera:

 

Sum(Stock)

-

sum(aggr(
RangeSum(Above(Sum( [Cantidad Pedida]), 0, RowNo(TOTAL)))
,
Articulos,Pedidos))

 

Capture.PNG

Best Regards,
Joseph Morales

View solution in original post

3 Replies
David_Friend
Support
Support

@elenarelinque please translate your post into English for the Qlik Community, thanks!!

joseph_morales
Creator II
Creator II

Hola @elenarelinque 

Para el ejemplo planteado, podrias realizar una acumulación por articulos y productos para obtener en la columna Cantidad acumulada, la cantidad acumulada hasta ese momento de ese articulo con la siguiente expresión:

 

sum(aggr(

RangeSum(Above(Sum( [Cantidad Pedida]), 0, RowNo(TOTAL)))
,
Articulos,Pedidos))

 

 

Donde con RangeSum(above .... permite acumular el monto de la columna Cantidad Pedida, desde la primera fila hasta la ultima, pero con Sum(aggr(.. solo acumularas por cada articulo en cada pedido.

Teniendo esto puedes aplicar restarle este valor al stock quedando de la siguiente manera:

 

Sum(Stock)

-

sum(aggr(
RangeSum(Above(Sum( [Cantidad Pedida]), 0, RowNo(TOTAL)))
,
Articulos,Pedidos))

 

Capture.PNG

Best Regards,
Joseph Morales
elenarelinque
Creator
Creator
Author

Buenas,

Es justo lo que necesitaba, muchísimas gracias.

Un saludo.