Datum en tijd (Apache OpenOffice Runtime-bibliotheek)

From Apache OpenOffice Wiki
Jump to: navigation, search
Book.png

Apache OpenOffice Basic verschaft het gegevenstype Date, dat de datum en tijd opslaat in binaire indeling.

Specificatie van de details voor datum en tijd in de programmacode

U kunt een datum toewijzen aan een variabele date door het toewijzen van een eenvoudige tekenreeks:

Dim MynDatum As Date
MynDatum = "24-1-2002"

Deze toewijzing kan correct functioneren omdat Apache OpenOffice Basic automatisch de als een tekenreeks gedefinieerde waarde voor de datum converteert naar een variabele Date. Dit type toewijzing kan echter fouten veroorzaken, waarden voor datum en tijd worden in verschillende landen verschillend gedefinieerd en weergegeven.

Omdat Apache OpenOffice Basic de landspecifieke instellingen van het besturingssysteem gebruikt bij het converteren van een tekenreeks naar een waarde Date, werkt de eerder weergegeven expressie alleen correct als de landspecifieke instellingen overeen komen met de uitdrukking van de tekenreeks.

De functie DateSerial zou moeten worden gebruikt om een vaste waarde toe te wijzen aan een variabele Date, om dergelijke problemen te vermijden

Dim MynVar As Date
MynDatum = DateSerial (2001, 1, 24)

De parameter voor de functie moet in de volgorde: jaar, maand, dag zijn. De functie zorgt er voor dat de variabele feitelijk de juiste waarde krijgt toegewezen, ongeacht de landspecifieke instellingen.

De functie TimeSerial maakt op dezelfde wijze details voor de tijd op als de functie DateSerial de datums opmaakt:

Dim MynVar As Date
MynDatum =  TimeSerial(11, 23, 45)

Hun parameters zouden moeten gespecificeerd in de volgorde: uren, minuten, seconden.

Details datum en tijd uitnemen

De volgende functies vormen het tegenovergestelde van de functies DateSerial en TimeSerial:

Day(MyDate)
geeft de dag van de maand terug uit MynDatum.
Month(MyDate)
geeft de maand terug uit MynDatum.
Year(MyDate)
geeft het jaar terug uit MynDatum.
Weekday(MyDate)
geeft het nummer van de weekdag terug uit MynDatum.
Hour(MyTime)
geeft de uren terug uit MynTijd.
Minute(MyTime)
geeft de minuten terug uit MynTijd.
Second(MyTime)
geeft de seconden terug uit MynTijd.

Deze functies nemen de gedeelten datum of tijd uit vanuit een gespecificeerde variabele Date. Het volgende voorbeeld controleert of de datum die is opgeslagen in MynDatum in het jaar 2023 ligt.

Dim MynDatum As Date
' ... Initialisatie van MynDatum
 
If Year(MynDatum) = 2023 Then
  ' ... Gespecificeerde datum ligt in het jaar 2023
End If

Op dezelfde manier controleert het volgende voorbeeld of MynTijd ligt tussen 12 en 14 uur.

Dim MynTijd As Date
' ... Initialisatie van MynTijd
 
If Hour(MyTime) >= 12 And Hour(MyTime) < 14 Then
  ' ... Gespecificeerde tijd ligt tussen 12 en 14 uur
End If

De functie Weekday geeft het nummer terug van de weekdag voor de opgegeven datum:

Dim MynDatum As Date
Dim MynWeekdag As String
' ... initialiseer MynDatum
 
Select Case WeekDay(MynDatum)
  case 1
    MynWeekdag = "Zondag"
  case 2
    MynWeekdag = "Maandag"
  case 3
    MynWeekdag = "Dinsdag"
  case 4
    MynWeekdag = "Woensdag"
  case 5
    MynWeekdag = "Donderdag"
  case 6
    MynWeekdag = "Vrijdag"
  case 7
    MynWeekdag = "Zaterdag"
End Select
Documentation note.png Zondag wordt beschouwd als de eerste dag van de week.

Systeemdatum en tijd ophalen

De volgende functies zijn in Apache OpenOffice Basic beschikbaar om de systeemtijd en systeemdatum op te halen:

Date
geeft de huidige datum terug als een tekenreeks. De indeling is afhankelijk van de instellingen voor de taal.
Time
geeft de huidige tijd terug als een tekenreeks.
Now
geeft het huidige punt in de tijd (als datum en tijd) terug, als een gecombineerde waarde van het type Date.


Content on this page is licensed under the Public Documentation License (PDL).
Personal tools