Qlik Community

Ask a Question

Brasil

Announcements
QlikWorld Online 2021, May 10-12: Our Free, Virtual, Global Event REGISTER TODAY
cancel
Showing results for 
Search instead for 
Did you mean: 
oliveira1903
Contributor III
Contributor III

Criar seleções para os últimos 30, 60, 90 e 120 dias

Caros colegas,

Precisava criar no script essas condições de últimos dias.

Fazendo um gráfico tabela consigo achar essas informações usando  = Count({<campo_data = {">$(=Date(Today()-30))"}>}[Campo_que_será_contado]) mas queria fazer isso no script para  o usuário poder depois selecionar (últimos 30 dias / últimos 60 dias /últimos 90 dias/ últimos 120 dias).

Tentei usar:

AddMonths(today(), - 1)

AddMonths(today(), - 2)

AddMonths(today(), - 3)

AddMonths(today(), - 4)

Mas dessa maneira ele não puxa os últimos dias que preciso.

Vcs teriam alguma sugestão?

1 Solution

Accepted Solutions
Clever_Anjos
Employee
Employee

8 Replies
oliveira1903
Contributor III
Contributor III
Author

Tentei tb o seguinte:

     If((Today() - Date(campo_data) +1 ) = 30, '30 dias',

     If((Today() - Date(campo_data) +1 ) = 60, '60 dias',

     If((Today() - Date(campo_data) +1 ) = 90, '90 dias',

     If((Today() - Date(campo_data) +1 ) = 120, '120 dias')))) as nomedesejado

Não era pra ter funcionado esse último?

Desse jeito não aparece nada qnd eu coloco a lista "nomedesejado"

=/

Clever_Anjos
Employee
Employee

Veja se atende !

Clever_Anjos
Employee
Employee

Fiz assim

LOAD

  Data,

  Valor,

  If((Today() - Data) <= 30, dual('30 dias',1),

    If((Today() - Data ) <= 60, Dual('60 dias',2),

    If((Today() - Data) <= 90, Dual('90 dias',3),

    If((Today() - Data ) <= 120, Dual('120 dias',4))))) as nomedesejado;

LOAD

  Date(Today() -RecNo()) as Data,

  Rand()*1000 as Valor

AutoGenerate 365;

oliveira1903
Contributor III
Contributor III
Author

Clever, obrigada pela resposta!

A opção últimos 30 dias funcionou perfeito! Mas qnd seleciono a opção 60, 90 ou 120 dias não aparece exatamente o que eu gostaria.

No qvw que vc enviou qnd seleciono os 30 dias aparece do dia 17/05 até o dia 18/04 mas qnd seleciono 60d aparece 17/04 até 19/03 (precisava que ele mostrasse do dia 18/05 até 18/03 - os últimos 60 dias).

Será que dá para fazer pelo qlik isso?

Mais uma vez agradeço sua atenção.

nicolett_yuri

Com IF não será possível, pois a linha de baixo é sempre a exclusão da de cima.

Uma solução simples seria criar as tabelas separadas (uma para cada regra) e depois concatena-las

nicolett_yuri

para a hora é a melhor solução que pode sair, mas deve ter algo mais inteligente

Clever_Anjos
Employee
Employee

oliveira1903
Contributor III
Contributor III
Author

Obrigada pelas respostas. As duas soluções atenderam.

Demorei a responder pois dei uma pausa no painel mas as soluções me salvaram aqui. =]