Quintiq file version 2.0
|
#parent: #root
|
Method Update (
|
DateTime startTime_i,
|
DateTime endTime_i,
|
String comment_i
|
)
|
{
|
TextBody:
|
[*
|
if( this.Participation().IsLeading() and
|
not this.Participation().IsRecurring() )
|
{
|
// When the occurrence is the LeadingParticipation of a non-recurring Event,
|
// then update the Event itself. This will recreate the ExplicitTimeInterval.
|
event := this.Participation().Event();
|
event.SetStart( startTime_i )
|
.SetEnd( endTime_i )
|
.UpdateCalendar();
|
|
// Get the new ETI (there is only one instance), and set the comment.
|
newETI := select( event.LeadingParticipation(), ExplicitTimeInterval, eti, true );
|
if( not isnull( newETI ) )
|
{
|
newETI.Comment( comment_i );
|
}
|
}
|
else
|
{
|
this.Start( startTime_i );
|
this.End( endTime_i );
|
this.Comment( comment_i );
|
|
// Also update the occurrences of the subscribers.
|
traverse( this, SubscribingETI, subscribingETI )
|
{
|
subscribingETI.Start( this.Start() );
|
subscribingETI.End( this.End() );
|
}
|
}
|
*]
|
}
|