Como achar dia útil com função ABAP

quarta-feira, 27 de fevereiro de 2013 2 comentários
Função: DAY_ATTRIBUTES_GET


  CALL FUNCTION 'DAY_ATTRIBUTES_GET'
 EXPORTING
   FACTORY_CALENDAR                 'BR'
*   HOLIDAY_CALENDAR                 = ' '
   DATE_FROM                        '01.01.2016'
   DATE_TO                          '05.02.2016'
   LANGUAGE                         'PT'
*   NON_ISO                          = ' '
* IMPORTING
*   YEAR_OF_VALID_FROM               =
*   YEAR_OF_VALID_TO                 =
*   RETURNCODE                       =
  TABLES
    day_attributes                   t_dias_uteis
* EXCEPTIONS
*   FACTORY_CALENDAR_NOT_FOUND       = 1
*   HOLIDAY_CALENDAR_NOT_FOUND       = 2
*   DATE_HAS_INVALID_FORMAT          = 3
*   DATE_INCONSISTENCY               = 4
*   OTHERS                           = 5
          .  
 


Execute com um intervalo de data.
 

A função vai retornar uma tabela com todos os dias entre o intervalo informado


A tabela possui os seguintes campos
 

Dados da tabela:
 


Para achar o 5º dia útil.


"É só deletar todos as linhas quando o campo HOLIDAY estiver preenchido.
DELETE t_resultado WHERE holiday 'X'.
"Agora basta ler a 5º linha 
READ TABLE t_dia_util INTO wa_dia_util INDEX 5.

2 comentários:

  • Anônimo disse...

    Para o exemplo mencionado de como achar o 5º dia útil, o correto seria deletar todas as linhas quando o campo freeday estiver preenchido não?
    Pois sábado e domingo também não são considerados dias úteis.

Postar um comentário