von Bruce Dales und Gary Guthrie
Oft werden Berichte benötigt, die auf Daten aus dem vergangenen Monat basieren. Es gibt eine einfache Möglichkeit, die erforderlichen Informationen mit Query aus den betroffenen Dateien zu entnehmen. Zuerst wollen wir uns ansehen, wie sich die in einer Transaktionsdatei enthaltenen Daten des vergangenen Monats mit Hilfe des Transaktionsdatums (Feld TranDate) extrahieren lassen.
Hierzu nutzen wir die datumsbezogenen Funktionen der Query Ergebnisfelder, um die Beginn- und Enddaten des vergangenen Monats abzuleiten. Folgendes ist in der Query/400 Ergebnisfeldanzeige anzugeben:
Field Expression MONTHEND Current(Date) - Day(Current(Date)) Days MONTHBEGIN MontEnd - Day(MonthEnd) Days + 1 DayDie Funktion Current stellt das aktuelle Datum, die Zeit, den Zeitstempel oder die Zeitzone des Systems zur Verfügung. Die Funktion Date isoliert das Datum aus diesem Wert. Durch die Formulierung Current(Date) wird als Ergebnis das aktuelle Datum in ein Datumsfeld ausgegeben. Die Funktion Day liefert den numerischen Wert des Tages aus einem Datum oder einem Zeitstempel. In unserem Beispiel ist das Ergebnis der aus dem heutigen Datum isolierte Tag.
Die Funktion Days liefert den numerischen Wert eines Datums, eines Zeitstempels oder einer Zeichenkette, die ein Datum repräsentiert. Das Ergebnisfeld MonthEnd resultiert aus dem heutigen Datum abzüglich der Anzahl von Tagen, die dem aus dem heutigen Datum entnommenen Tag entspricht. Wäre das heutige Datum beispielsweise der 04.07.2002, wäre das zu ermittelnde Monatsende der 04.07.2002 abzüglich vier Tage, somit der 30.06.2002. Auf ähnliche Weise werden die Funktionen Day und Days eingesetzt, um das Datum des Monatsbeginns (MonthBegin) zu ermitteln.
Noch nicht Abonnent? Sonderaktion nutzen.