Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
victorfermi
New Contributor III

Calculando Status.

Pessoal boa tarde.

Estou com uma dificuldade muito grande em calcular o Status dos meus clientes.

Onde eu tenho, Clientes novos , Ativos , Reativos e Inativos.

Ao entrar na Aplicação eu tenho 1 variável onde digo qual mês vou analisar.

Para fazer o calculo do status eu uso dois campos data_ultima_compra e data_primeira_compra,

If data_primeira_compra =MÊS ATUAL and data_ultima_compra isnull status = Novo

If data_ultima_compra  e a data_primeira_compra = MÊS ATUAL  status = Ativo

If data_ultima_compra  > 180 dias status = Reativo

If data_ultima_compra  < 180 dias status = Inativo

Eu consegui fazer, colocando um botão na primeira Aba do projeto que quando clicado ele recarrega de acordo com o Mês digitado.

Porem minha versão web não tem suporte para isso, alguém tem ideia de como posso resolver?

Agradeço pelo apoio.

Tags (1)
1 Solution

Accepted Solutions
victorfermi
New Contributor III

Re: Calculando Status.

Ola pessoal boas, continuo trabalhando no problema postado, e achei uma solução bem mais facil para o status novo e ativo.

Para novo:

='Novo: ' &count({$<mes_pricompdf= {'$(vMesAnalise)'}, ano_pricompdf= {'$(vAnoAnalise)'} >} distinct %CHAVE_CLIENTEdf)

Ativo:='Ativo :' & count({$<dMESdf= {'$(vMesAnalise)'}, dANOdf= {'$(vAnoAnalise)'},  vTOTAL_DF={'>0'},%CHAVE_EMPRESAdf=,%CHAVE_FORNECEDORdf=, %CHAVE_PRODUTOdf=, cGRUPOdf=, Classedf=, nCANAL_VENDASdf=, nCATEGORIAdf=, nNATUREZAdf=, nSUBCATEGORIAdf=, nUFdf=, %CHAVE_CLIENTEdf=, statusdf= >} distinct %CHAVE_CLIENTEdf)

Agora estou trabalhando no inativo e reativo no qual ainda estou tendo um pouco de dificuldade, meu inativo são todos que não compra a 180 dias, e o reativo e aquele que não comprava , mas comprou no Mês de analise.

Muito obrigado.

7 Replies
dubucha2012
Contributor

Re: Calculando Status.

Via aplicação web realmente ele nao recarrega.

Poderia publicar um modelo para te ajudarmos ?

victorfermi
New Contributor III

Re: Calculando Status.

Eduardo Agradeço mas não consigo postar um Exemplo. Infelizmente só tenho acesso ao app via servidor.

Mas fiz dessa maneira:

Criei uma variável Vmesanalise onde o usuario digitara o mes de deseja analisar ex: nov, jav ; fev.

E para calcular o status fiz dessa maneira:

Load Distinct   %CHAVE_CLIENTE, 

                          dMES,

                          dANO,

                        dt_primcomp,

                         dt_ultcomp,

    if(Year(dt_primcomp)=dANO and month(dt_primcomp)= dMES,'Novo',

//      if(Year(dt_ultcomp)=dANO and month(dt_ultcomp)= dMES ,'Ativo',

      if( if(date('$(nr_mes_ref)' & $(vAnoAnalise),'DD/MM/YYYY') < if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp),if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp) - date('$(nr_mes_ref)' & $(vAnoAnalise),'DD/MM/YYYY'),date('$(nr_mes_ref)' & $(vAnoAnalise),'DD/MM/YYYY') - if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp)) < $(tempo_reativo),'Ativo',

      //  if( if( $(vDTriniciomes) < if(isnull(dt_ultcomp) = -1,dt_primcomp, dt_ultcomp),if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp) - $(vDTriniciomes), $(vDTriniciomes) - if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp))  > $(tempo_inativo), 'Inativo', 'Reativo')

         if( if(date('$(nr_mes_ref)' & $(vAnoAnalise),'DD/MM/YYYY') < if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp),if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp) - date('$(nr_mes_ref)' & $(vAnoAnalise),'DD/MM/YYYY'),date('$(nr_mes_ref)' & $(vAnoAnalise),'DD/MM/YYYY') - if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp))  > $(tempo_reativo) and if($(vDTriniciomes) < if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp),if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp) - date('$(nr_mes_ref)' & $(vAnoAnalise),'DD/MM/YYYY'),date('$(nr_mes_ref)' & $(vAnoAnalise),'DD/MM/YYYY') - if(isnull(dt_ultcomp) = -1, dt_primcomp, dt_ultcomp)) < $(tempo_inativo), 'Reativo', 'Inativo')

       )) as status

Resident status_cliente_TMP;

Espero que consiga me ajudar.

Obrigado

Not applicable

Re: Calculando Status.

Victor, não é possivel criar uma trigger para recarregar o script, mas uma opção é criar uma task no QMC para carregar de 1 em 1 minuto e no .qvw configurar o "Modo de atualização quando o Documento é Atualizado no Servidor" para:

"O Servidor executa a atualização automaticamente sem a ação do Cliente" em Configurações do Documento > Sevidor.

Selecione também:

"Ativar Push do Servidor"

"Ativar atualização dinâmica dos dados"

Assim a atualização é feita sem que seja necessário atualizar a página.

Veja como:

config.PNG

Abs

victorfermi
New Contributor III

Re: Calculando Status.

Thiago bom dia!

Tudo bem?

Meu servidor já está configurado dessa maneira, o que preciso e que minha aplicação seja totalmente recalculada, quando o usuário mudar minha variável mês, na primeira aba do aplicativo.

OBrigado

victorfermi
New Contributor III

Re: Calculando Status.

Boas pessoal, ainda não consegui resolver essa pendencia pois e a unica coisa que está faltando no projeto.

Eu aceito ideia novas de como fazer o calculo, acredito eu , que estou fazendo algo desnecessário , acredito ser mais simples do que pensei. Muito obrigado.

victorfermi
New Contributor III

Re: Calculando Status.

Ola pessoal boas, continuo trabalhando no problema postado, e achei uma solução bem mais facil para o status novo e ativo.

Para novo:

='Novo: ' &count({$<mes_pricompdf= {'$(vMesAnalise)'}, ano_pricompdf= {'$(vAnoAnalise)'} >} distinct %CHAVE_CLIENTEdf)

Ativo:='Ativo :' & count({$<dMESdf= {'$(vMesAnalise)'}, dANOdf= {'$(vAnoAnalise)'},  vTOTAL_DF={'>0'},%CHAVE_EMPRESAdf=,%CHAVE_FORNECEDORdf=, %CHAVE_PRODUTOdf=, cGRUPOdf=, Classedf=, nCANAL_VENDASdf=, nCATEGORIAdf=, nNATUREZAdf=, nSUBCATEGORIAdf=, nUFdf=, %CHAVE_CLIENTEdf=, statusdf= >} distinct %CHAVE_CLIENTEdf)

Agora estou trabalhando no inativo e reativo no qual ainda estou tendo um pouco de dificuldade, meu inativo são todos que não compra a 180 dias, e o reativo e aquele que não comprava , mas comprou no Mês de analise.

Muito obrigado.

Employee
Employee

Re: Calculando Status.

Já achou uma solução? Se sim, marque uma das respostas como "Correta" nos ajudando a manter os tópicos organizados.

Como obter ajuda? Leia antes de postar