Base (fato) com cabeçalho de datas entre os dados
Enviado: 06 Jun 2020 às 16:06
por DouglasHerrera
Olá, Senhores (as)
O sistema com que eu trabalho, permite extrair apenas uma base por semana, sendo que o cabeçalho desta base, possui colunas que informam a data de planejado e realizado.
Não encontrei nenhuma maneira que atende minha necessidade, pois se transformo as colunas em linhas, acabo comprometendo as informações de data da semana posterior.
Meu objetivo é manter apenas as colunas: Ano, Data, Origem, Destino, Produto, Transportadora, Volume Planejado e Volume Realizado.
Por favor, alguém poderia me ajudar na resolução deste problema?
Na imagem, maiores detalhes.
Coloquei a base de duas semanas juntas/agrupadas, pois é assim que elas são trabalhadas no Power Query, uma embaixo da outra.

Base (fato) com cabeçalho de datas entre os dados
Enviado: 09 Jun 2020 às 07:58
por DouglasHerrera
O ano referido, é 2020.
Quando vou extrair o relatório do sistema, preciso informar a semana e o ano.
Existem datas de 2019, pois na empresa em que eu trabalho, as semanas são contadas de segunda-feira a domingo, logo a 1, iniciou-se dia 30/12/2019 e terminou dia 05/01/2020.
Lembrando que meu problema hoje, é devido a uma base entrar embaixo da outra no Power Query.
Existe opção de eu tratar uma semana, e ela servir de exemplo para as demais antes da junção?
Pois dessa forma, bastaria apenas eu transformar as colunas em linhas.
Segue anexo, com relatório de apenas uma semana.
Base (fato) com cabeçalho de datas entre os dados
Enviado: 11 Jun 2020 às 12:17
por DouglasHerrera
Nesse caso, eu posso remover a coluna de data e manter apenas a semana, pois já defini as datas corretas na dCalendario.
Mas de qualquer forma, terei que tratar cada base individualmente antes de aplicar a fórmula Table.Combine, certo?
Gostaria de saber se não existe uma forma que eu consiga tratar a base de uma semana, e ela servir de exemplo para as demais. Assim, eu conseguiria apenas atualizar automaticamente, pois as bases das semanas posteriores assumiriam a formatação correta, antes de se juntas com as das semanas anteriores.
Já ouvi falar que existe a opção de Transformar arquivos de exemplo (Transform Sample File), porém não sei como aplico isso.
Poderia me ajudar?
Base (fato) com cabeçalho de datas entre os dados
Enviado: 12 Jun 2020 às 13:39
por DouglasHerrera
Boa tarde!
A orientação do vídeo não deu certo, segue os arquivos separados.
No resultado final, preciso ficar apenas com as colunas Data, Semana, Ano, Origem, Destino, Transportadora, Volume Planejado e Volume Realizado.
Base (fato) com cabeçalho de datas entre os dados
Enviado: 12 Jun 2020 às 18:52
por DouglasHerrera
Olá,
Ainda não entendi, alterando a fonte, ficaria conforme abaixo. O que eu preciso fazer agora?
(tabela as table) as table =>
let
Fonte = tabela,
//Fonte = Excel.Workbook(File.Contents("C:\Users\dsanto12\Documents\BD Performance Inbound_W01.XLSX"))[Data]{0},
PromoveCabecalho = Table.PromoteHeaders(Fonte, [PromoteAllScalars=true]),
ColunasEmLinhas = Table.UnpivotOtherColumns(PromoveCabecalho, {"Semana", "Ano", "Formulário", "Demanda", "Origem", "Descrição ZT Partida", "Pátio Origem", "Descrição Pátio Orig", "Centro Origem", "Destino", "Descrição ZT Chegada", "UF Destino", "Pátio Destino", "Descrição Pátio Dest", "Centro Destino", "Pedido MOSAIC", "Item", "Cliente", "Nome Cliente", "Documento de vendas", "Item_1", "Produto", "Nome Produto", "Transportadora", "Nome Transportadora", "Frete", "Armazém", "Descrição Armazém", "Planejado", "UM Planejado", "Realizado", "UM Realizado", "Saldo", "UM Saldo", "Obs da demanda", "Pedido do Fornecedor", "Navio", "N. DI", "Porto", "Pedido Retorno Simbólico", "Item Retorno Simbólico", "Centro Toll Destino", "Documento de compras", "Item_2", "Pedido do Fornecedor_3", "Ped. Troca NF", "Item Ped. Troca NF"}, "Atributo", "Valor"),
DividirData_PLANREAL = Table.SplitColumn(ColunasEmLinhas, "Atributo", Splitter.SplitTextByDelimiter("-", QuoteStyle.Csv), {"Data_Texto", "PLAN_REAL"}),
ExtraiData = Table.TransformColumns(DividirData_PLANREAL, {{"Data_Texto", each Text.AfterDelimiter(_, " ", {0, RelativePosition.FromEnd}), type text}}),
TipoAlterado = Table.TransformColumnTypes(ExtraiData,{{"Semana", Int64.Type}, {"Ano", Int64.Type}, {"Formulário", type text}, {"Demanda", Int64.Type}, {"Origem", type text}, {"Descrição ZT Partida", type text}, {"Pátio Origem", type text}, {"Descrição Pátio Orig", type text}, {"Centro Origem", Int64.Type}, {"Destino", type text}, {"Descrição ZT Chegada", type text}, {"UF Destino", type text}, {"Pátio Destino", type text}, {"Descrição Pátio Dest", type text}, {"Centro Destino", Int64.Type}, {"Pedido MOSAIC", Int64.Type}, {"Item", Int64.Type}, {"Cliente", Int64.Type}, {"Nome Cliente", type text}, {"Documento de vendas", Int64.Type}, {"Item_1", Int64.Type}, {"Produto", Int64.Type}, {"Nome Produto", type text}, {"Transportadora", Int64.Type}, {"Nome Transportadora", type text}, {"Frete", type number}, {"Armazém", type text}, {"Descrição Armazém", type text}, {"Planejado", Int64.Type}, {"UM Planejado", type text}, {"Realizado", type number}, {"UM Realizado", type text}, {"Saldo", type number}, {"UM Saldo", type text}, {"Obs da demanda", type text}, {"Pedido do Fornecedor", type text}, {"Navio", type text}, {"N. DI", type text}, {"Porto", type text}, {"Pedido Retorno Simbólico", type text}, {"Item Retorno Simbólico", Int64.Type}, {"Centro Toll Destino", type text}, {"Documento de compras", type text}, {"Item_2", Int64.Type}, {"Pedido do Fornecedor_3", type text}, {"Ped. Troca NF", type text}, {"Item Ped. Troca NF", Int64.Type}, {"Data_Texto", type text}, {"PLAN_REAL", type text}, {"Valor", type number}}),
DataCorretaComAno = Table.AddColumn(TipoAlterado, "Datas", each [Data_Texto] & "/" & (if [Semana] = 1 and Number.From(Text.End([Data_Texto],2))=12 then Text.From([Ano]-1) else Text.From([Ano]))),
RemoveColDataTexto = Table.RemoveColumns(DataCorretaComAno, "Data_Texto"),
#"Tipo Alterado" = Table.TransformColumnTypes(RemoveColDataTexto,{{"Datas", type date}})
in
#"Tipo Alterado"