Nesse vídeo demonstraremos a utilização das funções DecTime e IncTime que servem para subtrair ou adicionar horas, minutos e segundos em uma variável.
Abaixo o código fonte desenvolvido para o exemplo em vídeo acima:
//Bibliotecas
#Include "TOTVS.ch"
/*/{Protheus.doc} User Function zExe140
Exemplo de função para adicionar ou subtrair horas de uma variável
@type Function
@author Atilio
@since 16/12/2022
@obs 
    Função DecTime
    Parâmetros
        + Variável com a hora inicial
        + Quantidade de horas para subtrair
        + Quantidade de minutos para subtrair
        + Quantidade de segundos para subtrair
    Retorno
        + Hora com as subtrações
    Função IncTime
    Parâmetros
        + Variável com a hora inicial
        + Quantidade de horas para somar
        + Quantidade de minutos para somar
        + Quantidade de segundos para somar
    Retorno
        + Hora com as somas
    **** Apoie nosso projeto, se inscreva em https://www.youtube.com/TerminalDeInformacao ****
/*/
User Function zExe140()
    Local aArea       := FWGetArea()
    Local cHoraIni    := Time()
    Local cHoraSoma   := ""
    Local cHoraSubt   := ""
    Local cMensagem   := ""
    //Fazendo os calculos com 3 horas, 10 minutos e 25 segundos
    cHoraSoma := IncTime(cHoraIni, 3, 10, 25)
    cHoraSubt := DecTime(cHoraIni, 3, 10, 25)
    //Monta a mensagem com o resulta e mostra
    cMensagem := "Hora inicial para as contas: " + cHoraIni + CRLF + CRLF
    cMensagem += "Hora com soma: " + cHoraSoma + CRLF + CRLF
    cMensagem += "Hora com subtração: " + cHoraSubt
    FWAlertInfo(cMensagem, "Teste DecTime e IncTime")
    FWRestArea(aArea)
Return
Bom pessoal, por hoje é só.
Abraços e até a próxima.