Arbeiten mit Kalendereigenschaften
Überblick
Kalender in Microsoft Project definieren die Arbeits- und Ruhezeiten für das gesamte Projekt sowie für einzelne Aufgaben und Ressourcen. Aspose.Tasks for .NET bietet programmgesteuerten Zugriff auf diese Kalender, einschließlich deren Basishierarchie, Benennung und eindeutiger Identifikation.
Dieser Artikel beschreibt, wie Sie mit der Aspose.Tasks API auf allgemeine Kalendereigenschaften zugreifen und diese ändern können.
Wichtige Kalendereigenschaften
Die Klasse
Calendar
stellt mehrere zentrale Eigenschaften zur Verfügung, die die Identität und Struktur eines Kalenders definieren:
BaseCalendar
: Verweist auf einen anderen Kalender, von dem der aktuelle Kalender Arbeitszeiten erbt. Diese Eigenschaft ist nur relevant, wenn es sich nicht um einen Basiskalender handelt.Name
: Der lesbare Name des Kalenders, wie er in der Benutzeroberfläche und in Berichten angezeigt wird.Uid
: Eine eindeutige Ganzzahlkennung, die zur Identifikation und Verknüpfung von Kalendern innerhalb der Projektdatei verwendet wird.
Diese Eigenschaften sind entscheidend beim Arbeiten mit Kalenderlisten, beim Zuweisen von Kalendern zu Ressourcen oder beim Exportieren der Projektstruktur in andere Formate.
Lesen von Kalendermetadaten
Das folgende Codebeispiel zeigt, wie man allgemeine Kalendereigenschaften wie Name, UID und Basiskalenderverweis ausliest und anzeigt.
1// Load an existing project
2Project project = new Project("Project_GeneralCalendarProperties.xml");
3
4foreach (Calendar cal in project.Calendars)
5{
6 if (cal.Name != null)
7 {
8 Console.WriteLine("UID : " + cal.Uid.ToString() + " Name: " + cal.Name);
9
10 // Show if it is has a base calendar
11 Console.Write("Base Calendar : ");
12 if (cal.IsBaseCalendar)
13 Console.WriteLine("Self");
14 else
15 Console.WriteLine(cal.BaseCalendar.Name);
16
17 // Get Time in hours on each working day
18 foreach (WeekDay wd in cal.WeekDays)
19 {
20 TimeSpan ts = wd.GetWorkingTime();
21 Console.WriteLine("Day Type: " + wd.DayType.ToString() + " Hours: " + ts.ToString());
22 }
23 }
24}
Beispielszenarien
Diese Eigenschaften werden typischerweise in folgenden Anwendungsfällen verwendet:
- Erstellen von Dokumentation oder Berichten mit Kalenderübersichten.
- Durchführung von Validierung oder Transformation der Projektstruktur.
- Verwaltung von Vererbungsketten zwischen Basiskalendern und abgeleiteten Aufgaben-/Ressourcenkalendern.
Durch das Verständnis und die gezielte Bearbeitung dieser Kerneigenschaften können Entwickler die Planungslogik effizient verwalten und die Kompatibilität mit den Erwartungen von Microsoft Project sicherstellen.