Робота з властивостями календаря
Огляд
Календарі в Microsoft Project визначають робочий та неробочий час для всього проекту, а також для окремих завдань та ресурсів. Aspose.Tasks для .NET забезпечує програмний доступ до цих календарів, включаючи їх базову ієрархію, найменування та унікальну ідентифікацію.
Ця стаття описує, як отримувати доступ до загальних властивостей календарів та змінювати їх за допомогою API Aspose.Tasks.
Ключові властивості календаря
Клас
Calendar
надає кілька основних властивостей, які визначають ідентичність та структуру календаря:
BaseCalendar
: Посилається на інший календар, від якого поточний календар успадковує робочий час. Ця властивість застосовується лише в тому випадку, якщо календар сам не є базовим календарем.Name
: Зрозуміла для людини назва календаря, яка використовується для його розрізнення в інтерфейсі користувача та звітах.Uid
: Унікальний цілочисельний ідентифікатор, який використовується для відстеження та посилання на календарі в файлі проекту.
Ці властивості є критично важливими при роботі з колекціями календарів, призначенні календарів ресурсам або експорті структури проекту в інші формати.
Читання метаданих календаря
Наступний приклад коду демонструє, як читати та відображати загальні властивості календаря, такі як назва, UID та посилання на базовий календар.
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}
Приклад використання
Ці властивості зазвичай використовуються в наступних сценаріях:
- Створення документації або звітів з оглядами календарів.
- Виконання валідації або трансформації структури проекту.
- Управління ланцюжками успадкування між базовими календарями та залежними календарями завдань/ресурсів.
Розуміючи та маніпулюючи цими основними властивостями, розробники можуть краще управляти логікою планування та забезпечувати сумісність з очікуваннями Microsoft Project.