Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Guilherme_rocha
Contributor
Contributor

Classificação de Intervalos

Olá pessoal, tudo bom com vocês? Espero que estejam bem!

Sou novo no mundo de BI e Qlik sense, porém onde eu trabalho me colocaram para desenvolver o BI deles e estou com algumas dificuldades quanto à classificação de intervalos.

No caso comentado eu tenho pedidos que foram liberados e ainda não foram faturados, no script de transformação eu faço o campo Today() - DataLiberacao para saber a quantos dias o pedido está pendente de faturamento e agora preciso classificar isso entre Hoje, Ontem, Últimos 7 dias, De 8 a 15 dias, De 16 a 30 dias e Mais de 30 dias. Obviamento eu resolvi o problema com um If Else If inifinito, ficou desta forma:

set GetPeriodo =( IF( $1 = 0, 'Hoje',
IF( $1 = 1, 'Ontem',
IF( $1 > 1 and $1 <= 7, 'Últimos 7 dias',
IF( $1 >= 8 and $1 <= 15, 'Entre 8 e 15 dias',
IF( $1 >= 16 and $1 <= 30, 'Entre 16 e 30 dias', 'Mais de 30 dias'))))) );

Minha dúvida é se há alguma outra forma mais simples e performática de eu criar essa mesma classificação, visto que estamos falando de aprox uns 8 milhões de registros a passarem por essas validações.

 

Agradeço desde já a atenção!

4 Replies
adrianojb
Contributor II
Contributor II

Bom dia, 

Você está colocando esta regra dentro do script ou direto numa formula na camada de Dashboard? Pergunto porque se colocar dentro do script não sobrecarregará a camada de Dashboard.

Abs,

 

 

 

 

Guilherme_rocha
Contributor
Contributor
Author

Bom Dia Adriano,

 

Estou fazendo essa validação no script de transformação pois este campo será usando como uma dimensão para geração de um gráfico pizza. Para facilitar a leitura do script de transformação eu externalizei as validações em uma formula que eu passo o campo como parâmetro e ele faz as validações, desta forma meu script não fica tão poluído.

 

Agradeço desde já a atenção!

danilostochi
Creator II
Creator II

Boa tarde,

veja esse link

https://help.qlik.com/pt-BR/sense/June2020/Subsystems/Hub/Content/Sense_Hub/Scripting/ConditionalFun...

A função class deve ajudar.

+55(44) 9 9993-3605, WhatsApp
E-Mail or Skype - danilo16stochi@hotmail.com
Guilherme_rocha
Contributor
Contributor
Author

Boa Noite @danilostochi , 

Cheguei a dar uma olhada nessa função, porém ela já retorna classificações de intervalos constantes (mediante o parâmetro) e no meu caso eu também preciso nomear os meus intervalos de uma forma diferente do que a função oferece.

Mesmo assim agradeço a sugestão!