Bom dia!
Alguém sabe informar se esta função não processa valores negativos?
Converte os segundos para hora normalmente quando se trata de valores positivos. Porem, se encontrar negativo ela retorna o valor com (*). ex:
s1 = 5520
s2 = -5520
? sectotime(s1)
? sectotime(s2)
01:32:00
- 1:**:00
sectotime()
Moderador: Moderadores
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
sectotime()
Olá!
Se 5520 segundos representa 1:32:00 depois da meia noite, -5520 segundos representa 1:32:00 antes da meia noite (no dia anterior):
Se 5520 segundos representa 1:32:00 depois da meia noite, -5520 segundos representa 1:32:00 antes da meia noite (no dia anterior):
Código: Selecionar todos
FUNCTION SecAsTime( nSecs )
If nSecs < 0
nSecs += 24 * 60 * 60
Endif
RETURN SecToTime ( nSecs )[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
sectotime()
Bom dia amigo!
Acontece que neste caso trata-se de calculo de horas . Estes segundos que estão negativos devem ser exibidos como negativos mesmo.
Acontece que neste caso trata-se de calculo de horas . Estes segundos que estão negativos devem ser exibidos como negativos mesmo.
-
Kapiaba
- Colaborador

- Mensagens: 1908
- Registrado em: 07 Dez 2012 16:14
- Localização: São Paulo
- Contato:
sectotime()
Dificil entender o que você quer fazer.
Código: Selecionar todos
FUNCTION Main()
LOCAL nBeginning, nEnd, cBegin, cEnd
nBeginning := 5520
nEnd := -5520
? SECTOTIME( nEnd - nBeginning )
? SECTOTIME( nBeginning - nEnd )
// ? SECTOTIME( nEnd, .T. )
? TimeToSec( nBeginning - nEnd )
/*
? TimeToSec("12:44:33:22") // Result: 45873.22
cBegin := "12:55:44:33"
cEnd := "14:56:12:22"
? TimeToSec(cEnd) - TIMETOSEC(cBegin) // Period in seconds
? TimeToSec("12")
? TimeToSec("12:44)
? TimeToSec("12:44:33)
? TimeToSec("12:44:33:22")
*/
RETURN NIL
