Datum und Zeit

<< Click to Display Table of Contents >>

Navigation:  Textersetzungsklasse >

Datum und Zeit

Ein Platzhalter aus dem Bereich DATUM UND ZEIT liefert einen Rückgabewert auf Basis von Datum und/oder Uhrzeit. Es wird ein Wert zurückgegeben, der dem aktuellen Datum oder der aktuellen Zeit auf dem betreffenden Rechner entspricht (lokale Systemzeit). Bei Terminal/REMOTE-Systemen oder webbasierten Applikationen wird die Systemzeit des Servers verwendet. Berechnung und Formatierung der Rückgabewerte erfolgt nach ISO 8601.

 

In allen folgenden Beispielen wird als Tagesdatum der 24.01.2000 um 11:30:23 angenommen.

 

Platzhalter für Datum und Zeit

 

Datums- und Zeit-Variablen

Erklärung

Beispiel

IsoDate

Tagesdatum im Format YYYY-MM-DD

2000-01-24

IsoTime

Uhrzeit im Format HH:NN:SS

11:30:23

IsoDateTime

Tagesdatum und Uhrzeit im Format YYYY-MM-DDTHH:NN:SS

2000-01-24T11:30:23

FirstDayOfYear

Erster Tag des aktuellen Jahres im Format YYYY-MM-DD

2000-01-01

LastDayOfYear

Letzter Tag des aktuellen Jahres

2000-12-31

FirstDayOfQuarter

Erster Tag des aktuellen Quartals

2000-01-01

LastDayOfQuarter

Letzter Tag des aktuellen Quartals

2000-03-31

FirstDayOfMonth

Erster Tag des aktuellen Monats

2000-01-01

LastDayOfMonth

Letzter Tag des aktuellen Monats

2000-01-31

FirstDayOfWeek

Erster Tag der aktuellen Woche

2000-01-22

LastDayOfWeek

Letzter Tag der aktuellen Woche

2000-01-27

YYYY

Jahr (vierstellig)

2000

MM

Monat (zweistellig)

01

DD

Tag (zweistellig)

24

HH

Stunde (zweistellig, 24h Format)

11

NN

Minute (zweistellig)

30

SS

Sekunde (zweistellig)

23

ZZ

Millisekunde (dreistellig)

100

QQ

Anzeige des aktuellen Quartals - (einstellig) 1-4

01

WW

Kalenderwoche (zweistellig)

04

WD

Tag der Woche, 1 = Montag, 2 = Dienstag ... 7 = Sonntag

1

YD

Tag n des aktuellen Jahres (1-365 oder 366, je nach Schaltjahr)

24

 

 

Modifikation der Rückgabewerte durch optionale Offset-Parameter

Für die Platzhalter FIRSTDAYOFxx, LASTDAYOFxx und ISODATE gibt es die Möglichkeit, einen Rückgabewert durch Offset-Parametern so zu modifizieren, so dass dieser Wert um eine gewisse Anzahl von Einheiten verschoben wird. Parameter können dabei auch kaskadisch kombiniert werden. Die Berechnung des Rückgabewerts erfolgt von links nach rechts sukzessiv, d.h. zunächst wird der Basiswert ermittelt, für jeden folgenden Offset-Parameter wird dann vom Ergebnis der letzten Berechnung ausgegangen, bevor erneut gerechnet wird.

 

Offset-Parameter

Durch einen Offset-Parameter [+1D] als Suffix, kann beispielsweise zu dem Rückgabewert ein weiterer Tag addiert, durch [-1M] kann 1 Monat subtrahiert werden. Durch Angabe des Wochentags ist eine Verschiebung auf einen bestimmten vorigen oder nächsten Wochentag möglich, optional auch dann, wenn der errechnete Wert bereits ein solcher Tag ist. Alle Offset-Parameter sind in ein gemeinsames Paar aus eckigen Klammern innerhalb der $$-Delimiter zu setzen.

Variablen für Offset-Parameter

Mögliche Präfixe

Hinweis zur Schreibweise

Funktion

Y

+ / - sowie eine ganze Zahl

[+1Y]

+/- n Jahr(e)

Q

wie vor

[+1Q]

+/- n Quartal(e)

M

wie vor

[+1M]

+/- n Monat(e)

W

wie vor

[+1W]

+/- n Woche(n)

D

wie vor

[+1D]

+/- n Tag(n)

Monday

+ / ++ / - / -- sowie der Wochentag

[+Monday]

Verschiebung auf Wochentag

Tuesday

wie vor

[+Tuesday]

wie vor

Wednesday

wie vor

[+Wednesday]

wie vor

Thursday

wie vor

[+Thursday]

wie vor

Friday

wie vor

[+Friday]

wie vor

Saturday

wie vor

[+Saturday]

wie vor

Sunday

wie vor

[+Sunday]

wie vor

 

Anwendungsbeispiele für Offset-Parameter

Variable

Basiswert

Offset-Parameter

Schreibweise

Ergebnis

Erklärung

IsoDate

2000-01-24

[+1M]

$$IsoDate[+1M]$$

2000-02-24

Aktueller Tag + 1 Monat

LastDayOfMonth

2000-12-31

[+1M]

$$LastDayOfMonth[+1M]$$

2000-02-28

Letzter Tag des nächsten Monats

FirstDayOfMonth

2000-01-01

[+1W]

$$FirstDayOfMonth[+1W]$$

2000-01-08

Erster Tag des Monats + 1 Woche

IsoDate

2000-01-24

[+1W-1D]

$$IsoDate[+1W-1D]$$

2000-01-07

Aktueller Tag + 1 Woche - 1 Tag

FirstDayOfMonth

2000-01-01

[-1M+1D]

$$LastDayOfMonth[+1M+1D]$$

1999-12-02

Erster Tag des Monats + 1 Woche + 1 Tag

IsoDate

2000-01-24

[-Monday]

$$IsoDate[-Monday]$$

2000-01-24

Montag vor oder am 24.01.2000 = 24.01.2000

IsoDate

2000-01-24

[--Monday]

$$IsoDate[--Monday}$$

2000-01-17

Montag vor dem 24.01.2000 = 17.01.2000

 

Anwendungsbeispiele aus der Praxis

Bereich

Text der im DataNAUT hinterlegt ist

Text / Code auf Basis von o.a. Datum/Uhrzeit zur Laufzeit

SQL

SELECT * FROM auftraege

WHERE datum = '$$IsoDate$$[-1M]'

SELECT * FROM auftraege

WHERE datum <= '1999-12-24'

Dateiname

D:\Daten\DateiName$$HH$$$$NN$$$$SS$$.TXT

D:\Daten\DateiName113023.TXT

Kommandozeile

-Param[GESTERN]=$$IsoDate[-1D]$$

-Param[GESTERN]=2000-01-23