Ir para conteúdo
  • 0

Desmembrar SKUS de produtos que vendem mais de 1 unidade e apresentar qtd item por item vendido


Thiago Lima
Ir para solução Solucionado por Joao Raulino ,

Pergunta

  • Alunos

Boa tarde pessoal

Hoje eu ordeno os produtos mais vendidos com base nos SKUS vendidos, porém tem SKU que contém mais de 1 produto exemplo: 

1TENISNIKE/A008 - 4 vendidos
1TENISADIDAS/2TENISNIKE/A008 - 2 vendidos

Nesse caso preciso mostrar que são TENISPUMA/A008 - SÃO 8 VENDIDOS
                                                                  TENISADIDAS/A008 - SÃO 2 VENDIDOS 

Eu gostaria de desmembrar cada SKU, apresentar separadamente e mostrar item por item mais vendidos.

Alguém tem alguma sugestão?


No bi tenho duas colunas SKU e outra QTD DE ITENS, preciso multiplicar a qtd que tem no SKU x QTD ITENS do pedido do cliente.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Suave @Thiago Lima?

Para sair disso:

image.png.bf0894365ace61df74f28990e9c56757.png

E chegar nisso:

image.png.6e02b9e936e20d5b0f4a38a91966eace.png

Usa o seguinte código:

Citar

let
    Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WMgxx9fMM9vP0dtV3NDCwUNJRMlGK1YGJO7p4ujgG6xthKDJSio0FAA==", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [SKU = _t, #"QTD DE ITEMS" = _t]),
    AddCODE = Table.AddColumn(Source, "CODE", each Text.AfterDelimiter([SKU], "/", {0, RelativePosition.FromEnd}), type text),
    ExtractedSKU = Table.TransformColumns(AddCODE, {{"SKU", each Text.BeforeDelimiter(_, "/", {0, RelativePosition.FromEnd}), type text}}),
    SplitSKU = Table.SplitColumn(ExtractedSKU, "SKU", Splitter.SplitTextByDelimiter("/", QuoteStyle.Csv), {"SKU.1", "SKU.2"}),
    UnpivtedColumns = Table.UnpivotOtherColumns(SplitSKU, {"QTD DE ITEMS", "CODE"}, "Attribute", "Value"),
    SplitValue = Table.SplitColumn(UnpivtedColumns, "Value", Splitter.SplitTextByPositions({0, 1}, false), {"QTD DE SKU", "SKU"}),
    AddQTDTOTAL = Table.AddColumn(SplitValue, "QTD TOTAL", each Number.FromText([QTD DE ITEMS]) * Number.FromText([QTD DE SKU]), type number),
    RemovedColumns = Table.SelectColumns(AddQTDTOTAL,{"CODE", "SKU", "QTD TOTAL"}),
    GroupedRows = Table.Group(RemovedColumns, {"CODE", "SKU"}, {{"QTD", each List.Sum([QTD TOTAL]), type number}})
in
    GroupedRows

Atenção que aqui ele considera que você tem no máximo 2 itens por SKU, e tiver mais itens do que isso você vai ter que fazer algumas mudanças a partir do passo "SplitSKU" para adicionar mais colunas. Mas a logica vai ser sempre a mesma.

Se essa resposta te ajudou, não se esqueça de marcar como melhor solução 😉

Abs!

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...