1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

  2. Anuncie Aqui ! Entre em contato fdantas@4each.com.br

ULTIMO DIA DO MES

Discussão em 'Progress 4GL' iniciado por eder.luca2012, Agosto 26, 2013.

  1. eder.luca2012

    eder.luca2012 Membro Participativo

    Pessoal bom dia a todos

    Estou desenvolvendo um determinado programa onde quando eu informar o mês e ano eu precisava de uma função que me retorne o ultimo dia do mês alguém sabe como posso fazer essa operação?
  2. Agnaldo

    Agnaldo Membro Ativo

    Código:
        
    DEFINE VARIABLE mes       AS INTEGER.
    DEFINE VARIABLE ano       AS INTEGER.
    DEFINE VARIABLE ultimoDia AS DATE.
    
    ASSIGN mes = 1
           ano = 2013.
    
    ultimoDia = IF mes = 12 THEN (DATE(1,1,ano + 1) - 1) ELSE (DATE(mes + 1,1,ano) - 1).
    
    DISPLAY ultimoDia FORMAT "99/99/9999".
    
    
  3. Mokwa

    Mokwa Membro Participativo

    Utiliza a funcao ADD-INTERVAL, passando a data e como parametro -1, e 'DAY'.

  4. rafael.andrade

    rafael.andrade Membro Master Moderador Equipe de Suporte

    Segue a solução:

    DEF VAR data AS DATE.
    DEF VAR data2 AS DATE.

    ASSIGN data = 03/01/2012.
    ASSIGN data2 = ADD-INTERVAL(data,-1,"DAYS").

    MESSAGE DAY(data2)
    VIEW-AS ALERT-BOX INFO BUTTONS OK.
  5. lhp.s

    lhp.s Membro Participativo

    Revivendo o Tópico.,
    Erro para o mês de fevereiro. Alguém já viu algo?

    Código:
    MESSAGE add-interval(02/28/2017,1,'month')   VIEW-AS ALERT-BOX INFO BUTTONS OK.
    [\code]
  6. bootstrapmaster

    bootstrapmaster Moderator Moderador Equipe de Suporte

    me deu 28/03, em termos comercias está correto, pois financeiramento, comercialmente e etc, um mes tem 30 dias não importa qual seja o mes.

Compartilhe esta Página