Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Expressão de comparação anual por dia

Boa tarde Senhores,

Sou novo aqui na comunidade e estou com dificuldades em criar uma expressão que faça o seguinte:

Tenho um gráfico de barras que faz a comparação de quantidade por ano, porém, quando seleciono o ano 2018 no filtro e escolho o mês de janeiro, ele exibe a quantidade total de reclamações até 30/01/2018, até ai ok, porém, o gráfico ao lado que representa 2017 exibe até 31/01/2017, preciso criar uma expressão que ao selecionar o ano de 2018 e o mês ele verifique quantos dias tem disponível no ano atual e faça o mesmo para o ano anterior.

Utilizo apenas uma tabela do banco, que contém a coluna ano_ocorrido, mes_ocorrido e dia_ocorrido.

para 2018 uso a expressão abaixo:

Count({$<ano_ocorrido={'$(=Max(ano_ocorrido))'}>} sac_tipoconsumidor)

para 2017:

Count({$<ano_ocorrido={'$(=Max(ano_ocorrido)-1)'}>} sac_tipoconsumidor)

preciso alterar a expressão de 2017 para que ele mostre apenas até os dias disponíveis que tem em 2018.


Em anexo os prints, para melhor entendimento.


Se puderem me auxiliar, agradeço.

1 Solution

Accepted Solutions
Thiago_Justen_

Então entendi errado mesmo hehe.

Veja se é isso:

2018 - temos dados de 01/01 a 30/01, logo vou pegar o valor no mesmo período para o ano anterior 01/01/17 a 30/01/17. Seria isso?

Se sim, veja se te ajuda:

Count({$<ano_ocorrido={"=$(=Max(ano_ocorrido)-1)"},mes_ocorrido={"=$(=Max(mes_ocorrido))"},dia_ocorrido={">=$(=Min(dia_ocorrido))<=$(=Max(dia_ocorrido))"}>} sac_tipoconsumidor)

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago

View solution in original post

9 Replies
Thiago_Justen_

Experimente o seguinte:

para 2018 uso a expressão abaixo:

Count({$<ano_ocorrido={">=$(=Max(ano_ocorrido))"}>} sac_tipoconsumidor)

para 2017:

Count({$<ano_ocorrido={">=$(=Max(ano_ocorrido)-1)<$(=Max(ano_ocorrido))"}>} sac_tipoconsumidor)

Abs e Sucesso!

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
Anonymous
Not applicable
Author

Obrigado Thiago, porém, não resolveu.

Abs

Thiago_Justen_

Acho que entendi mal o que você precisa...vamos lá:

Você quer que ao selecionar 2017 ele faça um acumulado até a data em que há info para 2018? Se sim, acho que isso pode ajudar:

para 2017:

Count({$<ano_ocorrido={">=$(=Max(ano_ocorrido)-1)"}>} sac_tipoconsumidor)

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
Anonymous
Not applicable
Author

Correto, é isso mesmo que eu preciso. Porém, essa expressão que você apresentou está retornando a soma de 2017 + 2018.

Anonymous
Not applicable
Author

para 2017:

Count({$<ano_ocorrido={">=$(=Max(ano_ocorrido)-1)<$(=Max(ano_ocorrido)"}>} sac_tipoconsumidor)

Thiago_Justen_

Então entendi errado mesmo hehe.

Veja se é isso:

2018 - temos dados de 01/01 a 30/01, logo vou pegar o valor no mesmo período para o ano anterior 01/01/17 a 30/01/17. Seria isso?

Se sim, veja se te ajuda:

Count({$<ano_ocorrido={"=$(=Max(ano_ocorrido)-1)"},mes_ocorrido={"=$(=Max(mes_ocorrido))"},dia_ocorrido={">=$(=Min(dia_ocorrido))<=$(=Max(dia_ocorrido))"}>} sac_tipoconsumidor)

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
Anonymous
Not applicable
Author

Obrigado Leandro, mas preciso que ele exiba sem precisar selecionar o dia no filtro, acredito que deve-se acrescentar o campo dia_ocorrido na expressão, porém não sei como.

Em resumo, ao selecionar 2018 e Janeiro tem que fazer um acumulado até o dia em que há info para 2018.


EX:

2018 > Janeiro > (Tenho no banco carregado info até o dia 30/01/2018) = 289 OCORRÊNCIA

Na barra ao lado ele tem que exibir a quantidade refente a 2017 até o dia 30/01/2017, que seria 540, porém está trazendo até o dia 31/01/2017 que é 551.

Anonymous
Not applicable
Author

Thiago, funcionou, só fiz uma pequena alteração:

Count({$<ano_ocorrido={"$(=Max(ano_ocorrido)-1)"},dia_ocorrido={">=$(=Min(dia_ocorrido))=$(=Max(dia_ocorrido))"}>} sac_tipoconsumidor)

Muito obrigado pela ajuda!!

Abs

Thiago_Justen_

Ufa!! Hehe

Já tava ficando chateado de não conseguir te ajudar. Mas que bom que funcionou!

Abs e Sucesso!!

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago