Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Not applicable

Como setar meses como números?

Bom dia,

Preciso definir os meses como números (Janeiro=1; Fevereiro=2..) para criar uma variável para receber esses números.

Por exemplo, quero analisar os últimos 4 meses, estamos em outubro logo vMonth=10. Agora para analisar Setembro, Agosto e Julho usaria uma lógica do tipo: vMonth - 1 ; vMonth - 2 ; vMonth - 3.

Alguém saberia me ajudar?

Tags (1)
1 Solution

Accepted Solutions
Highlighted
thiago_mlg
Contributor II

Re: Como setar meses como números?

Francisco, boa tarde!

Vamos lá..

Primeiramente se o seu campo de data da sua tabela estiver apenas o mês e ele estiver no formato, Janeiro, Fevereiro e etc, não vai adiantar você fazer nenhum comando para transforma-lo em data.. a primeira coisa e muda-lo no script.

Ou seja, pra criar o campo vai ser assim..

IF(CampoMes = 'Janeiro', 1,

     IF(CampoMes = 'Fevereiro',2,

          IF(CampoMes = 'Março',3)))    AS  CAMPOMES..   lembrando de fazer até dezembro.

Depois disso para criar a variável de navegação sera assim..

Se você quiser analisar sempre os últimos 4 meses a partir do mês atual  ficará mais ou menos assim..

sum({< CampoMes = {'>=$(=month( AddMonths( today(),-4)  )  )'}  >} Valor)  isso traria a soma dos valores de 4 meses atras até hoje.. ai você pode usar varias formas diferentes..

Qualquer dúvida à disposição.

4 Replies
fer_damas
Contributor

Re: Como setar meses como números?

Use a função addmonths e estabeleça o critério como -1, -2, -3.

Addmonths(SeuCampoDeData, -1), retornará o mês anterior.

Ou, também Date(today(), 'M')

Att,

mauroponte
Contributor II

Re: Como setar meses como números?

Francisco,

Para transformar mês alfa para mês numerico basta utilizar a função num():

num(month(CampoData),'##').

Mas pelo que entendi da sua necessidade o fernando deu uma boa alternativa.

Highlighted
thiago_mlg
Contributor II

Re: Como setar meses como números?

Francisco, boa tarde!

Vamos lá..

Primeiramente se o seu campo de data da sua tabela estiver apenas o mês e ele estiver no formato, Janeiro, Fevereiro e etc, não vai adiantar você fazer nenhum comando para transforma-lo em data.. a primeira coisa e muda-lo no script.

Ou seja, pra criar o campo vai ser assim..

IF(CampoMes = 'Janeiro', 1,

     IF(CampoMes = 'Fevereiro',2,

          IF(CampoMes = 'Março',3)))    AS  CAMPOMES..   lembrando de fazer até dezembro.

Depois disso para criar a variável de navegação sera assim..

Se você quiser analisar sempre os últimos 4 meses a partir do mês atual  ficará mais ou menos assim..

sum({< CampoMes = {'>=$(=month( AddMonths( today(),-4)  )  )'}  >} Valor)  isso traria a soma dos valores de 4 meses atras até hoje.. ai você pode usar varias formas diferentes..

Qualquer dúvida à disposição.

MVP
MVP

Re: Como setar meses como números?

Francisco,

não esquecer que o campo quando criado pelo month()  é um campo DUAL, ou seja, tem numero e texto no mesmo campo.