4D v16.3Zeitoperatoren |
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
Zeitoperatoren
|
Operation | Syntax | Ergibt | Ausdruck | Wert |
Addition | Zeit + Zeit | Zeit | ?02:03:04? + ?01:02:03? | ?03:05:07? |
Subtraktion | Zeit – Zeit | Zeit | ?02:03:04? – ?01:02:03? | ?01:01:01? |
Addition | Zeit + Zahl | Zahl | ?02:03:04? + 65 | 7449 |
Subtraktion | Zeit – Zahl | Zahl | ?02:03:04? – 65 | 7319 |
Multiplikation | Zeit * Zahl | Zahl | ?02:03:04? * 2 | 14768 |
Division | Zeit / Zahl | Zahl | ?02:03:04? / 2 | 3692 |
Ganzzahlige Division | Zeit \ Zahl | Zahl | ?02:03:04? \ 2 | 3692 |
Modulo | Zeit % Zeit | Zeit | ?20:10:00? % ?04:20:00? | ?02:50:00? |
Modulo | Zeit % Zahl | Zahl | ?02:03:04? % 2 | 0 |
Mit den Funktionen Time und Current time können Sie Ausdrücke vom Typ Zeit und Zahl kombinieren. 4D rechnet die Zeit in Sekunden nach Mitternacht um und führt dann die Berechnung aus. Zum Beispiel:
` Folgende Zeile weist $vlSeconds die Anzahl Sekunden zu, die zwischen
` Mitternacht und einer Stunde nach der aktuellen Zeit vergangen sind.
$vlSeconds:=Current time+3600
` Folgende Zeile weist $vHSoon die Zeit zu, die in einer Stunde sein wird
$vhSoon:=Time(Time string(Current time+3600))
Die 2. Zeile lässt sich auch einfacher schreiben:
` Folgende Zeile weist $vHSoon die Zeit zu, die in einer Stunde sein wird
$vhSoon:=Current time+?01:00:00?
Beim Entwickeln Ihrer Anwendung werden Sie öfters Zeitausdrücke als numerische Werte benötigen. Sie öffnen z.B. ein Dokument mit der Funktion Open document. Sie erhalten eine Dokumentreferenz (DocRef), die als Zeitausdruck formatiert ist. Übergeben Sie diese DocRef später in einer externen Routine von 4D, benötigen Sie einen numerischen Wert. 4D bietet hier die Addition mit Null (0). Um eine Zeitangabe in eine Zahl umzurechnen, müssen Sie nur eine Null hinzuaddieren. Beispiel:
` Wähle und öffne ein Dokument
$vhDocRef:=Open document("")
If(OK=1)
` Übergib DocRef, ausgedrückt in Zeit als Zahl an die externe Routine von 4D
DO SOMETHING SPECIAL(0+$vhDocRef)
End if
Der Operator Modulo dient insbesondere dazu, Zeiten im 24 Stunden Format hinzuzufügen:
$t1:=?23:00:00? // Es ist 23:00 p.m.
// Wir wollen 2 1/2 Stunden hinzufügen
$t2:=$t1 +?02:30:00? // Mit einer einfachen Addition gilt: $t2 ist ?25:30:00?
$t2:=($t1 +?02:30:00?)%?24:00:00? // $t2 ist ?01:30:00? und es ist 1:30 a.m. des nächsten Tages
Bildoperatoren
Bit Operatoren
Boolean Operatoren
Datumsoperatoren
Numerische Operatoren
Operatoren
String Operatoren
Vergleichsoperatoren
Produkt: 4D
Thema: Operatoren
4D Programmiersprache ( 4D v16)
4D Programmiersprache ( 4D v16.1)
4D Programmiersprache ( 4D v16.2)
4D Programmiersprache ( 4D v16.3)