Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
quinsan12
New Contributor

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
1 Solution

Accepted Solutions
thiago_justen
Valued Contributor III

Re: Vendas por Mês

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
WhatsApp: 24 98152-1675
Skype: justen.thiago
3 Replies
otavio_marco
New Contributor III

Re: Vendas por Mês

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

;

thiago_justen
Valued Contributor III

Re: Vendas por Mês

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
WhatsApp: 24 98152-1675
Skype: justen.thiago
quinsan12
New Contributor

Re: Vendas por Mês

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