setWorkTime

Setzt die Arbeitszeit für das Gantt-Diagramm

void setWorkTime(object config);
configobjectdas Konfigurationsobjekt eines Zeitraums

Example

gantt.config.work_time = true;
 
// Ändert die Arbeitszeit der Werktage von ["8:00-17:00"] auf ["9:00-18:00"]
gantt.setWorkTime({ hours:["9:00-18:00"] });
 
// Macht alle Freitage zu freien Tagen
gantt.setWorkTime({ day:5, hours:false });
 
// Ändert die Arbeitszeit für Freitage und Samstage 
// von ["8:00-17:00"] auf ["8:00-12:00"]
gantt.setWorkTime({day : 5, hours : ["8:00-12:00"]});
gantt.setWorkTime({day : 6, hours : ["8:00-12:00"]});
 
// Macht den 31. März zu einem Arbeitstag 
gantt.setWorkTime({date : new Date(2013, 2, 31)});
 
// Macht den 1. Januar zu einem freien Tag
gantt.setWorkTime({date:new Date(2013,0,1), hours:false})
 
// Setzt die Arbeitszeit als 2 Zeiträume: 8:30-12:00, 13:00-17:00 (um Zeit für das Mittagessen zu lassen)
gantt.setWorkTime({hours : ["8:30-12:00", "13:00-17:00"]})

Related samples

Details

Die Methode macht nur Sinn, wenn work_time auf 'true' gesetzt ist. Andernfalls wird die Methode ignoriert.

Die standardmäßige Arbeitszeit ist wie folgt:

  • Werktage: Montag - Freitag.
  • Arbeitszeiten: 08:00 - 17:00.

Die Methode wird verwendet, um die Standardeinstellungen zu ändern.

Eigenschaften des Konfigurationsobjekts

Das Konfigurationsobjekt kann die folgenden Eigenschaften enthalten:

Eigenschaft Beschreibung
day eine Nummer eines Wochentags [0 (Sonntag) - 6 (Samstag)]. Hinweis: Sie können nur 1 Tag auf einmal setzen
// Macht alle Montage zu freien Tagen
gantt.setWorkTime({ day:1, hours:false });
date ein bestimmtes Datum, das als Arbeitstag oder freier Tag festgelegt werden soll
// Macht ein bestimmtes Datum zu einem freien Tag
gantt.setWorkTime({date:new Date(2013,0,1), hours:false})
hours ein Array von Arbeitszeiten als 'von'-'bis' Paare.
'false' Wert setzt einen freien Tag, 'true' (Standardwert) wendet die Standardstunden (["8:00-17:00"]) an
// Setzt die Arbeitszeit für Freitage von 8:00 bis 12:00
gantt.setWorkTime({day : 5, hours : ["8:00-12:00"]});
customWeeks ein Objekt mit unterschiedlichen Arbeitszeitregeln für verschiedene Zeiträume.
Das Objekt kann eine Menge von key:value Paaren enthalten, wobei key der Name eines Zeitraums und value ein Objekt ist, das die folgenden Attribute enthält:
  • from - (Datum) Pflichtfeld, das Datum, an dem der Zeitraum beginnen soll
  • to - (Datum) Pflichtfeld, das Datum, an dem der Zeitraum abgeschlossen sein soll
  • hours - (Array) ein Array von Arbeitszeiten als 'von'-'bis' Paare.
    'false' Wert setzt einen freien Tag, 'true' (Standardwert) wendet die Standardstunden (["8:00-17:00"]) an
  • days - (Array) ein Array von 7 Tagen der Woche (von 0 - Sonntag bis 6 - Samstag), wobei 1/true für einen Arbeitstag und 0/false für einen freien Tag steht.
// Ändert die Arbeitszeit für die Wintermonate
gantt.setWorkTime({
    customWeeks: {
        winter: {
            from: new Date(2018, 11, 1), // 1. Dezember 2018
            to: new Date(2019, 2, 1), // 1. März 00:00, 2019
            hours: ["9:00-13:00", "14:00-16:00"],
            days: [ 1, 1, 1, 1, 0, 0, 0]
        }
    }
});

Festlegen der Arbeitszeitstunden für die Nachtschicht

Die Arbeitszeiteinstellungen für das hours Attribut des setWorkTime Methoden-Konfigurationsobjekts sollten von dem kleineren Intervall zum größeren Intervall angegeben werden, das heißt in aufsteigender Reihenfolge. Wenn die Zeiteinstellungen in absteigender Reihenfolge angegeben werden, wird ein Teil davon ignoriert. Im folgenden Beispiel werden die Zeitintervalle nach 18:00 ignoriert:

// die Einstellungen unten sind inkorrekt 
gantt.setWorkTime({day : 5, hours : ["16:00-18:00", "14:00-15:00",  "08:00-10:00"]});
gantt.setWorkTime({day : 5, hours : ["16:00-18:00", "00:00-04:00",  "05:00-06:00"]});

Wenn Sie Arbeitszeiteinstellungen für die Nachtschicht angeben müssen, sollten Sie sie wie folgt festlegen:

  • innerhalb von 24 Stunden für den ersten Tag
  • innerhalb von 24 Stunden für den folgenden Tag

Beispiel:

gantt.setWorkTime({day : 5, hours : ["16:00-18:00"]});
gantt.setWorkTime({day : 6, hours : ["00:00-04:00",  "05:00-06:00"]});

Überschreiben einer Arbeitszeitregel

Hinweis: Jeder nächste Aufruf der Methode für dasselbe Datum wird die vorherige Arbeitszeitregel überschreiben:

gantt.setWorkTime({hours:["8:00-12:00"]});
gantt.setWorkTime({hours:["13:00-17:00"]});
// das Ergebnis der obigen Befehle wird die Arbeitszeit 13:00-17:00 sein
// und nicht eine Mischung aus beiden Befehlen
See also
Change log
  • die customWeeks Eigenschaft wurde in v7.1 hinzugefügt;
  • das Format der hours Eigenschaft der Konfiguration wurde in Version 7.0 geändert.
Zurück nach oben