Hoje vamos aprender a usar a Função DataValida do AdvPL [Tlpp], [tl++] para obter data dia útil anterior ou posterior – Curso Protheus grátis AdvPL / TLPP.
Descrição:
| Verifica data válida no sistema, dia útil posterior ou anterior. | 
Sintaxe:
| DataValida( <dData>, <lTipo> ) | 
Parâmetros
| Par | Nome | Tipo | Descrição | Default | Obg | Ref | 
| 01 | dData | Date | Data para iniciar o cálculo da função | X | ||
| 02 | lTipo | Boolean | Se .T. posterga a data recebida para o próximo dia últil – Se .F. retrocede a data recebida para o dia últil anterior | 
Retorno:
| Retorno | Tipo | Descrição | 
| dRet | Date | Data válida do sistema | 
#Include "Protheus.ch"
/*----------------------------------------------------------------------------------*
{Protheus.doc} User Function mDataVal()
@type:      User Function
@author:    Jose Moura
@site:      https://academiaproerp.com
@canal:     [Inscreva-se no canal https://www.youtube.com/@academiaprotheus]
@desc.:     Função DataValida. Retorna Data, dia útil posterior ou anterior
@Sintaxe:   DataValida(dData, lTipo)
*-----------------------------------------------------------------------------------*/
User Function mDataVal()
Local aArea   := FWGetArea()
Local dData   := CToD('25/11/2023') //Sábado
Local dRetPos := DataValida(dData, .T.)
Local dRetAnt := DataValida(dData, .F.)
FWAlertSuccess('Data 1: ' + cValtoChar(dDataI) ;
         + CRLF + 'Dia Útil Posterior: ' + cValtoChar(dRetPos) ;
         + CRLF + 'Dia Útil Anterior: ' + cValtoChar(dRetAnt), 'Academia Protheus')
FWRestArea(aArea)
Return


Analista de sistemas, programador com mais de 18 anos de experiência no sistema Totvs Protheus, administrador, suporte e customizações, idealizador da Academia ProERP, já ajudou centenas de pessoas a programar em AdvPL/Tlpp.