Class Calendar

Class Calendar

Namespace: Aspose.Tasks
Assembly: Aspose.Tasks.dll (25.2.0)

Представляє календар, що використовується в проекті.

[ClassInterface(ClassInterfaceType.AutoDual)]
public class Calendar

Спадкування

objectCalendar

Спадковані члени

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Приклади

Як створити простий календар з нуля.

// створити порожній календар
Calendar calendar = new Calendar("Новий календар");
// додає стандартні робочі дні (8 робочих годин з 9:00 до 17:00)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday));
// створити новий робочий день
WeekDay myWeekDay = new WeekDay(DayType.Thursday);
// Встановлює робочий час. Тільки частина часу DateTime є важливою
    WorkingTime wt1 = new WorkingTime();
    wt1.FromTime = new DateTime(1, 1, 1, 6, 0, 0, 0);
    wt1.ToTime = new DateTime(1, 1, 1, 12, 0, 0, 0);
    WorkingTime wt2 = new WorkingTime();
    wt2.FromTime = new DateTime(1, 1, 1, 14, 0, 0, 0);
    wt2.ToTime = new DateTime(1, 1, 1, 18, 0, 0, 0);
    myWeekDay.WorkingTimes.Add(wt1);
    myWeekDay.WorkingTimes.Add(wt2);
    myWeekDay.DayWorking = true;
calendar.Days.Add(myWeekDay);
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Friday));
// додає вихідні
calendar.Days.Add(new WeekDay(DayType.Saturday));
calendar.Days.Add(new WeekDay(DayType.Sunday));
```````csharp
[VB]
       ' створити порожній календар
       Dim calendar As Calendar =  New Calendar("Новий календар")
       ' додає стандартні робочі дні (8 робочих годин з 9:00 до 17:00)
       calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday))
       calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday))
       calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday))
       ' створити новий робочий день
       Dim myWeekDay As WeekDay =  New WeekDay(DayType.Thursday)
       ' Встановлює робочий час. Тільки частина часу DateTime є важливою
           Dim wt1 As WorkingTime =  New WorkingTime()
           wt1.FromTime = New DateTime(1, 1, 1, 6, 0, 0, 0)
           wt1.ToTime = New DateTime(1, 1, 1, 12, 0, 0, 0)
           Dim wt2 As WorkingTime =  New WorkingTime()
           wt2.FromTime = New DateTime(1, 1, 1, 14, 0, 0, 0)
           wt2.ToTime = New DateTime(1, 1, 1, 18, 0, 0, 0)
           myWeekDay.WorkingTimes.Add(wt1)
           myWeekDay.WorkingTimes.Add(wt2)
           myWeekDay.DayWorking = True
       calendar.Days.Add(myWeekDay)
       calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Friday))
       ' додає вихідні
       calendar.Days.Add(New WeekDay(DayType.Saturday))
       calendar.Days.Add(New WeekDay(DayType.Sunday))

Зауваження

Календари використовуються для визначення стандартних робочих і неробочих часів. Проекти повинні мати один базовий календар. Завдання та ресурси можуть мати свої власні небазові календарі, які базуються на базовому календарі.

Властивості

BaseCalendar

Отримує або задає базовий календар, від якого залежить цей календар. Доступно лише, якщо календар не є базовим.

public Calendar BaseCalendar { get; set; }

Значення властивості

Calendar

Exceptions

Отримує об’єкт CalendarExceptionCollection. Колекція виключень, пов’язана з календарем.

public CalendarExceptionCollection Exceptions { get; }

Значення властивості

CalendarExceptionCollection

Guid

Отримує Guid календаря.

public string Guid { get; }

Значення властивості

string

IsBaseCalendar

Отримує значення, що вказує, чи є календар базовим календарем.

public bool IsBaseCalendar { get; }

Значення властивості

bool

IsBaselineCalendar

Отримує або задає значення, що вказує, чи є календар базовим календарем.

public bool IsBaselineCalendar { get; set; }

Значення властивості

bool

Name

Отримує або задає назву календаря.

public string Name { get; set; }

Значення властивості

string

Uid

Отримує або задає унікальний ідентифікатор календаря.

public int Uid { get; set; }

Значення властивості

int

WeekDays

Отримує WeekDaysCollection для цього календаря. Колекція днів тижня, яка визначає календар.

public WeekDayCollection WeekDays { get; }

Значення властивості

WeekDayCollection

WorkWeeks

Отримує об’єкт WorkWeekCollections. Колекція робочих тижнів, пов’язана з календарем.

public WorkWeekCollection WorkWeeks { get; }

Значення властивості

WorkWeekCollection

Методи

Delete()

Видаляє календар з проекту.

public void Delete()

Equals(object)

Повертає значення, що вказує, чи є цей екземпляр рівним вказаному об’єкту.

public override bool Equals(object obj)

Параметри

obj object

Об’єкт для порівняння з цим екземпляром.

Повертає

bool

True, якщо o є Calendar, який має таке ж значення Uid, як цей екземпляр; в іншому випадку false.

GetFinishDateByStartAndWork(DateTime, Duration)

Обчислює дату, коли вказана кількість робочого часу пройде відповідно до календаря.

public DateTime GetFinishDateByStartAndWork(DateTime start, Duration work)

Параметри

start DateTime

Дата початку.

work Duration

Тривалість роботи.

Повертає

DateTime

Дата закінчення.

GetFinishDateByStartAndWork(DateTime, TimeSpan)

Обчислює дату, коли вказана кількість робочого часу пройде відповідно до календаря.

public DateTime GetFinishDateByStartAndWork(DateTime start, TimeSpan work)

Параметри

start DateTime

Дата початку.

work TimeSpan

Тривалість роботи.

Повертає

DateTime

Дата закінчення.

GetHashCode()

Повертає хеш-код для екземпляра класу.

public override int GetHashCode()

Повертає

int

хеш-код для цього об’єкта.

GetNextWorkingDayStart(DateTime)

Обчислює наступний робочий день, починаючи з дати.

public DateTime GetNextWorkingDayStart(DateTime date)

Параметри

date DateTime

Дата, для якої потрібно отримати початок наступного робочого дня.

Повертає

DateTime

Початок наступного робочого дня System.DateTime.

GetPreviousWorkingDayEnd(DateTime)

Обчислює кінець попереднього робочого дня з вказаної дати.

public DateTime GetPreviousWorkingDayEnd(DateTime date)

Параметри

date DateTime

вказаний екземпляр структури System.DateTime.

Повертає

DateTime

Кінець попереднього робочого дня System.DateTime

GetStartDateFromFinishAndDuration(DateTime, Duration)

Повертає StartDate на основі вказаного FinishDate і Duration.

public DateTime GetStartDateFromFinishAndDuration(DateTime finish, Duration duration)

Параметри

finish DateTime

Вказана дата закінчення.

duration Duration

Вказана тривалість роботи.

Повертає

DateTime

Обчислений StartDate.

GetStartDateFromFinishAndDuration(DateTime, TimeSpan)

Повертає StartDate на основі вказаного FinishDate і Duration.

public DateTime GetStartDateFromFinishAndDuration(DateTime finish, TimeSpan duration)

Параметри

finish DateTime

Вказана дата закінчення.

duration TimeSpan

Вказана тривалість роботи.

Повертає

DateTime

Обчислений StartDate.

GetTaskFinishDateFromDuration(Task, TimeSpan)

Обчислює дату та час закінчення завдання на основі його дати початку, частин та тривалості.

public DateTime GetTaskFinishDateFromDuration(Task task, TimeSpan duration)

Параметри

task Task

Завдання, для якого потрібно отримати дату закінчення.

duration TimeSpan

Тривалість завдання для розподілу.

Повертає

DateTime

Дата закінчення завдання.

Зауваження

Повертає DateTime.MinValue, якщо завдання є підсумковим, null або якщо його дата початку не встановлена.

GetWorkingHours(DateTime, DateTime)

Повертає робочі години для вказаних дат.

public WorkUnit GetWorkingHours(DateTime start, DateTime finish)

Параметри

start DateTime

Дата початку.

finish DateTime

Дата закінчення.

Повертає

WorkUnit

Робочі години.

GetWorkingHours(DateTime)

Повертає кількість робочих годин на дату.

public TimeSpan GetWorkingHours(DateTime dt)

Параметри

dt DateTime

Дата, для якої потрібно отримати робочі години.

Повертає

TimeSpan

Робочі години.

GetWorkingTimes(DateTime)

Повертає Aspose.Tasks.WorkingTimeCollection робочих часів для вказаної дати.

public WorkingTimeCollection GetWorkingTimes(DateTime dt)

Параметри

dt DateTime

Дата, для якої потрібно отримати робочі часи.

Повертає

WorkingTimeCollection

Список Aspose.Tasks.WorkingTime.

IsDayWorking(DateTime)

Визначає, чи є день робочим днем.

public bool IsDayWorking(DateTime dt)

Параметри

dt DateTime

Дата, для якої потрібно перевірити, чи є день робочим.

Повертає

bool

True, якщо день є робочим днем.

Make24HourCalendar(Calendar)

Перетворює заданий календар у 24-годинний календар. 24-годинний календар – це календар, в якому кожен день тижня є робочим з цілодобовими робочими годинами.

public static Calendar Make24HourCalendar(Calendar calendar)

Параметри

calendar Calendar

Календар, з якого потрібно створити 24-годинний календар.

Повертає

Calendar

24-годинний календар.

MakeNightShiftCalendar(Calendar)

Перетворює заданий календар у нічний змінний календар.

public static Calendar MakeNightShiftCalendar(Calendar calendar)

Параметри

calendar Calendar

Календар, з якого потрібно створити нічний змінний календар.

Повертає

Calendar

Нічний змінний календар.

MakeStandardCalendar(Calendar)

Створює стандартний календар за замовчуванням.

public static Calendar MakeStandardCalendar(Calendar calendar)

Параметри

calendar Calendar

Календар, з якого потрібно створити стандартний календар.

Повертає

Calendar

Календар з 5 робочими днями (понеділок-п’ятниця) з робочими часами 8-12 та 13-17.

 Українська