getNthWorkingDay
Typ | |||
|---|---|---|---|
Versionshinweise | |||
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 den PropertyMapper:
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.
ID | Standard-Wert |
|---|---|
/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
INSERT INTO PropertyMapper
( Pk, id, property, propertyValue, propertyType, principal, isCustomizing, CustLayer, Active, CreateDate, CreateUser, UpdateDate, UpdateUser, Status, RightPk, ClientNo, MassData)
VALUES
( 'SysownHolydays', '/de/cursor/util/script/DateUtils$!!$SysownHolydays', '', 'KARFREITAG$!!$OSTERMONTAG$!!$HIMMELFAHRT$!!$PFINGSTMONTAG$!!$FRONLEICHNAM$!!$01.01.$!!$01.05.$!!$03.10.$!!$25.12.$!!$26.12.', 'SYSTEM', '', 0, 'CN', 1, getDate(), 'TECH_USER', getDate(), 'TECH_USER', null, null, null, 0) ;
//=> SQL-Statement, wenn der Eintrag nicht im PropertyMapper steht (also die hessischen Feiertage)