|
Die in Director 7 neu
hinzugekommene Funktion the systemdate gestattet es im Unterschied
zur Funktion the date, das Datum des jeweiligen Systems in
einem konsistenten Format abzufragen. Die Rückgabe der Funktion
the date ist eine Zeichenkette ist, deren Format von den
Einstellungen des Systems abhängt. So kann der Wert "08.06.68"
sowohl für den achten Juni als auch für den sechsten August
des Jahres 1968 stehen. Als Workaround für Datumsberechnungen
bot sich in früheren Versionen so nur die aufwendigere Verwendung
der Funktion the long date (diese liefert Ergebnisse wie
z.B. "Sonntag, 5. Dezember 1999") oder die Funktion eines
entsprechenden Xtras an.
Die neue Funktion the systemdate liefert hingegen keine Zeichenkette,
sondern Daten im speziellen Format "#date" zurück,
wie ein Test im Nachrichtenfenster illustriert.

Daten vom Typ "#date"
besitzen die Properties "day", "month" und "year",
auf die getrennt zugegriffen werden kann und mit denen auch problemlos
numerische Berechnungen möglich sind.

Ein Manko der neuen Funktion
ist allerdings die fehlende Ausgabe des Wochentags. Wenn Sie eine
(numerische) Angabe des Wochentages benötigen, läßt
sich diese mit Hilfe eines bekannten Wochentages und des Operators
"mod" ermitteln. Dieser Operator führt die Modula-Operation
durch und liefert den Restwert der ganzzahligen Division als Ergebnis.

In der Prozedur getday
wird zunächst ein Datum mit bekanntem Wochentag als Referenz
gespeichert. Danach bilden wir die Differenz zwischen dem Referenzdatum
und dem als Parameter übergebenen Datum. Das Ergebnis dieser
Berechnung ist eine Tagesanzahl mit positivem oder negativem Vorzeichen.
Um daraus den Wochentag zu erhalten, wird nun auf die Tagesanzahl
die Modulo-Operation mit dem Divisor sieben angewendet. Die Addition
des Werts eins zum ganzzahligen Rest der Division durch sieben bewirkt,
dass für Montag bis Sonntag die Ziffern 1 bis 7 (anstelle 0
bis 6) als Ergebnis geliefert werden.
Gerd
Gillmaier
|