4 Replies Latest reply: Oct 24, 2014 4:58 AM by Yuri Nicolett RSS

    Valor do ultimo dia do mês

    Heitor Kruschewsky

      Boa tarde!

       

      No gráfico de tabela simples, tenho uma visão de saldo mensal, porem no script esse saldo está diário, como faço para ter o saldo do ultimo dia de cada mês?

        • Re: Valor do ultimo dia do mês
          Luciano Vasconcelos

          Bom dia.

          Existe a função abaixo:

           

          MonthsEnd(n, data [, turno = 0 [, primeiro_mês_do_ano = 1]])

          Retorna um valor correspondente a uma data/hora com o último milissegundo do período de n meses (iniciando em 1º de janeiro) que contém a data. O formato de saída padrão será o DateFormat configurado no script. N deve ser (1), 2, (3), 4 ou 6. Turno é um inteiro, em que o valor 0 indica o período que contém a data. Valores negativos em turno indicam períodos anteriores e valores positivos indicam períodos posteriores. Se desejar alinhar com anos (fiscais) que não comecem em janeiro, indique um valor entre 2 e 12 em primeiro_mês_do_ano.

          Exemplos:

          monthsend ( 4, '2001-07-19' ) retorna '2001-08-31' com um valor numérico subjacente correspondente a '2001-08-31 23:59:59.999'

          monthsend ( 4, '2001-10-19', -1 ) retorna '2001-08-31' com um valor numérico subjacente correspondente a '2001-08-31 23:59:59.999'

          monthsend ( 4, '2001-10-19', 0, 2 ) retorna '2002-01-31' com um valor numérico subjacente correspondente a '2002-01-31 23:59:59.999'

           

          Acredito que perguntando se a data que você utiliza for igual a MonthsEnd(mesma data), você pode criar um campo apontando o último dia de cada mês(Ex: Flag_UltDia = 'S')  e utilizar no set analisys.

          • Re: Valor do ultimo dia do mês
            Luciano Vasconcelos

            Como eu respondi antes:

             

            IF(date(monthsend(campo data),'DD/MM/YYYY') = date(campo data, 'DD/MM/YYYY') , 'S', 'N') as FlagUltimoDia

             

            Pode haver algum errinho de sintaxe, mas ai fica fácil você corrigir.

            • Re: Valor do ultimo dia do mês
              Yuri Nicolett

              Complementando a resposta do Luciano, montei um script prático sobre o assunto.

              A vantagem do código que postei é que se não houver lançamento no último dia do mês, ele vai retornar sempre o último lançamento para aquele mês como maior data.

               

              Veja o anexo.