ceskho hai provato il file prima di upparlo ? perchè a occhio direi che non funziona :P
' Gambas module file
'Otteniamo la data e l'orario del momento in formatato INTEGER:
PUBLIC DataOraInteger
DIM d_Data AS Date
DIM iData AS Integer
DIM iorario AS Integer
DIM $GG AS String
DIM $MM AS String
DIM $AA AS String
DIM $Data AS String
DIM $ora AS String
DIM $minuti AS String
DIM $secondi AS String
dData = Now
$GG = Day(dData)
$MM = Month(dData)
$AA = Year(dData)
$ora = Hour(dData)
IF Len($ora) = 1 THEN $ora = "0" & $ora
$minuti = Minute(dData)
IF Len($minuti) = 1 THEN $minuti = "0" & $minuti
$secondi = Second(dData)
IF Len($secondi) = 1 THEN $secondi = "0" & $secondi
$Data = $AA & $_MM & $GG
idata = Val($Data) - - - - > data(AAAAMMGG) IN formato numerico
$orario = $ora & $_minuti & $secondi
iorario = Val($orario) - - - - > orario(hhmmss) IN formato numerico
END
manca la dichiarazioine di funzione e la dichiarazione della variabile DataOra presenta un errore
il formato AAAAMMGG sicuramente è il migliore che si possa utilizzare , perchè con questo formato le date sono facilmente ordinabili dalla minore alla maggiore o viceversa, facilitando quindi confronti tra due date per trovare la maggiore o minore, cosa che non si potrebbe fare con altri formati
Potevi anche risolverla cosi'
idata = Val(Format(Now(), "yyyymmdd"))
iorario = Val(Format(Now(), "hhmmss"))
Si hai ragione, però il risultato impegna solo i sottocompi della data in maniera completa, mentre questo non succede per l'orario.
Es.:
idata = Val(Format(Now(), "yyyymmdd"))
PRINT i_data
iorario = Val(Format(Now(), "hhmmss"))
PRINT i_orario
risultato:
20100217 (cioè 2010 02 17 - come vedi il sottocampo mese occupa due crt)
90220 (cioè 9 02 20 - qui invece il sottocampo ora occupa un solo crt)
Comunque grazie.
:D
Ciao.