Skip to main content
Announcements
Have questions about Qlik Connect? Join us live on April 10th, at 11 AM ET: SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
quinsan12
Contributor III
Contributor III

Vendas por Mês

Preciso criar uma classificação nas vendas dos produtos com a descrição abaixo:

Dentro do período selecionado, se o produto tem 6 meses ou menos de vendas, ele é Novidade.

Se ele tem 7 meses ou mais ele deixa de ser Novidade.

Aplicando o Filtro Set/2017 à Mar/2018.

  

ProdutoData1Data2Data3Data4Data5Data6Data7Classificação
Leite09/201710/201711/201712/2017Novidade
Carne09/201710/201711/201712/201701/201802/2018Novidade
Sabão09/201710/201711/201712/201701/201802/201803/2018Normal
Labels (2)
1 Solution

Accepted Solutions
Thiago_Justen_

Sergio,

Considerando a tabela que você anexou na questão, primeiro eu faria um CrossTable de Produto e Datas para ter uma tabela apenas com Nome do Produto e Data. Assim:

Temp:

CrossTable(Data_Antigo,Data)

LOAD

    Produto,

    Data1,

    Data2,

    Data3,

    Data4,

    Data5,

    Data6,

    Data7

FROM [lib://Desktop/teste.xlsx](ooxml, embedded labels, table is Planilha1);

Drop Field Data_Antigo;

Depois, verifico e conto os meses em que houve vendas do determinado produto.

Final:

Load

Produto,

    Conta_Mes_Venda,

    If(Conta_Mes_Venda<=6,'Novidade','Normal') as Classificacao;

Load

Produto,

Sum(If(Produto=Previous(Produto) and Month(Data)<>Previous(Month(Data)),1,0))+1 as Conta_Mes_Venda

Resident Temp Group By Produto Order By Produto,Data Asc;

Drop Table Temp;

Resultado:

Capturar.PNG

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago

View solution in original post

3 Replies
marco_almeida
Creator II
Creator II

Fala Sérgio, blz?

Você pode, e seria melhor, fazer essa validação no script.

Pode ser algo desse tipo:

CLASSIFICACAO:

LOAD

    *

    , IF( primeiraVenda >= AddMonths(Today(), -6), 'Novidade', 'Normal' ) as classificacao

;

LOAD

    Produto

    , Min(data) as primeiraVenda

Resident Vendas

Group By

    Produto

;

Grupo Telegram Qlik Brasil: https://t.me/joinchat/AeRmnUmcxQ02L00g3x-HtQ
Thiago_Justen_

Sergio,

Considerando a tabela que você anexou na questão, primeiro eu faria um CrossTable de Produto e Datas para ter uma tabela apenas com Nome do Produto e Data. Assim:

Temp:

CrossTable(Data_Antigo,Data)

LOAD

    Produto,

    Data1,

    Data2,

    Data3,

    Data4,

    Data5,

    Data6,

    Data7

FROM [lib://Desktop/teste.xlsx](ooxml, embedded labels, table is Planilha1);

Drop Field Data_Antigo;

Depois, verifico e conto os meses em que houve vendas do determinado produto.

Final:

Load

Produto,

    Conta_Mes_Venda,

    If(Conta_Mes_Venda<=6,'Novidade','Normal') as Classificacao;

Load

Produto,

Sum(If(Produto=Previous(Produto) and Month(Data)<>Previous(Month(Data)),1,0))+1 as Conta_Mes_Venda

Resident Temp Group By Produto Order By Produto,Data Asc;

Drop Table Temp;

Resultado:

Capturar.PNG

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
quinsan12
Contributor III
Contributor III
Author

Obrigado Thiago, com os teste que realizei foi a melhor forma de classificar as Vendas.