getNthWorkingDay
Typ | |||
---|---|---|---|
Versionshinweise | 14.1 | ||
Web Client |
Code
Date DateUtils.getNthWorkingDay(int n, Date startDay)
Beschreibung
Ermittelt den n-ten Arbeitstag nach dem übergebenen Startdatum.
Die Definition, welcher Wochentag ein Arbeitstag ist, erfolgt über die Anwendungsvariablen:
ID | Standard-Wert |
/de/cursor/util/script/DateUtils$!!$MondayIsWorkingday | true |
/de/cursor/util/script/DateUtils$!!$TuesdayIsWorkingday | true |
/de/cursor/util/script/DateUtils$!!$WednesdayIsWorkingday | true |
/de/cursor/util/script/DateUtils$!!$ThursdayIsWorkingday | true |
/de/cursor/util/script/DateUtils$!!$FridayIsWorkingday | true |
/de/cursor/util/script/DateUtils$!!$SaturdayIsWorkingday | false |
/de/cursor/util/script/DateUtils$!!$SundayIsWorkingday | false |
Bewegliche Feiertage werden mit speziellen Konstanten hinterlegt.
Gültige Konstanten sind:
Konstante | Bedeutung |
ROSENMONTAG | Rosenmontag |
FASTNACHTSDIENSTAG | Fastnachtsdienstag |
ASCHERMITTWOCH | Aschermittwoch |
GRUENDONNERSTAG | Gründonnerstag |
KARFREITAG | Karfreitag |
OSTERSONNTAG | Ostersonntag |
OSTERMONTAG | Ostermontag |
HIMMELFAHRT | Christi Himmelfahrt |
PFINGSTSONNTAG | Pfingstsonntag |
PFINGSTMONTAG | Pfingstmontag |
FRONLEICHNAM | Fronleichnam |
BETTAG | Buß- und Bettag |
Weitere Feiertage mit festem Datum können im Format "DD.MM." hinterlegt werden.
Als Trennzeichen muss "$!!$" verwendet werden.
Als Standardeinstellung für die Feiertage sind die hessischen Feiertage hinterlegt (Stand 2013).
ID | Standard-Wert |
SYSTEM_NODE:/de/cursor/util/script/DateUtils$!!$SysownHolydays | KARFREITAG$!!$OSTERMONTAG$!!$HIMMELFAHRT$!!$PFINGSTMONTAG$!!$FRONLEICHNAM$!!$01.01.$!!$01.05.$!!$03.10.$!!$25.12.$!!$26.12. |
Parameter
- n: Die Anzahl der Tage ab dem gegebenen Starttag.
- Ein positiver Wert zählt die Tage in die Zukunft.
- Ein negativer Wert zählt die Tage in die Vergangenheit.
- Wird die Zahl Null übergeben, wird das aktuelle Datum zurückgegeben, wenn es sich um einen Arbeitstag handelt.
- Wird die Zahl Null übergeben, wird das Datum des nächsten Arbeitstages zurückgegeben, wenn es sich nicht um einen Arbeitstag handelt.
- day: Der Starttag, ab dem der n-te Arbeitstag ermittelt werden soll.
Return
Ein Date-Objekt, das den n-ten Arbeitstag repräsentiert.
Beispiele
final Calendar moDec23 = Calendar.getInstance();
moDec23.clear();
moDec23.set(2013, Calendar.DECEMBER, 23);
Date startDay = moDec23.getTime();
Date nthWorkingDay = DateUtils.getNthWorkingDay(3, startDay);
//=> Mit der Standard-Konfiguration (Hessische Feiertage) erhält man Montag, den 30.12.2013 als Date Objekt.