Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
RafaMartins
Creator II
Creator II

Exibir mês atual e meses anteriores

Boa tarde Senhores e Senhoras,

Estou com uma grande dificuldade para construir uma expressão que exiba o valor do mês atual e dos últimos 11 meses.

tentei com está expressão:  Max({<[Mês]={"<$(=MonthStart(today())) >=$(=MonthStart(addmonths(today(),-1))) "}, =  [Mês]>} [indisp geral] )

onde [Mês] é meu campo de data e [indisp geral] meu campo de valores.

Porem com essa expressão não obtive resultado.

Dimensionando max(indisp geral) por [Mês] me retorna os valores, porem quando há o mesmo mês repetido tenho apenas o valor do maior, o que não possibilita que utilize este método para criar o gráfico.

Por isso preciso de uma expressão que apresente o valor máximo do mês atual e dos 11 meses anteriores.

Conto com a ajuda de vocês e desde já agradeço.

1 Solution

Accepted Solutions
lfetensini
Partner - Creator II
Partner - Creator II

a) O primeiro ponto é você ter uma dimensão que seja a combinação numérica de ano e mês. De modo que para você olhar três meses atrás, bastaria você pegar o período atual e subtrair 3. Ex: (PeriodoID) - 3 = Período de três meses atrás.

Exemplo de campo a ser atribuído no seu modelo de dados:

 Year(Data) as Ano // Este você já tem
 Month(Data) as Mês // Este você também tem
 (Year(Data) * 12) + Num(Month(Data))  as PeriodoID // Verifica se tem esse

Você vai obter algo como 24230. Deste modo é mais fácil caminhar na linha do tempo.


b) Acredito que você quer a soma dos meses e não necessariamente o Máximo, correto? Nesse caso é Sum(). Então sua fórmula ficará assim, aplicando o conceito do PeriodoID numérico:

Sum(
 {<
  Ano =,  // Ignora o campo ano selecionado
  Mês =, // Ignora o campo mês selecionado
  PeriodoID = {">=$(=Max(PeriodoID)-11)<$(=Max(PeriodoID))"}
 >}
  [indisp geral]
)

Support your colleagues. Remember to "like" the answers that are helpful to you and flag as "solved" the one that helped you solve. Cheers.

View solution in original post

1 Reply
lfetensini
Partner - Creator II
Partner - Creator II

a) O primeiro ponto é você ter uma dimensão que seja a combinação numérica de ano e mês. De modo que para você olhar três meses atrás, bastaria você pegar o período atual e subtrair 3. Ex: (PeriodoID) - 3 = Período de três meses atrás.

Exemplo de campo a ser atribuído no seu modelo de dados:

 Year(Data) as Ano // Este você já tem
 Month(Data) as Mês // Este você também tem
 (Year(Data) * 12) + Num(Month(Data))  as PeriodoID // Verifica se tem esse

Você vai obter algo como 24230. Deste modo é mais fácil caminhar na linha do tempo.


b) Acredito que você quer a soma dos meses e não necessariamente o Máximo, correto? Nesse caso é Sum(). Então sua fórmula ficará assim, aplicando o conceito do PeriodoID numérico:

Sum(
 {<
  Ano =,  // Ignora o campo ano selecionado
  Mês =, // Ignora o campo mês selecionado
  PeriodoID = {">=$(=Max(PeriodoID)-11)<$(=Max(PeriodoID))"}
 >}
  [indisp geral]
)

Support your colleagues. Remember to "like" the answers that are helpful to you and flag as "solved" the one that helped you solve. Cheers.