Lade...
 

CX_DATE::IsWorkingday

CX_DATE::IsWorkingday

Beschreibung:

Diese Funktion ermittelt, ob ein Tag ein Arbeitstag ist oder nicht.  Das Ergebnis dieser Überprüfung wird als Wahrheitswert zurückgegeben.
Was für das System als Arbeitstag gilt, hängt von den Einträgen in den ortsspezifischen Daten ab. Die Einträge in diesen werden nach den lokalen Eingestellungen ausgewählt. 

Anders als die anderen Kategorien, bilden sich die Arbeitstage gewissermaßen als Komplement: Arbeitstag ist zunächst jeder Tag, der im Bitmuster workingDay in den Landesspezifische Daten (Countrycode) als solcher gesetzt wird. Von diesen Werktagen wiederum sind solche, die gleichzeitig auch als Feiertag (siehe IsHoliday) festgelegt sind, entsprechend auch keine Arbeitstage mehr. Falls jedoch die Option "Alle Feiertage sind Arbeitstage" gewählt ist, sind die definierten Werktage immer Arbeitstage, unabhängig davon ob sie auch Feiertage sind.

Für die Hierarchie bei der Abfrage nach besonderen Tagen siehe auch IsDateType.

Unvollständige Daten können grundsätzlich nicht auf die Arbeitstageigenschaft geprüft werden.
Für eine Datumsperiode bezieht sich diese Funktion auf ihr Startdatum. Diese Funktion wird auch herangezogen zur für die Bestimmung der tatsächlichen Periodenlänge von Netto-Datumsperioden.

Code-Beispiel:
In dem Beispiel-Programm wird überprüft, ob der "25.12.1995" ein Termin ist.

Var(date)                          // deklariere eine Variable
CreateTransObject(CX_DATE) -> date // generiere das heutige Tagesdatum
"25.12.1995" date Put              // schreibe das neue Datum in das Datumsobjekt
date Call(IsWorkingday)            // teste, ob der Tag ein Termintag ist

Wenn das Ausführen dieses Skriptes den Wert FALSE erzeugt, so wurde der "25.12.1995" als ein freier Tag (z.B. Feiertag) definiert oder fällt auf einen allgemeinen nicht Arbeitstag nach der workingDay-Definition, z.B. das Wochenende.

Stack
Stack Position Objekttyp Kurzbeschreibung
Stack(In) Top CX_DATE oder CX_SPAN_DATE das Datum(-sobjekt)
Stack(Out) Top INTEGER das Ergebnis der Überprüfung
Funktionsaufruf: Call(IsWorkingday)