- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dicas e Informações
- Função Retorna Data e Hora de Uma da Inicio Mais Quantidade de Horas
Perguntas Função Retorna Data e Hora de Uma da Inicio Mais Quantidade de Horas
- admin
- Autor do Tópico
- Desconectado
- Administrador
Menos
Mais
- Postagens: 297
- Obrigados Recebidos: 21
3 anos 6 meses atrás #33041
por admin
Galera segue uma função que desenvolvi que se você precisar saber o resultado de uma data e hora somando uma data inicial e hora inicial mais uma certa quantidade de horas ok.
U_RoloEmHora('24/10/201913:00:00',13)
Retorno Caracter '99/99/9999 - 13:00:00'
U_RoloEmHora('24/10/201913:00:00',13)
Retorno Caracter '99/99/9999 - 13:00:00'
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma ³ RoloEmHora º Autor ³ Luiz Alberto º Data ³ 14/06/19 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍ͹±±
±±ºDescricao ³ Soma Horas Em Uma Data e Retorna a Data e Hora Final º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
User Function RoloEmHora(cDtIni,nHoras)
Local dDataI := CtoD(SubStr(cDtIni,1,10))
Local cHoraI := PadL(SubStr(cDtIni,11,8),8,'0')
Local cHora := ''
nDias := Int((nHoras/24))
dResul:= dDataI + nDias
nResHr:= Round(((nHoras/24)-Int((nHoras/24))),5)
nHrr := (24 * nResHr)
nHora := SomaHoras(cHoraI,PadL(StrTran(Str(nHrr,5,2),'.',':'),5,'0')+':00')
cHora := PadL(StrTran(Str(nHora,5,2),'.',':'),5,'0')+':00'
While nHora > 23.59
cHoraI := '00:00:00'
nDias := Int((nHora/24))
dResul+=nDias
nResHr:= Round(((nHora/24)-Int((nHora/24))),5)
nHrr := (24 * nResHr)
nHora := SomaHoras(cHoraI,PadL(AllTrim(StrTran(Str(nHrr,5,2),'.',':')),5,'0')+':00')
cHora := PadL(AllTrim(StrTran(Str(nHora,5,2),'.',':')),5,'0')+':00'
Enddo
Return DtoC(dResul)+ ' - ' + cHora
Por favor Acessar ou Registrar para participar da conversa.
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dicas e Informações
- Função Retorna Data e Hora de Uma da Inicio Mais Quantidade de Horas
Tempo para a criação da página:0.071 segundos