4 Replies Latest reply: Oct 10, 2016 10:27 AM by Alessandro Furtado RSS

    Como setar meses como números?

    Francisco Lannes

      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?

        • Re: Como setar meses como números?
          Fernando Damas Wenzel

          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,

          • Re: Como setar meses como números?
            mauro ponte

            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.

            • Re: Como setar meses como números?
              Thiago Manoel Gonçalo

              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.

              • Re: Como setar meses como números?
                Alessandro Furtado

                Francisco,

                 

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