Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Mostrar última data de compra

Prezados, preciso da ajuda de vocês com o seguinte ponto:

Preciso mostrar em uma tabela dinâmica a última data de compra de cada cliente, excluindo o mês e ano correntes (selecionados)

Obrigado

1 Solution

Accepted Solutions
maiconmello
Creator III
Creator III

pedido:

LOAD * INLINE [

    cliente, pedido, dtpedido,vlped

    maicon, 1, 01/02/2016,100

    maicon, 2, 05/02/2016,200

    maria, 3, 05/02/2016,556

    joao, 4, 10/02/2016,33

    maria, 5, 09/02/2016,254

    francisco, 06, 29/02/2016,398

    pedro, 7, 06/02/2016,3254

    pedro, 8, 01/02/2016,325

    francisco, 9, 15/02/2016,25556

];

Left join (pedido) 

Load cliente,max(dtpedido) as dt_MaiorPedido Resident pedido group by cliente; //aqui pegamos a maior data de cada cliente. com left join levo a maior data para dentro de pedido.

na expressão faço assim :

sum({<dtpedido=>}vlped)    //assim ele desconsidera a data de seleção

View solution in original post

7 Replies
maiconmello
Creator III
Creator III

Segue anexo , acho que isso que precisa !

Anonymous
Not applicable
Author

Boa noite Maicon, ótimo exemplo, e aproveitando a carona, e para colocar a maior data(mesma data) para todas as linhas?

Obrigado

maiconmello
Creator III
Creator III

Olá Héber, aí nesse caso max(data) como está no script, mas aí teria que fazer um group by pela nota.

Aí VC terá a mesma data em todas as linhas...porém a maior data.

Exemplo

NF 100. DT 01/09/2015 maior data 01/01/2016

NF 234 DT 01/01/2016 maior data 01/01/2016

Se eu entendi seria isso mesmo?

Anonymous
Not applicable
Author

Isso mesmo. 

Vlw. 

Not applicable
Author

Boa noite Maicon, obrigado pela resposta. Sou novo na utilização do qlikview e estou usando o arquivo demo.

Poderia me colar o script por aqui? Naõ estou conseguindo abrir o qvw.

Obrigado

maiconmello
Creator III
Creator III

pedido:

LOAD * INLINE [

    cliente, pedido, dtpedido,vlped

    maicon, 1, 01/02/2016,100

    maicon, 2, 05/02/2016,200

    maria, 3, 05/02/2016,556

    joao, 4, 10/02/2016,33

    maria, 5, 09/02/2016,254

    francisco, 06, 29/02/2016,398

    pedro, 7, 06/02/2016,3254

    pedro, 8, 01/02/2016,325

    francisco, 9, 15/02/2016,25556

];

Left join (pedido) 

Load cliente,max(dtpedido) as dt_MaiorPedido Resident pedido group by cliente; //aqui pegamos a maior data de cada cliente. com left join levo a maior data para dentro de pedido.

na expressão faço assim :

sum({<dtpedido=>}vlped)    //assim ele desconsidera a data de seleção

Not applicable
Author

Bom dia Maicon, obrigado pelo retorno.

O script funcionou mas não exatamente para o que eu preciso.

Deixe tentar explicar melhor para ver se consegues me ajudar....

O que preciso é saber se os clientes que compraram num mês selecionado, são novas compras ou não. Para isso tenho dois critérios:

1) O cliente nunca efetuou uma compra;

2) A última compra do cliente, antes da compra do mês selecionado foi a mais de 1 ano (aqui gostaria de deixar "configurável", alternando para 6 meses, por exemplo.

Acho que agora eu explicando melhor o que eu quero, fica mais fácil de me ajudar (rsrsrsrsrs).

Abs.,