Confrontare due orari

Moderator: Enrico Maria Giordano

Post Reply
User avatar
Marco Turco
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London
Contact:

Confrontare due orari

Post by Marco Turco »

Salve, sapere se esiste una funzione per confrontare due orari ?
In pratica avendo cTime1="10.55" e cTime2="13.44" vorrei una funzione che mi restituisce se un orario è maggiore o minore dell'altro.

Grazie in anticipo
Best Regards,

Marco Turco
SOFTWARE XP LLP
User avatar
Marco Turco
Posts: 858
Joined: Fri Oct 07, 2005 12:00 pm
Location: London
Contact:

Re: Confrontare due orari

Post by Marco Turco »

Ho già risolto con TimeToSec(), grazie comunque per il suggerimento.
Best Regards,

Marco Turco
SOFTWARE XP LLP
User avatar
Enrico Maria Giordano
Posts: 7355
Joined: Thu Oct 06, 2005 8:17 pm
Location: Roma - Italia
Contact:

Re: Confrontare due orari

Post by Enrico Maria Giordano »

Perché usare una funzione, per di più non standard, per fare qualcosa che si fa con i normali operatori di confronto?

EMG
User avatar
Silvio
Posts: 3107
Joined: Fri Oct 07, 2005 6:28 pm
Location: Teramo,Italy

Re: Confrontare due orari

Post by Silvio »

scusa Marco ma ho avuto problemi con il terremoto , ho la casa lesionata anc'hio
cmq prova questo .
FUNCTION Diff_Tempo( dData1,cOra1,dData2,cOra2 )
LOCAL nGiorni,nOrasp,nMinutp,nOrasa,nMinuta,nOras,nMinuto


IF cOra1 = NIL .OR. EMPTY( cOra1 )
cOra1 := "00:00"
END IF

IF dData2 = NIL .OR. EMPTY( dData2 )
dData2 := DATE()
END IF

IF cOra2 = NIL .OR. EMPTY( cOra2 )
cOra2 := SUBSTR( TIME(),1,5 )
END IF


IF VALTYPE( dData1 ) != 'D' .OR. VALTYPE( dData2 ) != 'D' .OR.;
VALTYPE( cOra1 ) != 'C' .OR. VALTYPE( cOra2 ) != 'C' .OR.;
EMPTY( dData1 )
RETURN 0
END IF


nGiorni := dData2 - dData1


nOrasp := VAL( SUBSTR( cOra2,1,2 ) )
nMinutp := VAL( SUBSTR( cOra2,4,2 ) )

nOrasa := VAL( SUBSTR( cOra1,1,2 ) )
nMinuta := VAL( SUBSTR( cOra1,4,2 ) )


nOras := nOrasp - nOrasa


IF nOras < 0
--nGiorni
nOras += 24
END IF


nMinuto = nMinutp - nMinuta

IF nMinuto < 0
--nOras
nMinuto += 60
END IF

RETURN nMinuto + ( nOras * 60 ) + ( ( nGiorni * 24 ) * 60 )
Best Regards, Saludos

Falconi Silvio
Post Reply