Dieses Modul erlaubt es, die aktuelle Zeit in einem anderen Ort (bezogen auf einen bestimmten Ort) zu berechnen. Dabei werden nicht nur verschiedene Zeitzonen, sondern auch Sommer- und Winterzeit (soweit vorhanden), berücksichtigt. Zudem wird angezeigt, ob und was für ein Feiertag an dem jeweiligen Ort stattfindet.
Es wird als Ort "Hamburg" und als Vergleichsort "Los Angeles" gewählt. Der Zeitzonenunterschied beträgt hierbei 9 Stunden. Wird als Datum nun der "4.7.1996" und als Zeit "17.00 Uhr" ausgewählt, so bleibt der Zeitunterschied unverändert, da in beiden Ländern die Sommerzeit gilt. D.h., dass die Uhr des Vergleichsortes "8.00 Uhr" anzeigt. Zudem wird angezeigt, dass dieser Tag in "Los Angeles" ein Feiertag ist, nämlich der "Unabhängigkeitstag".
Es soll "Los Angeles" als Vergleichsort ausgewählt werden. Zunächst wird die Liste der vorhandenen Länder im Vergleichsort-Feld durch Öffnen der Box angezeigt. Nun kann "USA" ausgewählt werden. Um auf Bundesstaaten-Ebene der USA zu gelangen ist die Pfeil-Taste "ß" zu drücken. Ein erneutes Öffnen der Box listet nun alle (verfügbaren) Bundesstaaten der USA auf. Nach Auswahl von "Kalifornien" und wiederholtem Drücken von "ß" werden alle Kreise/Städte Kaliforniens angezeigt. Aus dieser Liste kann nun "Los Angeles" selektiert werden.
Bei Orten, die sich über mehrere Zeitzonen erstrecken (z.B. die USA), verschwindet die zugehörige Uhr, da keine Zeitzone eindeutig gewählt ist. In der Statuszeile am unteren Fensterrand erscheint eine Meldung, die dieses anzeigt. Nach Auswahl eines Ortes, der sich nur in einer Zeitzone befindet, wird die entsprechende Uhr wieder angezeigt.
Die Anwendung bezieht sich nicht unbedingt auf den aktuellen, sondern
ermöglicht es, einen beliebigen Zeitpunkt vorzugeben. So können Fragestellungen wie
beispielsweise "Wenn ich mich am 7.9.96 um 15.00 in London befinde, wie spät ist es
dann in New York, und ist dann an einem der beiden Orte ein Feiertag?" beantwortet
werden.
Um den Zeitpunkt zu ändern wird in den entsprechenden Feldern für die Zeit und das
Datum einfach ein neuer Zeitpunkt gesetzt. Soll die aktuelle Zeit oder das aktuelle Datum
wieder eingestellt werden, so ist der entsprechende Button zu drücken.
| Feld | Beschreibung |
|---|---|
| Eigener Standort | Eigenen Standort auswählen |
| neue Uhrzeit | Uhrzeit festlegen |
| aktuelles Datum | Datum festlegen |
| Telefonnummer | |
| Vergleichsort | Vergleichsort auswählen |
| Datum | Errechnetes Datum |
| Knopf | Beschreibung |
|---|---|
| aktuelle Zeit | Vergleichszeit wird auf die aktuelle Zeit gesetzt |
| aktuelles Datum | Vergleichsdatum wird auf das aktuelle Datum gesetzt |
Der Kern der "Weltuhr" besteht aus der Berechnung der Differenz zwischen zwei
globalen Terminen, d.h. Terminen, die zusätzlich eine Zeitzonenangabe besitzen.
Hierfür steht die Klasse CX_GLOBAL_TERM zur Verfügung. Bei der Berechnung der
Zeitdifferenz zwischen zwei Orten soll aber auch noch eine vorhandene Sommer- und
Winterzeit berücksichtigt werden. Diese Information wird in den Ortsdaten als
periodisches Datum in Form eines Objektes der Klasse CX_PERIODIC_DATE
gehalten. D.h., dass das Datum der Sommerzeitumstellung nicht für jedes Jahr angegeben
werden muss, sondern als Formel gehalten wird. In Deutschland wird z.B. üblicherweise am
"letzten Sonntag im März" auf Sommerzeit umgeschaltet. Der genaue
Umschaltzeitpunkt wird für ein bestimmtes Jahr vom System als Objekt der Klasse CX_TERM
zurückgeliefert.
Der Ausgangsort muss natürlich nicht dem eigenen Ort entsprechen. Um an Daten eines
bestimmten Ortes zu gelangen, müssen diese nur in einem Objekt der Klassen CX_LOCALE,
CX_STATE_LOCALE oder CX_COUNTRY_LOCALE gespeichert sein, um den Zugriff zu
ermöglichen. Auch ein (temporäres) Austauschen des System-Ortes mit einem anderen Ort
stellt kein Problem dar. Auf diese Weise kann ermittelt werden, ob am Vergleichsort ein
Feiertag stattfindet.
wrldclck.mod
CX_LOCALE
CX_STATE_LOCALE
CX_COUNTRY_LOCALE
CX_TERM und CX_GLOBAL_TERM
CX_PERIODIC_DATE
Neben der Beschränkung der Zugriffsrechte über die Klasse und deren Datenfelder kann das Modul über einige der empfangenen Messages in seiner Nutzung beschränkt werden.
| Message | Parameter | Funktion | Security |
|---|---|---|---|
| NEW_HERE_PATH | |||
| NEW_THERE_PATH | |||
| START_WORLDCLOCK |
| Message | Parameter | Funktion | Empfangs-Modul |
|---|---|---|---|
| NEW_HERE_PATH | |||
| NEW_THERE_PATH |