Data e ora (libreria runtime diApache OpenOffice)

From Apache OpenOffice Wiki
Jump to: navigation, search

Apache OpenOffice Basic fornisce il tipo di dati Date, che salva le informazioni sulla data e l'ora in formato binario.

Specifica delle informazioni di data e ora nel codice del programma

Potete assegnare una data a una variabile data tramite l'assegnazione di una stringa semplice:

Dim MyDate As Date
MyDate = "24.1.2002"

Questa assegnazione opera correttamente perché Apache OpenOffice Basic converte automaticamente il valore di data definito come stringa in una variabile data. Questo tipo di assegnazione, tuttavia, può causare errori e i valori di data e ora vengono definiti e visualizzati in modo diverso nei diversi paesi.

Poiché Apache OpenOffice Basic utilizza le impostazioni specifiche del paese del sistema operativo per la conversione di una stringa in un valore di data, l'espressione illustrata in precedenza funziona correttamente solo se le impostazioni specifiche del paese corrispondono alla stringa.

Per evitare questo problema, utilizzate la funzione DateSerial per assegnare un valore fisso a una variabile data:

Dim MyVar As Date
MyDate = DateSerial (2001, 1, 24)

Il parametro della funzione deve utilizzare la sequenza: anno, mese, giorno. La funzione garantisce che alla variabile sia effettivamente assegnato il valore corretto, a prescindere dalle impostazioni specifiche del paese.

La funzione TimeSerial formatta le informazioni sull'ora nello stesso modo in cui la funzione DateSerial formatta le date:

Dim MyVar As Date
MyDate =  TimeSerial(11, 23, 45)

I parametri devono essere specificati nella sequenza: ore, minuti, secondi.

Estrazione delle informazioni su data e ora

Le funzioni seguenti costituiscono la controparte delle funzioni DateSerial e TimeSerial:

Day(MyDate)
Restituisce il giorno del mese di MyDate.
Month(MyDate)
Restituisce il mese di MyDate.
Year(MyDate)
Restituisce l'anno di MyDate.
Weekday(MyDate)
Restituisce il giorno della settimana di MyDate.
Hour(MyTime)
Restituisce le ore di MyTime.
Minute(MyTime)
Restituisce i minuti di MyTime.
Second(MyTime)
Restituisce i secondi di MyTime.

Queste funzioni estraggono le sezioni di data o ora da una variabile Date specificata. L'esempio seguente verifica se la data salvata in MyDate appartiene all'anno 2003.

Dim MyDate As Date
' ... Initialization of MyDate
 
If Year(MyDate) = 2003 Then
  ' ... Specified date is in the year 2003
End If

Analogamente, l'esempio seguente verifica se MyTime è compreso tra le 12 e le 14.

Dim MyTime As Date
' ... Initialization of MyTime
 
If Hour(MyTime) >= 12 And Hour(MyTime) < 14 Then
  ' ... Specified time is between 12 and 14 hours
End If

La funzione Weekday restituisce il numero del giorno della settimana per la data trasferita:

Dim MyDate As Date
Dim MyWeekday As String
' ... initialize MyDate
 
Select Case WeekDay(MyDate)
  case 1
    MyWeekday = "Sunday"
  case 2
    MyWeekday = "Monday"
  case 3
    MyWeekday = "Tuesday"
  case 4
    MyWeekday = "Wednesday"
  case 5
    MyWeekday = "Thursday"
  case 6
    MyWeekday = "Friday"
  case 7
    MyWeekday = "Saturday"
End Select
Documentation note.png Domenica è considerato il primo giorno della settimana.

Richiamo della data e dell'ora di sistema

Le seguenti funzioni di Apache OpenOffice Basic permettono di richiamare la data e l'ora di sistema:

Date
Restituisce la data attuale.
Time
Restituisce l'ora attuale.
Now
Restituisce la data e l'ora attuali come valore combinato.
Content on this page is licensed under the Public Documentation License (PDL).
Personal tools