addCalendar
Description
Fügt einen Kalender in das Gantt-Diagramm ein
addCalendar: (calendar: CalendarConfig) => string
Parameters
calendar- (required) CalendarConfig - ein Objekt, das die Konfiguration des Kalenders enthält
Returns
calendarId- (string) - die Kennung des Kalenders
Example
// Hinzufügen eines bestehenden Kalenders
var calendarId = gantt.addCalendar(calendar);
// Hinzufügen eines Kalenders mit einer neuen Konfiguration
var calendarId = gantt.addCalendar({
id:"custom", // optional
worktime: {
hours: ["8:00-17:00"],
days: [ 1, 1, 1, 1, 1, 1 ,1]
}
});
var calendar = gantt.getCalendar(calendarId);
Related samples
Details
Das Kalender-Konfigurationsobjekt kann die folgenden Eigenschaften enthalten:
- id? - (string | number) - optional, die Kennung des Kalenders
- worktime? - (object) - definiert die Arbeitstage und Arbeitszeiten. Es kann enthalten:
- hours? - (string[] | number[] | boolean) - optional, ein Array zur Angabe globaler Arbeitszeiten, die Start- und Endzeiten der Aufgaben definieren
- days? - (WorkDaysTuple) - optional, ein Array mit 7 Elementen, die die Wochentage repräsentieren (0 - Sonntag bis 6 - Samstag), wobei 1/true einen Arbeitstag und 0/false einen freien Tag bedeutet
- customWeeks? - (object) - optional, ein Objekt, das unterschiedliche Arbeitszeitregelungen für verschiedene Zeiträume definiert. Es besteht aus Schlüssel-Wert-Paaren, wobei der Schlüssel der Name des Zeitraums ist und der Wert ein Objekt mit dessen Eigenschaften.
- [timespan: string] - (object) - der Zeitraum mit seinen Arbeitszeiteinstellungen. Der Schlüssel dient als Name des Zeitraums.
- from - (Date) - das Anfangsdatum des Zeitraums
- to - (Date) - das Enddatum des Zeitraums
- hours? - (Array<string | number>) - optional, ein Array von Arbeitszeitintervallen als 'von'-'bis' Paare. Ein Wert 'false' markiert einen freien Tag, während 'true' (Standard) die Standardzeiten (["8:00-17:00"]) anwendet
- days? - (WorkDaysTuple | boolean) - optional, ein Array mit 7 Elementen, die die Wochentage repräsentieren (0 - Sonntag bis 6 - Samstag), wobei 1/true einen Arbeitstag und 0/false einen freien Tag anzeigt.
- [timespan: string] - (object) - der Zeitraum mit seinen Arbeitszeiteinstellungen. Der Schlüssel dient als Name des Zeitraums.
Benutzerdefinierte Arbeitszeiten für einen bestimmten Tag festlegen
Anstatt nur die Tagesnummer der Woche anzugeben, ist es möglich, für diesen Tag benutzerdefinierte Arbeitszeiten einzustellen.
Zum Beispiel:
const calendar = {
id: "calendar1", // optional
worktime: {
hours: ["8:00-17:00"],
days: [0, 1, 1, 1, ["12:00-17:00"], 1, 0]
}
}
wobei ["12:00-17:00"] die Arbeitszeiten von 12:00 bis 17:00 Uhr für Donnerstag darstellen.
Setting worktime for different time intervals
Es gibt die Möglichkeit, verschiedene Arbeitszeitregeln für unterschiedliche Zeiträume zu konfigurieren, indem man das Attribut customWeeks verwendet:
gantt.addCalendar({
id: "global", // optional
worktime: {
hours: ["8:00-17:00"],
days: [1, 1, 1, 1, 1, 1, 1],
customWeeks: {
winter: {
from: new Date(2025, 11, 1), // December 1st, 2025
to: new Date(2026, 2, 1), // March 1st, 00:00, 2026
hours: ["9:00-13:00", "14:00-16:00"],
days: [1, 1, 1, 1, 0, 0, 0]
}
}
}
});
Setting worktime for certain dates
Sie können auch Arbeitszeiten für bestimmte Daten festlegen, indem Sie sie in der Eigenschaft dates des Objekts days setzen (sowohl für das worktime-Attribut als auch für die customWeeks-Eigenschaft). Zum Beispiel:
const calendar = {
id: "calendar1", // optional
worktime: {
hours: ["8:00-17:00"],
days: {
dates: {
"2025-04-09": ["9:00-15:00"]
}
},
customWeeks: {
winter: {
from: new Date(2025, 11, 1), // December 1st, 2025
to: new Date(2026, 2, 1), // March 1st, 00:00, 2026
hours: ["9:00-13:00", "14:00-16:00"],
days: {
dates: {
"2026-01-02": ["9:00-15:00"]
}
}
}
}
}
}
Related API
Related Guides
Change log
- Die Funktion, das days-Attribut in Form eines Objekts zu setzen, das Wochentage und Daten enthält, wurde in v9.1 hinzugefügt
- Die Eigenschaft customWeeks wurde in v7.1 hinzugefügt;
- In Version 4.2 wurde es hinzugefügt