Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Buenas,
Necesito hacer una resta acumulada de un importe pero no tengo claro como hacerlo. Simplificando el caso tenemos:
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:
Muchas gracias de antemano.
Un saludo.
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))
@elenarelinque please translate your post into English for the Qlik Community, thanks!!
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))
Buenas,
Es justo lo que necesitaba, muchísimas gracias.
Un saludo.