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
Confrontare due orari
Moderator: Enrico Maria Giordano
- Marco Turco
- Posts: 858
- Joined: Fri Oct 07, 2005 12:00 pm
- Location: London
- Contact:
Confrontare due orari
Best Regards,
Marco Turco
SOFTWARE XP LLP
Marco Turco
SOFTWARE XP LLP
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
- Marco Turco
- Posts: 858
- Joined: Fri Oct 07, 2005 12:00 pm
- Location: London
- Contact:
Re: Confrontare due orari
Ho già risolto con TimeToSec(), grazie comunque per il suggerimento.
Best Regards,
Marco Turco
SOFTWARE XP LLP
Marco Turco
SOFTWARE XP LLP
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
Re: Confrontare due orari
Perché usare una funzione, per di più non standard, per fare qualcosa che si fa con i normali operatori di confronto?
EMG
EMG
Re: Confrontare due orari
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 )
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
Falconi Silvio