SYS_TIME_PHYSICAL
Script-Funktion: Stellt die jeweils aktuelle Tageszeit fest
Syntax
SYS_TIME_PHYSICAL ([Time Format][,TimeZone])
Syntax |
Beschreibung/Format |
---|---|
Time Format |
Format für das angegebene Datum |
TimeZone |
Name eines Zeitzonenobjektes oder UTC-Keyword |
Rückgabewert |
---|
Zeit im angegebenen Format |
Die Script-Funktionen ermittelt die jeweils aktuelle Tageszeit. Dabei wird eine Zeitzone, welche als Parameter angegeben wurde, berücksichtigt.
Hinweis: Wird die Script-Funktion mehrmals in einem Script mehrfach verwendet, kann dies unter Umständen zu unterschiedlichen Ergebnissen führen (zum Beispiel bei sekunden- oder minutengenauer Abfrage). Damit unterscheidet sich die Script-Funktion von SYS_TIME, welche die aktuelle Tageszeit zu Beginn der Script-Prozessierung ermittelt und dann „einfriert“, um die Konsistenz des Scripts zu gewährleisten.
Time Format ist optional. Es dient dazu, das Format festzulegen, in dem die Funktion ihren Wert zurückgeben soll. Haben Sie kein Zeitformat angegeben, wird das Standardformat „HHMMSS“ verwendet.
TimeZone ist ebenfalls optional. Wird die Script-Funktion ohne diesen Parameter aufgerufen, wird die Zeitzone des Objektes verwendet bzw. die des Mandanten, wenn für das Objekt selbst keine Zeitzone definiert wurde. Wurde eine nicht definierte Zeitzone angegeben, wird automatisch mit dem Standardwert (Zeitzone des Mandanten) gerechnet. Anstatt einer Zeitzone kann auch das UTC-Keyword verwendet werden. Die Uhrzeit wird direkt in UTC (Universal Time Coordinated) zurückgegeben.
Beispiele
Das erste Beispiel ermittelt jeweils aktuelle Tageszeiten und übergibt die Werte an Script-Variablen. Das Ergebnis sind zwei Zeiten, die mindestens 10 Sekunden auseinander liegen.
:SET &TIME1# = SYS_TIME_PHYSICAL("HH:MM:SS")
:WAIT 10
:SET &TIME2# = SYS_TIME_PHYSICAL("HH:MM:SS")
Im zweiten Beispiel wird zunächst die aktuelle Tageszeit in UTC ermittelt. Beim zweiten Aufruf der Script-Funktion wird eine Zeitzone angegeben, die für mitteleuropäische Zeit definiert wurde. Das Ergebnis sind zwei Zeiten, die mindestens 1 Stunde und 10 Sekunden auseinander liegen.
:SET &TIME1# = SYS_TIME_PHYSICAL("HH:MM:SS","UTC")
:WAIT 10
:SET &TIME2# = SYS_TIME_PHYSICAL("HH:MM:SS","TZ.MEZ")
Im dritten Beispiel wird ein spezieller Begriff verwendet und mit einer Script-Variablen übergeben. Es werden nur die Minuten der aktuellen Tageszeit festgestellt.
:SET &FORMAT# = "MM"
:SET &TIME# = SYS_TIME_PHYSICAL(&FORMAT#)
Wird die Funktion ohne die Angabe von Zeitformat verwendet, ist die Syntax wie im folgenden Beispiel.
:IF SYS_TIME_PHYSICAL() = "120000"
!...
:ENDIF
Siehe auch: