Class Calendar
Namespace: Aspose.Tasks
Assembly: Aspose.Tasks.dll (25.2.0)
Rappresenta un calendario utilizzato in un progetto.
[ClassInterface(ClassInterfaceType.AutoDual)]
public class Calendar
Ereditarietà
Membri Ereditati
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Esempi
Come creare un calendario semplice da zero.
// crea un calendario vuoto
Calendar calendar = new Calendar("Nuovo calendario");
// aggiunge i giorni lavorativi predefiniti (8 ore lavorative dalle 9:00 alle 17:00)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday));
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday));
// crea un nuovo giorno lavorativo
WeekDay myWeekDay = new WeekDay(DayType.Thursday);
// Imposta l'orario di lavoro. Solo la parte oraria di DateTime è importante
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));
// aggiunge il weekend
calendar.Days.Add(new WeekDay(DayType.Saturday));
calendar.Days.Add(new WeekDay(DayType.Sunday));
```````csharp
[VB]
' crea un calendario vuoto
Dim calendar As Calendar = New Calendar("Nuovo calendario")
' aggiunge i giorni lavorativi predefiniti (8 ore lavorative dalle 9:00 alle 17:00)
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Monday))
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Tuesday))
calendar.Days.Add(WeekDay.CreateDefaultWorkingDay(DayType.Wednesday))
' crea un nuovo giorno lavorativo
Dim myWeekDay As WeekDay = New WeekDay(DayType.Thursday)
' Imposta l'orario di lavoro. Solo la parte oraria di DateTime è importante
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))
' aggiunge il weekend
calendar.Days.Add(New WeekDay(DayType.Saturday))
calendar.Days.Add(New WeekDay(DayType.Sunday))
Osservazioni
I calendari vengono utilizzati per definire orari di lavoro e non lavoro standard.
I progetti devono avere un calendario di base. Le attività e le risorse possono avere i propri calendari non base che si basano su un calendario di base.
Proprietà
BaseCalendar
Ottiene o imposta il calendario di base su cui dipende questo calendario.
Applicabile solo se il calendario non è un calendario di base.
public Calendar BaseCalendar { get; set; }
Valore della Proprietà
Exceptions
Ottiene l’oggetto CalendarExceptionCollection.
La collezione di eccezioni associata al calendario.
public CalendarExceptionCollection Exceptions { get; }
Valore della Proprietà
Guid
Ottiene il Guid del calendario.
public string Guid { get; }
Valore della Proprietà
IsBaseCalendar
Ottiene un valore che indica se il calendario è un calendario di base.
public bool IsBaseCalendar { get; }
Valore della Proprietà
IsBaselineCalendar
Ottiene o imposta un valore che indica se il calendario è un calendario di base.
public bool IsBaselineCalendar { get; set; }
Valore della Proprietà
Name
Ottiene o imposta il nome del calendario.
public string Name { get; set; }
Valore della Proprietà
Uid
Ottiene o imposta l’identificatore univoco del calendario.
public int Uid { get; set; }
Valore della Proprietà
WeekDays
Ottiene la WeekDaysCollection per questo calendario.
La collezione di giorni della settimana che definisce il calendario.
public WeekDayCollection WeekDays { get; }
Valore della Proprietà
WorkWeeks
Ottiene l’oggetto WorkWeekCollections.
La collezione di settimane lavorative associate al calendario.
public WorkWeekCollection WorkWeeks { get; }
Valore della Proprietà
Metodi
Delete()
Rimuove il calendario dal progetto.
public void Delete()
Equals(object)
Restituisce un valore che indica se questa istanza è uguale a un oggetto specificato.
public override bool Equals(object obj)
Parametri
obj
object
L’oggetto da confrontare con questa istanza.
Restituisce
True se o è un Calendar che ha lo stesso valore Uid di questa istanza; altrimenti, false.
GetFinishDateByStartAndWork(DateTime, Duration)
Calcola la data in cui passerà la quantità specificata di tempo di lavoro secondo il calendario.
public DateTime GetFinishDateByStartAndWork(DateTime start, Duration work)
Parametri
start
DateTime
Data di inizio.
work
Duration
Durata del lavoro.
Restituisce
Data di fine.
GetFinishDateByStartAndWork(DateTime, TimeSpan)
Calcola la data in cui passerà la quantità specificata di tempo di lavoro secondo il calendario.
public DateTime GetFinishDateByStartAndWork(DateTime start, TimeSpan work)
Parametri
start
DateTime
Data di inizio.
work
TimeSpan
Durata del lavoro.
Restituisce
Data di fine.
GetHashCode()
Restituisce un codice hash per l’istanza della classe.
public override int GetHashCode()
Restituisce
un codice hash per questo oggetto.
GetNextWorkingDayStart(DateTime)
Calcola l’inizio del prossimo giorno lavorativo dalla data.
public DateTime GetNextWorkingDayStart(DateTime date)
Parametri
date
DateTime
La data per ottenere l’inizio del prossimo giorno lavorativo.
Restituisce
Inizio del prossimo giorno lavorativo System.DateTime.
GetPreviousWorkingDayEnd(DateTime)
Calcola la fine del giorno lavorativo precedente dalla data specificata.
public DateTime GetPreviousWorkingDayEnd(DateTime date)
Parametri
date
DateTime
l’istanza specificata della struttura System.DateTime.
Restituisce
Fine del giorno lavorativo precedente System.DateTime
GetStartDateFromFinishAndDuration(DateTime, Duration)
Restituisce la StartDate basata sulla FinishDate e Duration specificate.
public DateTime GetStartDateFromFinishAndDuration(DateTime finish, Duration duration)
Parametri
finish
DateTime
La data di fine specificata.
duration
Duration
La durata di lavoro specificata.
Restituisce
StartDate calcolata.
GetStartDateFromFinishAndDuration(DateTime, TimeSpan)
Restituisce la StartDate basata sulla FinishDate e Duration specificate.
public DateTime GetStartDateFromFinishAndDuration(DateTime finish, TimeSpan duration)
Parametri
finish
DateTime
La data di fine specificata.
duration
TimeSpan
La durata di lavoro specificata.
Restituisce
StartDate calcolata.
GetTaskFinishDateFromDuration(Task, TimeSpan)
Calcola la data e l’ora di fine dell’attività dalla sua data di inizio, parti suddivise e durata.
public DateTime GetTaskFinishDateFromDuration(Task task, TimeSpan duration)
Parametri
task
Task
L’attività per la quale ottenere la data di fine.
duration
TimeSpan
La durata dell’attività da suddividere.
Restituisce
Data di fine dell’attività.
Osservazioni
Restituisce DateTime.MinValue se l’attività è un riepilogo, null o se la sua data di inizio non è impostata.
GetWorkingHours(DateTime, DateTime)
Restituisce le ore lavorative per le date specificate.
public WorkUnit GetWorkingHours(DateTime start, DateTime finish)
Parametri
start
DateTime
Data di inizio.
finish
DateTime
Data di fine.
Restituisce
Ore lavorative.
GetWorkingHours(DateTime)
Restituisce la quantità di ore lavorative nella data.
public TimeSpan GetWorkingHours(DateTime dt)
Parametri
dt
DateTime
La data per ottenere le ore lavorative.
Restituisce
Ore lavorative.
GetWorkingTimes(DateTime)
Restituisce la Aspose.Tasks.WorkingTimeCollection degli orari di lavoro per la data specificata.
public WorkingTimeCollection GetWorkingTimes(DateTime dt)
Parametri
dt
DateTime
La data per ottenere gli orari di lavoro.
Restituisce
Elenco di Aspose.Tasks.WorkingTime.
IsDayWorking(DateTime)
Determina se il giorno è un giorno lavorativo.
public bool IsDayWorking(DateTime dt)
Parametri
dt
DateTime
La data per verificare se il giorno è lavorativo.
Restituisce
True se il giorno è un giorno lavorativo.
Make24HourCalendar(Calendar)
Rende un dato Calendario un Calendario a 24 ore.
Il Calendario a 24 ore è un Calendario in cui ogni giorno della settimana è lavorativo con orari di lavoro continuativi.
public static Calendar Make24HourCalendar(Calendar calendar)
Parametri
calendar
Calendar
Calendario da trasformare in Calendario a 24 ore.
Restituisce
Calendario a 24 ore.
MakeNightShiftCalendar(Calendar)
Rende un dato Calendario come Calendario per Turno Notturno.
public static Calendar MakeNightShiftCalendar(Calendar calendar)
Parametri
calendar
Calendar
Calendario da trasformare in Calendario per Turno Notturno.
Restituisce
Calendario per Turno Notturno.
MakeStandardCalendar(Calendar)
Crea un calendario standard predefinito.
public static Calendar MakeStandardCalendar(Calendar calendar)
Parametri
calendar
Calendar
Calendario da trasformare in calendario standard.
Restituisce
Calendario con 5 giorni lavorativi (lunedì-venerdì) con orari di lavoro dalle 8 alle 12 e dalle 13 alle 17.