Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Boa noite a todos.
Estou com a seguinte dificuldade em montar um script no Qlik Sense. Tenho 3 planilhas com o resultado acumulados mês-a-mês de produtos vendidos e gostaria de "desacumular" esses resultados, mostrando, assim, apenas o vendido daquele mês.
Ex:
[Resultado vendas janeiro]
Mes|Produto|Quantidade Vendida acumulada
Janeiro|Produto A|20
Janeiro|Produto B|30
Janeiro|Produto C|40
OBS: vendemos 20un de A, 30 de B e 40 de C em Janeiro.
[Resultado vendas fevereiro]
Mes|Produto|Quantidade Vendida acumulada
Fevereiro|Produto A|30
Fevereiro|Produto B|45
Fevereiro|Produto C|60
OBS: vendemos 10un de A, 15 de B e 20 de C em Fevereiro.
[Resultado vendas marco]
Mes|Produto|Quantidade Vendida acumulada
Março|Produto A|50
Março|Produto B|75
Março|Produto C|100
OBS: vendemos 20un de A, 30 de B e 40 de C em Março.
Alguém sabe me dizer como posso fazer isso?
Meu intuito é mostrar, através de um gráfico de linhas, a variação de vendas mes-a-mes por produto.
Muito obrigado pela atenção.
Amigo, segue;
temp_Tab_Vendas:
LOAD
Produto,
Date#(Mês,'MMM') As 'Mês',
"Quantidade vendida acumulada"
FROM [lib://QVD_APOIO/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Jan]);
LOAD
Produto,
Date#(Mês,'MMM') As 'Mês',
"Quantidade vendida acumulada"
FROM [lib://QVD_APOIO/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Fev]);
LOAD
Produto,
Date#(Mês,'MMM') As 'Mês',
"Quantidade vendida acumulada"
FROM [lib://QVD_APOIO/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Mar]);
Tab_Vendas:
NoConcatenate Load
Produto,
Mês,
If(Produto=Previous(Produto),
"Quantidade vendida acumulada"-Peek("Quantidade vendida acumulada"),
"Quantidade vendida acumulada"
) As 'Valor Mês',
"Quantidade vendida acumulada"
Resident temp_Tab_Vendas
Order By Produto, Mês;
Drop Table temp_Tab_Vendas;
Resultado:
Leonardo
Se entendi bem a sua dúvida, basta manter o mesmo nome em todas as tabelas ou então utilize o comando Concatenate para juntar todas elas. Depois é só montar o gráfico de linhas com o mês e o produto como dimensões.
leonardo,
Voce tem como disponibilizar a planilha original para que eu possa tentar te ajudar? Voce usa o Qlikview ou Qlik Sense?
Boa noite a todos.
Obrigado pela atenção.
Márcio, o concatenate irá juntar todas as tabelas sem problema. Porém o que eu preciso é a quantidade em cada mês, não a quantidade acumulada mês a mês.
Mauro, uso o Qlik Sense. Coloquei o arquivo excel que eu estou utilizando para teste.
O que eu quero é que o Qlik calcule a venda no mês especifico, e não na soma acumulada deles.
No meu qlik sense está assim, porém não funciona, pois ele não reconhece o dado de uma outra tabela.
[Vendas Jan]:
LOAD [Produto],
[Mês],
[Quantidade vendida acumulada] as [Quantidade vendida janeiro]
FROM [lib://D/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Jan]);
[Vendas Fev]:
LOAD [Produto],
[Mês],
[Quantidade vendida acumulada]-[Quantidade vendida janeiro] as [Quantidade vendida fevereiro]
FROM [lib://D/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Fev]);
[Vendas Mar]:
LOAD [Produto],
[Mês],
[Quantidade vendida acumulada]-[Quantidade vendida jan]-[Quantidade vendida fevereiro] as [Quantidade vendida marco]
FROM [lib://D/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Mar]);
RENAME TABLE [Vendas Jan] TO [(Vendas Jan...)];
Espero que tenha sido mais claro.
Muito obrigado.
Amigo, segue;
temp_Tab_Vendas:
LOAD
Produto,
Date#(Mês,'MMM') As 'Mês',
"Quantidade vendida acumulada"
FROM [lib://QVD_APOIO/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Jan]);
LOAD
Produto,
Date#(Mês,'MMM') As 'Mês',
"Quantidade vendida acumulada"
FROM [lib://QVD_APOIO/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Fev]);
LOAD
Produto,
Date#(Mês,'MMM') As 'Mês',
"Quantidade vendida acumulada"
FROM [lib://QVD_APOIO/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Mar]);
Tab_Vendas:
NoConcatenate Load
Produto,
Mês,
If(Produto=Previous(Produto),
"Quantidade vendida acumulada"-Peek("Quantidade vendida acumulada"),
"Quantidade vendida acumulada"
) As 'Valor Mês',
"Quantidade vendida acumulada"
Resident temp_Tab_Vendas
Order By Produto, Mês;
Drop Table temp_Tab_Vendas;
Resultado:
Leonardo,
Consegui o mesmo resultado que mário conseguiu com o script abaixo:
Meses:
Mapping Load * inline [
Mês_Mapa,Numero
jan,01
fev,02
mar,03
abr,04
mai,05
jun,06
jul,07
ago,08
set,09
out,10
nov,11
dez,12
];
[Vendas_TMP]:
LOAD [Produto],
[Mês],
[Quantidade vendida acumulada] as [Quantidade Acumulada]
FROM [lib://teste/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Jan]);
Outer join(Vendas_TMP)
LOAD [Produto],
[Mês],
[Quantidade vendida acumulada] as [Quantidade Acumulada]
FROM [lib://teste/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Fev]);
outer join(Vendas_TMP)
LOAD [Produto],
[Mês],
[Quantidade vendida acumulada] as [Quantidade Acumulada]
FROM [lib://teste/exemplo_vendas_qlik.xlsx]
(ooxml, embedded labels, table is [Vendas Mar]);
Vendas_TMP2:
Load
[Produto],
[Mês],
date('01/'&ApplyMap('Meses',lower(Mês))&'/2017','DD/MM/YYYY') as Data_Ref,
[Quantidade Acumulada]
resident Vendas_TMP;
drop table Vendas_TMP;
vendas:
Load
[Produto],
[Mês],
if(Mês='Jan',[Quantidade Acumulada],[Quantidade Acumulada]-Previous([Quantidade Acumulada])) as [Quantidade Vendida]
resident Vendas_TMP2
order by Produto,Data_Ref;
drop table Vendas_TMP2;
Estou anexando o QVF de Exemplo.
Amigo, conseguiu?
Abraço.
Bom dia a todos.
Consegui sim, muito obrigado Mario e Mauro. Ambas as soluções funcionam . Pena que posso apenas marcar uma como correta =/
Obrigado e Ótiimo dia.
Que ótimo amigo;
Estamos aqui para somar forças.
Verdade, porém é possível marcar algumas respostas como Útil se quiser (no menu de "Ações" de cada balão);
Abraço e sucesso!