Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
guilherme_perei
Contributor III
Contributor III

Comparar Registros

Boa tarde pessoal,

preciso fazer a comparação de um campo, por exemplo, tenho um cliente X que foi cadastrado no plano A, mas

esse mesmo cliente alterou o seu plano para B, dessa forma cliente X no Plano A está cancelado/bloqueado, mas no plano B ele está ativo.

Preciso fazer a comparação do código desse cliente nos dois planos pra ver se existe nos dois ou não.

Image 122.jpg

Alguém pode me ajudar?

Labels (4)
1 Solution

Accepted Solutions
guilherme_perei
Contributor III
Contributor III
Author

Pessoal,

Consegui resolver utilizando o comando previous() no Script.

[Cliente]:

LOAD [Cod. Cliente],

     num([Inclusao Cliente]) as [Inclusao Cliente],

     Plano,

     previous([Bloqueio Cliente]) as [Bloqueio Cliente Anterior],

     num([Bloqueio Cliente]) as [Data do Bloqueio]

FROM $(dir)\Cliente.qvd (qvd);

View solution in original post

5 Replies
mauroponte
Creator II
Creator II

Guilherme,

Voce pode por exemplo criar uma Lista, tabela ou grafico com a dimensão Cliente e uma expressão que conte quantos planos cada cliente tem.

Por exemplo : count(Distinct Plano).

para os clientes mais de 1 plano serão os que se encaixarão na condição que voce deseja.

Veja o exemplo do QVW que estou anexando.

Espero ter ajudado.

guilherme_perei
Contributor III
Contributor III
Author

Olá mauro,

Sim, mas dessa forma eu estaria olhando somente a posição atual, sem contar o histórico, mesmo que eu selecione um período em que ele estava ativo somente no Plano A, o Qlik mostraria ele ativo nos dois. Mas preciso manter o histórico, no período que o cliente está somente no plano A, mostrar somente o plano A. No período que ele está no plano B, mostrar o plano B, e no período em que ele esteve em ambos, mostrar os dois.

mauroponte
Creator II
Creator II

Guilherme,

Isso é questão de voce trabalhar bem as datas.

Estou anexando novamente o QVW com uma alteração.

Criei uma lista Mês. Essa lista é Baseada no campo data_Plano.

Selecione o mes de jun, e veja que para esse mes aparecem somente os clientes 1 e 2 com plano B.

Selecione agora o Mês de jul. Repare que agora so aparece o cliente 3 com plano x

em seguida selecione agos e veja que so cliente 4 com plano Y aparece.

Agora selecione jan. Veja que clientes que já apareceram aparecem novamente com outro planos, no caso clientes 1 e 2 que em outro mes posterior a janeiro estavam com plano B em jan aparecem uma unica vez com plano A.

Mas ainda em jan repare o cliente 5. ele aparece 2 vezes uma com plano A outra com B, ja que ele ativou planos diferentes no mesmo mês.

Por fim selecione Jan e Jun ao mesmo tempo e veja o que ocorre com os clientes 1 e 2.

Espero que isso ajude.

TiagoCardoso
Creator II
Creator II

Boa tarde Guilherme, tudo bem?

Pelo que eu entendi, você gostaria de ver o status do cliente, como, por exemplo,

ativo ou inativo, independentemente de ele estar em 1 (um) ou mais planos, certo?

Fiz um exemplo em que na expressão (fica a seu critério mudar ela depois ou até inverter)....

A princípio aparecem apenas os clientes (Apenas os que têm plano ativo) e ao clicar sobre algum

ou alguns deles, abre um leque e mostra o histórico, no caso, os planos antigos e desativos.

Espero que lhe ajude ou dê uma base amigo,

Abraços,

Att,

Tiago Cardoso.

guilherme_perei
Contributor III
Contributor III
Author

Pessoal,

Consegui resolver utilizando o comando previous() no Script.

[Cliente]:

LOAD [Cod. Cliente],

     num([Inclusao Cliente]) as [Inclusao Cliente],

     Plano,

     previous([Bloqueio Cliente]) as [Bloqueio Cliente Anterior],

     num([Bloqueio Cliente]) as [Data do Bloqueio]

FROM $(dir)\Cliente.qvd (qvd);