Saldo acumulado de oferta y demanda

Un usuario Pregunto ✅

yamacha

Hola

Tengo una tabla como la siguiente

SKU Mes Suministro Demanda
A 202108 10 8
A 202109 10 9
….

Y necesito convertirlo en

SKU Atributo 202108 202109
A Demanda 8 9
A Suministro 10 10
A Balance acumulativo 2 3
A BalanceDay Saldo acumulativo * promedio de demanda de 2 meses * 30

He intentado consultar con univot pero me he quedado atascado en la ** bleep **. Parte del saldo.

Gracias por adelantado.

Hola @yamacha

Intente el siguiente paso en Power Query:

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUTIyMDI0sAAyDA2AhIVSrA6SuCVM3FIpNhYA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [SKU = _t, Month = _t, Supply = _t, Demand = _t]),
    #"Removed Columns" = Table.RemoveColumns(Source,{"SKU"}),
    #"Demoted Headers" = Table.DemoteHeaders(#"Removed Columns"),
    #"Appended Query" = Table.Combine({#"Demoted Headers", #"Table (2)"}),
    #"Transposed Table" = Table.Transpose(#"Appended Query"),
    #"Promoted Headers" = Table.PromoteHeaders(#"Transposed Table", [PromoteAllScalars=true]),
    #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"Month", type text}, {"202108", Int64.Type}, {"202109", Int64.Type}, {"SKU", type text}}),
    #"Reordered Columns" = Table.ReorderColumns(#"Changed Type",{"SKU", "Month", "202108", "202109"})
in
    #"Reordered Columns"
let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WclTSUTIyMDI0sAAyDA2AhIVSrA6SuCVM3FIpNhYA", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [SKU = _t, Month = _t, Supply = _t, Demand = _t]),
    #"Removed Columns" = Table.RemoveColumns(Source,{"Month", "Supply", "Demand"}),
    #"Demoted Headers" = Table.DemoteHeaders(#"Removed Columns"),
    #"Changed Type" = Table.TransformColumnTypes(#"Demoted Headers",{{"Column1", type text}}),
    #"Transposed Table" = Table.Transpose(#"Changed Type")
in
    #"Transposed Table"

Aquí está el resultado:

vxulinmstf_0-1630914167149.png

La demostración está adjunta, inténtelo.

Si aún tiene alguna pregunta, no dude en hacérmelo saber.

Atentamente,

Enlace

¿Es esa la respuesta que estás buscando? Si esta publicación ayuda, entonces por favor considere Acéptalo como la solución. ¡En verdad lo aprecio!

yamacha

En respuesta a v-xulin-mstf

Gracias Xulin por el esfuerzo, pero la parte más difícil aparentemente no se ha tocado …

Tenga en cuenta que hay 4 filas, las primeras 2 se pueden realizar fácilmente con univot, la más desafiante es la tercera: el equilibrio acumulativo entre la demanda y la oferta (consulte la tabla en mi publicación)

1. Demanda

2. Oferta

3. Saldo acumulado = suma renovable del saldo entre la oferta y la demanda de cada mes

4. BalanceDay = Saldo acumulado / demanda promedio de 2 meses * 30

Deja un comentario

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